From 345a33c2ad93514152382ad371992adfb3b56eda Mon Sep 17 00:00:00 2001 From: Pat Gavlin Date: Mon, 3 Oct 2016 12:49:17 -0700 Subject: Add an option to crossgen S.P.CoreLib using the alt jit. This also changes the x86/RyuJIT CI job to pass this option to build.cmd. This leg will now use RyuJIT when crossgen'ing S.P.CoreLib and when running tests. --- build.cmd | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'build.cmd') diff --git a/build.cmd b/build.cmd index 4e6d4eea63..69026de353 100644 --- a/build.cmd +++ b/build.cmd @@ -104,6 +104,7 @@ if /i "%1" == "skipbuildpackages" (set __BuildPackages=0&set processedArgs=!pr if /i "%1" == "usenmakemakefiles" (set __NMakeMakefiles=1&set __ConfigureOnly=1&set __BuildNative=1&set __BuildNativeCoreLib=0&set __BuildCoreLib=0&set __BuildTests=0&set __BuildPackages=0&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop) if /i "%1" == "buildjit32" (set __BuildJit32="-DBUILD_JIT32=1"&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop) if /i "%1" == "toolset_dir" (set __ToolsetDir=%2&set __PassThroughArgs=%__PassThroughArgs% %2&set processedArgs=!processedArgs! %1 %2&shift&shift&goto Arg_Loop) +if /i "%1" == "altjitcrossgen" (set __AltJitCrossgen=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop) if [!processedArgs!]==[] ( call set __UnprocessedBuildArgs=!__args! @@ -373,8 +374,21 @@ if %__BuildNativeCoreLib% EQU 1 ( set "__CrossGenCoreLibLog=%__LogsDir%\CrossgenMSCoreLib_%__BuildOS%__%__BuildArch%__%__BuildType%.log" set "__CrossgenExe=%__CrossComponentBinDir%\crossgen.exe" + + if "%__AltJitCrossgen%"=="1" ( + set COMPlus_AltJitNgen=* + set COMPlus_AltJitName=protojit.dll + ) + "!__CrossgenExe!" /Platform_Assemblies_Paths "%__BinDir%" /out "%__BinDir%\mscorlib.ni.dll" "%__BinDir%\mscorlib.dll" > "!__CrossGenCoreLibLog!" 2>&1 - if NOT !errorlevel! == 0 ( + set err=!errorlevel! + + if "%__AltJitCrossgen%"=="1" ( + set COMPlus_AltJitNgen= + set COMPlus_AltJitName= + ) + + if NOT !err! == 0 ( echo %__MsgPrefix%Error: CrossGen mscorlib facade build failed. Refer to the build log file for details: echo !__CrossGenCoreLibLog! exit /b 1 -- cgit v1.2.3