diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 0ded77757945b9..5cca8c7ca4d443 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -1957,6 +1957,32 @@ extends: eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), eq(variables['isRollingBuild'], true)) + - template: /eng/pipelines/common/platform-matrix.yml + parameters: + jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml + buildConfig: checked + platforms: + - browser_wasm + helixQueueGroup: pr + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + jobParameters: + testGroup: innerloop + readyToRun: true + displayNameArgs: R2R_CG2 + liveLibrariesBuildConfig: Release + unifiedArtifactsName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_hostedOs)_$(_BuildConfig) + unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries + useHelixMonitor: ${{ variables.enableHelixJobMonitor }} + extraBuildArgs: -os browser -p:HostConfiguration=Release + condition: >- + or( + eq(variables['wasmDarcDependenciesChanged'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), + eq(variables['isRollingBuild'], true)) + - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml diff --git a/src/tests/Common/CLRTest.CrossGen.targets b/src/tests/Common/CLRTest.CrossGen.targets index cb6199498aa7ea..2307e7ff07b65e 100644 --- a/src/tests/Common/CLRTest.CrossGen.targets +++ b/src/tests/Common/CLRTest.CrossGen.targets @@ -60,6 +60,7 @@ fi # CrossGen2 Script if [ ! -z ${RunCrossGen2+x} ]%3B then + export TEST_READY_TO_RUN_MODE=1 compilationDoneFlagFile="IL-CG2/done" if [ -d IL-CG2 ]%3B then while [ ! -f $compilationDoneFlagFile ]%3B @@ -277,6 +278,7 @@ if /i "$(AlwaysUseCrossGen2)" == "true" ( REM CrossGen2 Script if defined RunCrossGen2 ( + set TEST_READY_TO_RUN_MODE=1 set ExtraCrossGen2Args=!ExtraCrossGen2Args! $(CrossGen2TestExtraArguments) set CrossGen2TestCheckPdb=$(CrossGen2TestCheckPdb) set __CreatePdb=$(__CreatePdb) diff --git a/src/tests/Common/CoreCLRTestLibrary/PlatformDetection.cs b/src/tests/Common/CoreCLRTestLibrary/PlatformDetection.cs index 9a8639a1a3aaf0..ca8e5435e69c3b 100644 --- a/src/tests/Common/CoreCLRTestLibrary/PlatformDetection.cs +++ b/src/tests/Common/CoreCLRTestLibrary/PlatformDetection.cs @@ -111,6 +111,7 @@ public static bool IsMonoInterpreter public static bool IsBrowser => OperatingSystem.IsBrowser(); public static bool IsWasi => OperatingSystem.IsWasi(); public static bool IsWasm => IsBrowser || IsWasi; + public static bool IsReadyToRunCompiled => Environment.GetEnvironmentVariable("TEST_READY_TO_RUN_MODE") == "1"; public static bool IsNotMultithreadingSupported => !IsMultithreadingSupported; public static bool IsMultithreadingSupported => RuntimeFeature.IsMultithreadingSupported; diff --git a/src/tests/JIT/Regression/JitBlue/Runtime_131285/Runtime_131285.csproj b/src/tests/JIT/Regression/JitBlue/Runtime_131285/Runtime_131285.csproj index 5800912293b6cd..de6d5e08882e86 100644 --- a/src/tests/JIT/Regression/JitBlue/Runtime_131285/Runtime_131285.csproj +++ b/src/tests/JIT/Regression/JitBlue/Runtime_131285/Runtime_131285.csproj @@ -1,14 +1,6 @@ True - - true diff --git a/src/tests/JIT/Regression/JitBlue/Runtime_131373/Runtime_131373.csproj b/src/tests/JIT/Regression/JitBlue/Runtime_131373/Runtime_131373.csproj index 4141d0e54db4a7..de6d5e08882e86 100644 --- a/src/tests/JIT/Regression/JitBlue/Runtime_131373/Runtime_131373.csproj +++ b/src/tests/JIT/Regression/JitBlue/Runtime_131373/Runtime_131373.csproj @@ -1,8 +1,6 @@ True - - true diff --git a/src/tests/JIT/Regression/JitBlue/Runtime_131635/Runtime_131635.csproj b/src/tests/JIT/Regression/JitBlue/Runtime_131635/Runtime_131635.csproj index fd618744d88c24..de6d5e08882e86 100644 --- a/src/tests/JIT/Regression/JitBlue/Runtime_131635/Runtime_131635.csproj +++ b/src/tests/JIT/Regression/JitBlue/Runtime_131635/Runtime_131635.csproj @@ -1,10 +1,6 @@ True - - true diff --git a/src/tests/JIT/Regression/JitBlue/Runtime_131640/Runtime_131640.csproj b/src/tests/JIT/Regression/JitBlue/Runtime_131640/Runtime_131640.csproj index 6de2c94e52efce..de6d5e08882e86 100644 --- a/src/tests/JIT/Regression/JitBlue/Runtime_131640/Runtime_131640.csproj +++ b/src/tests/JIT/Regression/JitBlue/Runtime_131640/Runtime_131640.csproj @@ -1,11 +1,6 @@ True - - true - true diff --git a/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.cs b/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.cs index a3ad46606faf48..8c7dcd9ebd9128 100644 --- a/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.cs +++ b/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.cs @@ -8,9 +8,13 @@ using InlineIL; using System; using System.Runtime.CompilerServices; +using TestLibrary; +using Xunit; class Runtime_70259 { + [ActiveIssue("https://github.com/dotnet/runtime/issues/70279", TestRuntimes.Mono)] + [ActiveIssue("https://github.com/dotnet/runtime/issues/133169", typeof(PlatformDetection), nameof(PlatformDetection.IsWasm), nameof(PlatformDetection.IsReadyToRunCompiled))] private static int Main() { // This creates an open delegate that goes through shuffle thunk and @@ -45,4 +49,3 @@ public virtual int Method() } } } - diff --git a/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.il b/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.il index 60bf71c3e47b2f..2daaab5ddeef0e 100644 --- a/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.il +++ b/src/tests/JIT/Regression/JitBlue/Runtime_70259/Runtime_70259.il @@ -10,7 +10,7 @@ // Metadata version: v4.0.30319 .assembly extern System.Runtime { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) } .assembly extern xunit.core {} - +.assembly extern TestLibrary { .ver 0:0:0:0 } .assembly extern Microsoft.DotNet.XUnitExtensions { .publickeytoken = (31 BF 38 56 AD 36 4E 35 ) } .assembly Runtime_70259 { @@ -72,6 +72,11 @@ string('https://github.com/dotnet/runtime/issues/70279') int32(0x2) // Mono } + .custom instance void [Microsoft.DotNet.XUnitExtensions]Xunit.ActiveIssueAttribute::.ctor(string, class [mscorlib]System.Type, string[]) = { + string('https://github.com/dotnet/runtime/issues/133169') + type([TestLibrary]TestLibrary.PlatformDetection) + string[2] ('IsWasm' 'IsReadyToRunCompiled') + } .entrypoint // Code size 31 (0x1f) .maxstack 8 diff --git a/src/tests/build.proj b/src/tests/build.proj index 884ccfcddb0f79..7ab8c872c38944 100644 --- a/src/tests/build.proj +++ b/src/tests/build.proj @@ -280,7 +280,7 @@ + Condition="'$(__CopyNativeTestBinaries)' != '1' and '$(__TestBuildMode)' == 'crossgen2' and '$(TargetArchitecture)' != 'wasm' and !$(MonoAot) and !$(MonoFullAot)" > $(__TestIntermediatesDir)\crossgen.out