diff --git a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml index 127ddbcfeb028..b0a2043bbd571 100644 --- a/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml +++ b/eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -68,7 +68,7 @@ steps: displayName: "AOT compile CoreCLR tests" target: ${{ coalesce(parameters.llvmAotStepContainer, parameters.container) }} - ${{ if in(parameters.runtimeVariant, 'llvmfullaot', 'minifullaot') }}: - - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(logRootNameArg)MonoAot mono_fullaot ${{ parameters.buildConfig }} ${{ parameters.archType }} /p:RuntimeVariant=${{ parameters.runtimeVariant }} + - script: $(Build.SourcesDirectory)/src/tests/build$(scriptExt) $(logRootNameArg)MonoAot mono_fullaot ${{ parameters.buildConfig }} ${{ parameters.archType }} /p:RuntimeVariant=${{ parameters.runtimeVariant }} -maxcpucount:1 displayName: "AOT compile CoreCLR tests" target: ${{ coalesce(parameters.llvmAotStepContainer, parameters.container) }} - ${{ if eq(parameters.archType, 'arm64') }}: diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-other.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-other.yml index c1a3e2cd1f496..e47cb4996cc70 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-other.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-other.yml @@ -108,47 +108,6 @@ jobs: eq(variables['monoContainsChange'], true), eq(variables['isRollingBuild'], true)) -# -# Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT -# Only when Mono is changed -# -# Disabled due to OOM issues https://github.com/dotnet/runtime/issues/90427 -# - template: /eng/pipelines/common/platform-matrix.yml -# parameters: -# jobTemplate: /eng/pipelines/common/global-build-job.yml -# helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml -# buildConfig: Release -# runtimeFlavor: mono -# platforms: -# - linux_x64 -# - linux_arm64 -# variables: -# - name: timeoutPerTestInMinutes -# value: 60 -# - name: timeoutPerTestCollectionInMinutes -# value: 180 -# jobParameters: -# testGroup: innerloop -# nameSuffix: AllSubsets_Mono_LLVMFullAot_RuntimeTests -# runtimeVariant: llvmfullaot -# buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoBundleLLVMOptimizer=true -# timeoutInMinutes: 300 -# isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} - -# condition: >- -# or( -# eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), -# eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), -# eq(variables['isRollingBuild'], true)) -# postBuildSteps: -# - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml -# parameters: -# creator: dotnet-bot -# llvmAotStepContainer: linux_x64_llvmaot -# testRunNamePrefixSuffix: Mono_Release -# extraVariablesTemplates: -# - template: /eng/pipelines/common/templates/runtimes/test-variables.yml - # # Mono CoreCLR runtime test executions using live libraries and mini Full AOT # Only when Mono is changed @@ -161,6 +120,8 @@ jobs: runtimeFlavor: mono platforms: - linux_x64 + # Tracking issue: https://github.com/dotnet/runtime/issues/90427 + # linux_arm64 variables: - name: timeoutPerTestInMinutes value: 60 @@ -172,6 +133,12 @@ jobs: runtimeVariant: minifullaot buildArgs: -s mono+libs+clr.hosts -c Release timeoutInMinutes: 300 + isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} + condition: >- + or( + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), + eq(variables['isRollingBuild'], true)) postBuildSteps: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml parameters: diff --git a/eng/pipelines/runtime-llvm.yml b/eng/pipelines/runtime-llvm.yml index 6338116afd410..ee96cc2a04f55 100644 --- a/eng/pipelines/runtime-llvm.yml +++ b/eng/pipelines/runtime-llvm.yml @@ -28,24 +28,6 @@ schedules: - main always: false # run only if there were changes since the last successful scheduled run. -pr: - branches: - include: - - main - - release/*.* - paths: - include: - - '*' - exclude: - - '**.md' - - eng/Version.Details.xml - - .devcontainer/* - - .github/* - - docs/* - - LICENSE.TXT - - PATENTS.TXT - - THIRD-PARTY-NOTICES.TXT - variables: - template: /eng/pipelines/common/variables.yml @@ -117,8 +99,7 @@ extends: jobParameters: testGroup: innerloop nameSuffix: AllSubsets_Mono_LLVMAOT - buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) - /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true + buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), @@ -136,8 +117,7 @@ extends: jobParameters: testGroup: innerloop nameSuffix: AllSubsets_Mono_LLVMAOT - buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) - /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true + buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), @@ -149,55 +129,123 @@ extends: parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - buildConfig: release + buildConfig: Release runtimeFlavor: mono platforms: - - linux_x64 - # Disabled pending outcome of https://github.com/dotnet/runtime/issues/60234 investigation - #- linux_arm64 + - linux_x64 + # Disabled pending outcome of https://github.com/dotnet/runtime/issues/60234 investigation + #- linux_arm64 + variables: + - name: timeoutPerTestInMinutes + value: 60 + - name: timeoutPerTestCollectionInMinutes + value: 180 jobParameters: testGroup: innerloop nameSuffix: AllSubsets_Mono_LLVMAOT_RuntimeTests - buildArgs: -s mono+clr.iltools+clr.hosts+libs+host+packs -c $(_BuildConfig) -lc ${{ variables.debugOnPrReleaseOnRolling }} - /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true - postBuildSteps: - - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml - parameters: - creator: dotnet-bot - testRunNamePrefixSuffix: Mono_Release - llvmAotStepContainer: linux_x64_llvmaot - runtimeVariant: llvmaot + runtimeVariant: llvmaot + buildArgs: -s mono+libs+clr.hosts+clr.iltools -c $(_BuildConfig) -lc ${{ variables.debugOnPrReleaseOnRolling }} /p:MonoEnableLLVM=true + timeoutInMinutes: 360 condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), eq(variables['isRollingBuild'], true)) + postBuildSteps: + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + creator: dotnet-bot + llvmAotStepContainer: linux_x64_llvmaot + testRunNamePrefixSuffix: Mono_Release + extraVariablesTemplates: + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml + # + # Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT + # Only when Mono is changed + # This job runs non-intrinsics runtime tests due to OOM issues + # - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/global-build-job.yml helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - buildConfig: release + buildConfig: Release runtimeFlavor: mono platforms: - - linux_x64 - - linux_arm64 + - linux_x64 + # Tracking issue: https://github.com/dotnet/runtime/issues/90427 + # - linux_arm64 + variables: + - name: timeoutPerTestInMinutes + value: 60 + - name: timeoutPerTestCollectionInMinutes + value: 180 jobParameters: testGroup: innerloop - nameSuffix: AllSubsets_Mono_LLVMFullAOT_RuntimeTests - buildArgs: -s mono+clr.iltools+clr.hosts+libs+host+packs -c $(_BuildConfig) -lc ${{ variables.debugOnPrReleaseOnRolling }} - /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true + nameSuffix: AllSubsets_Mono_LLVMFULLAOT_RuntimeTests + runtimeVariant: llvmfullaot + buildArgs: -s mono+libs+clr.hosts+clr.iltools -c $(_BuildConfig) -lc ${{ variables.debugOnPrReleaseOnRolling }} /p:MonoEnableLLVM=true + timeoutInMinutes: 360 + condition: >- + or( + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), + eq(variables['isRollingBuild'], true)) postBuildSteps: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml parameters: creator: dotnet-bot - testRunNamePrefixSuffix: Mono_Release llvmAotStepContainer: linux_x64_llvmaot - runtimeVariant: llvmfullaot + testRunNamePrefixSuffix: Mono_Release + testBuildArgs: >- + -tree:CoreMangLib -tree:Exceptions -tree:GC -tree:Interop -tree:Loader -tree:Regressions -tree:baseservices + -tree:ilasm -tree:ilverify -tree:managed -tree:profiler -tree:readytorun -tree:reflection -tree:tracing + -tree:JIT/BBT -tree:JIT/CodeGenBringUpTests -tree:JIT/Directed -tree:JIT/Generics -tree:JIT/IL_Conformance + -tree:JIT/Math -tree:JIT/Methodical -tree:JIT/PGO -tree:JIT/Performance -tree:JIT/Regression -tree:JIT/RyuJIT + -tree:JIT/Stress -tree:JIT/common -tree:JIT/jit64 -tree:JIT/opt -tree:JIT/superpmi + extraVariablesTemplates: + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml + + # + # Mono CoreCLR runtime Test executions using live libraries and LLVM Full AOT + # Only when Mono is changed + # This job runs the runtime intrinsics tests due to OOM issues + # + - template: /eng/pipelines/common/platform-matrix.yml + parameters: + jobTemplate: /eng/pipelines/common/global-build-job.yml + helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml + buildConfig: Release + runtimeFlavor: mono + platforms: + - linux_x64 + # Tracking issue: https://github.com/dotnet/runtime/issues/90427 + # - linux_arm64 + variables: + - name: timeoutPerTestInMinutes + value: 60 + - name: timeoutPerTestCollectionInMinutes + value: 180 + jobParameters: + testGroup: innerloop + nameSuffix: AllSubsets_Mono_LLVMFULLAOT_RuntimeIntrinsicsTests + runtimeVariant: llvmfullaot + buildArgs: -s mono+libs+clr.hosts+clr.iltools -c $(_BuildConfig) -lc ${{ variables.debugOnPrReleaseOnRolling }} /p:MonoEnableLLVM=true + timeoutInMinutes: 360 condition: >- or( eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), eq(variables['isRollingBuild'], true)) + postBuildSteps: + - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml + parameters: + creator: dotnet-bot + llvmAotStepContainer: linux_x64_llvmaot + testRunNamePrefixSuffix: Mono_Release + testBuildArgs: -tree:JIT/Intrinsics -tree:JIT/HardwareIntrinsics -tree:JIT/SIMD + extraVariablesTemplates: + - template: /eng/pipelines/common/templates/runtimes/test-variables.yml diff --git a/src/tests/Interop/Interop.csproj b/src/tests/Interop/Interop.csproj index ccbdc2f5e1e7f..2a02c40a4fd51 100644 --- a/src/tests/Interop/Interop.csproj +++ b/src/tests/Interop/Interop.csproj @@ -1,5 +1,7 @@ + + true true Debug;Release;Checked diff --git a/src/tests/Interop/StringMarshalling/AnsiBSTR/AnsiBStrTest.csproj b/src/tests/Interop/StringMarshalling/AnsiBSTR/AnsiBStrTest.csproj index ae4b7c519db82..cbf26e1293034 100644 --- a/src/tests/Interop/StringMarshalling/AnsiBSTR/AnsiBStrTest.csproj +++ b/src/tests/Interop/StringMarshalling/AnsiBSTR/AnsiBStrTest.csproj @@ -3,7 +3,7 @@ true $(DefineConstants);ANSIBSTR - true + true diff --git a/src/tests/Interop/StringMarshalling/BSTR/BSTRTest.csproj b/src/tests/Interop/StringMarshalling/BSTR/BSTRTest.csproj index 539f34ced8c87..c3b9f50d217f7 100644 --- a/src/tests/Interop/StringMarshalling/BSTR/BSTRTest.csproj +++ b/src/tests/Interop/StringMarshalling/BSTR/BSTRTest.csproj @@ -3,7 +3,7 @@ true $(DefineConstants);BSTR - true + true diff --git a/src/tests/Interop/StringMarshalling/LPTSTR/LPTSTRTest.csproj b/src/tests/Interop/StringMarshalling/LPTSTR/LPTSTRTest.csproj index e436167e972f0..af1674c301841 100644 --- a/src/tests/Interop/StringMarshalling/LPTSTR/LPTSTRTest.csproj +++ b/src/tests/Interop/StringMarshalling/LPTSTR/LPTSTRTest.csproj @@ -3,7 +3,7 @@ true $(DefineConstants);LPTSTR - true + true diff --git a/src/tests/Interop/StringMarshalling/VBByRefStr/VBByRefStrTest.csproj b/src/tests/Interop/StringMarshalling/VBByRefStr/VBByRefStrTest.csproj index 9154f936b7425..a3017d0e81451 100644 --- a/src/tests/Interop/StringMarshalling/VBByRefStr/VBByRefStrTest.csproj +++ b/src/tests/Interop/StringMarshalling/VBByRefStr/VBByRefStrTest.csproj @@ -2,7 +2,7 @@ true - true + true diff --git a/src/tests/JIT/Methodical/Boxing/boxunbox/BoxPatternMatchAndSideEffects.csproj b/src/tests/JIT/Methodical/Boxing/boxunbox/BoxPatternMatchAndSideEffects.csproj index e1e12460ae03b..7df006c9f1a4e 100644 --- a/src/tests/JIT/Methodical/Boxing/boxunbox/BoxPatternMatchAndSideEffects.csproj +++ b/src/tests/JIT/Methodical/Boxing/boxunbox/BoxPatternMatchAndSideEffects.csproj @@ -2,7 +2,7 @@ PdbOnly - true + true diff --git a/src/tests/JIT/Methodical/Methodical_others.csproj b/src/tests/JIT/Methodical/Methodical_others.csproj index 998101aaa4553..2fd089bdb777f 100644 --- a/src/tests/JIT/Methodical/Methodical_others.csproj +++ b/src/tests/JIT/Methodical/Methodical_others.csproj @@ -1,7 +1,7 @@ - true + true diff --git a/src/tests/JIT/Regression/JitBlue/GitHub_26491/GitHub_26491.ilproj b/src/tests/JIT/Regression/JitBlue/GitHub_26491/GitHub_26491.ilproj index 439e29a31673e..623b7601a72cc 100644 --- a/src/tests/JIT/Regression/JitBlue/GitHub_26491/GitHub_26491.ilproj +++ b/src/tests/JIT/Regression/JitBlue/GitHub_26491/GitHub_26491.ilproj @@ -1,7 +1,7 @@ - true + true diff --git a/src/tests/JIT/Regression/Regression_3.csproj b/src/tests/JIT/Regression/Regression_3.csproj index 0006ba5709b72..9eeb2fe050079 100644 --- a/src/tests/JIT/Regression/Regression_3.csproj +++ b/src/tests/JIT/Regression/Regression_3.csproj @@ -1,7 +1,7 @@ - true + true diff --git a/src/tests/build.proj b/src/tests/build.proj index e7886f37d7703..7f2a0b6b38af5 100644 --- a/src/tests/build.proj +++ b/src/tests/build.proj @@ -115,15 +115,15 @@ - - - + @@ -383,8 +383,8 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + https://github.com/dotnet/runtime/issues/82859 diff --git a/src/tests/readytorun/coreroot_determinism/readytorun_coreroot_determinism.csproj b/src/tests/readytorun/coreroot_determinism/readytorun_coreroot_determinism.csproj index af73a80930400..56b857d793568 100644 --- a/src/tests/readytorun/coreroot_determinism/readytorun_coreroot_determinism.csproj +++ b/src/tests/readytorun/coreroot_determinism/readytorun_coreroot_determinism.csproj @@ -1,7 +1,7 @@ - true + true diff --git a/src/tests/readytorun/readytorun.csproj b/src/tests/readytorun/readytorun.csproj index 585b0be3fcdfe..cb657444dd8d1 100644 --- a/src/tests/readytorun/readytorun.csproj +++ b/src/tests/readytorun/readytorun.csproj @@ -1,7 +1,7 @@ - true + true