summaryrefslogtreecommitdiff
path: root/build.cmd
diff options
context:
space:
mode:
authorPat Gavlin <pagavlin@microsoft.com>2016-10-03 12:49:17 -0700
committerPat Gavlin <pagavlin@microsoft.com>2016-10-04 13:54:29 -0700
commit345a33c2ad93514152382ad371992adfb3b56eda (patch)
tree393a20f050ea1584010aafd40cc18aa31282ff59 /build.cmd
parent89bf443d2787e1b4754718bf28e71da248ea7727 (diff)
downloadcoreclr-345a33c2ad93514152382ad371992adfb3b56eda.tar.gz
coreclr-345a33c2ad93514152382ad371992adfb3b56eda.tar.bz2
coreclr-345a33c2ad93514152382ad371992adfb3b56eda.zip
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.
Diffstat (limited to 'build.cmd')
-rw-r--r--build.cmd16
1 files changed, 15 insertions, 1 deletions
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