Skip to content

Commit ebe8dc5

Browse files
authored
[VMR] light up Mono LLVM lanes (#19398)
1 parent e161527 commit ebe8dc5

File tree

3 files changed

+78
-0
lines changed

3 files changed

+78
-0
lines changed

eng/pipelines/templates/stages/vmr-build.yml

+73
Original file line numberDiff line numberDiff line change
@@ -710,6 +710,36 @@ stages:
710710
targetOS: linux
711711
targetArchitecture: x64
712712

713+
- template: ../jobs/vmr-build.yml
714+
parameters:
715+
buildName: Mariner_x64_Cross_ShortStack_Mono_LLVMAOT
716+
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
717+
vmrBranch: ${{ variables.VmrBranch }}
718+
architecture: x64
719+
pool: ${{ parameters.pool_Linux }}
720+
container: ${{ variables.marinerX64CrossContainer }}
721+
crossRootFs: '/crossrootfs/x64'
722+
useMonoRuntime: true
723+
targetOS: linux
724+
targetArchitecture: x64
725+
extraProperties: /p:DotNetBuildMonoEnableLLVM=true /p:DotNetBuildMonoAOTEnableLLVM=true /p:DotNetBuildMonoBundleLLVMOptimizer=true
726+
runTests: false
727+
728+
- template: ../jobs/vmr-build.yml
729+
parameters:
730+
buildName: Mariner_x64_Cross_ShortStack_Mono_LLVMJIT
731+
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
732+
vmrBranch: ${{ variables.VmrBranch }}
733+
architecture: x64
734+
pool: ${{ parameters.pool_Linux }}
735+
container: ${{ variables.marinerX64CrossContainer }}
736+
crossRootFs: '/crossrootfs/x64'
737+
useMonoRuntime: true
738+
targetOS: linux
739+
targetArchitecture: x64
740+
extraProperties: /p:DotNetBuildMonoEnableLLVM=true /p:DotNetBuildMonoBundleLLVMOptimizer=false
741+
runTests: false
742+
713743
- template: ../jobs/vmr-build.yml
714744
parameters:
715745
buildName: Mariner_x64_Cross
@@ -826,6 +856,36 @@ stages:
826856
targetArchitecture: arm64
827857
extraProperties: /p:TargetRID=linux-musl-arm64
828858

859+
- template: ../jobs/vmr-build.yml
860+
parameters:
861+
buildName: Mariner_x64_Cross_ShortStack_Mono_LLVMAOT
862+
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
863+
vmrBranch: ${{ variables.VmrBranch }}
864+
architecture: arm64
865+
pool: ${{ parameters.pool_Linux }}
866+
container: ${{ variables.marinerArm64CrossContainer }}
867+
crossRootFs: '/crossrootfs/arm64'
868+
useMonoRuntime: true
869+
targetOS: linux
870+
targetArchitecture: arm64
871+
extraProperties: /p:DotNetBuildMonoEnableLLVM=true /p:DotNetBuildMonoAOTEnableLLVM=true /p:DotNetBuildMonoBundleLLVMOptimizer=true
872+
runTests: false
873+
874+
- template: ../jobs/vmr-build.yml
875+
parameters:
876+
buildName: Mariner_x64_Cross_ShortStack_Mono_LLVMJIT
877+
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
878+
vmrBranch: ${{ variables.VmrBranch }}
879+
architecture: arm64
880+
pool: ${{ parameters.pool_Linux }}
881+
container: ${{ variables.marinerArm64CrossContainer }}
882+
crossRootFs: '/crossrootfs/arm64'
883+
useMonoRuntime: true
884+
targetOS: linux
885+
targetArchitecture: arm64
886+
extraProperties: /p:DotNetBuildMonoEnableLLVM=true /p:DotNetBuildMonoBundleLLVMOptimizer=false
887+
runTests: false
888+
829889
- template: ../jobs/vmr-build.yml
830890
parameters:
831891
buildName: OSX
@@ -847,6 +907,19 @@ stages:
847907
targetOS: osx
848908
targetArchitecture: arm64
849909

910+
- template: ../jobs/vmr-build.yml
911+
parameters:
912+
buildName: OSX_ShortStack_Mono_LLVMJIT
913+
isBuiltFromVmr: ${{ parameters.isBuiltFromVmr }}
914+
vmrBranch: ${{ variables.VmrBranch }}
915+
architecture: x64
916+
pool: ${{ parameters.pool_Mac }}
917+
useMonoRuntime: true
918+
targetOS: osx
919+
targetArchitecture: x64
920+
extraProperties: /p:DotNetBuildMonoEnableLLVM=true /p:DotNetBuildMonoBundleLLVMOptimizer=false
921+
runTests: false
922+
850923
- template: ../jobs/vmr-build.yml
851924
parameters:
852925
buildName: OSX_ShortStack_NativeAOT

src/SourceBuild/content/Directory.Build.props

+2
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@
3232
<ShortStack Condition="'$(TargetOS)' == 'linux-bionic'">true</ShortStack>
3333
<!-- NativeAOT Mac builds are short -->
3434
<ShortStack Condition="'$(TargetOS)' == 'osx' and '$(DotNetBuildRuntimeNativeAOTRuntimePack)' == 'true'">true</ShortStack>
35+
<!-- Mono LLVM builds are short -->
36+
<ShortStack Condition="'$(MonoEnableLLVM)' == 'true' or '$(MonoAOTEnableLLVM)' == 'true'">true</ShortStack>
3537
<!-- Short stack builds stop at runtime, not the whole SDK -->
3638
<RootRepo Condition="'$(ShortStack)' == 'true'">runtime</RootRepo>
3739
</PropertyGroup>

src/SourceBuild/content/repo-projects/runtime.proj

+3
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@
1919
<BuildArgs Condition="'$(ShortStack)' != 'true' and '$(TargetOS)' != 'linux-musl'">$(BuildArgs) /p:BaseOS=$(BaseOS)</BuildArgs>
2020
<BuildArgs Condition="'$(DotNetBuildRuntimeWasmEnableThreads)' == 'true'">$(BuildArgs) /p:DotNetBuildRuntimeWasmEnableThreads=true</BuildArgs>
2121
<BuildArgs Condition="'$(DotNetBuildRuntimeNativeAOTRuntimePack)' == 'true'">$(BuildArgs) /p:DotNetBuildRuntimeNativeAOTRuntimePack=true</BuildArgs>
22+
<BuildArgs Condition="'$(DotNetBuildMonoEnableLLVM)' != ''">$(BuildArgs) /p:DotNetBuildMonoEnableLLVM=$(DotNetBuildMonoEnableLLVM)</BuildArgs>
23+
<BuildArgs Condition="'$(DotNetBuildMonoAOTEnableLLVM)' != ''">$(BuildArgs) /p:DotNetBuildMonoAOTEnableLLVM=$(DotNetBuildMonoAOTEnableLLVM)</BuildArgs>
24+
<BuildArgs Condition="'$(DotNetBuildMonoBundleLLVMOptimizer)' != ''">$(BuildArgs) /p:DotNetBuildMonoBundleLLVMOptimizer=$(DotNetBuildMonoBundleLLVMOptimizer)</BuildArgs>
2225
<BuildArgs Condition="'$(PgoInstrument)' == 'true'">$(BuildArgs) $(FlagParameterPrefix)pgoinstrument</BuildArgs>
2326
</PropertyGroup>
2427

0 commit comments

Comments
 (0)