Ensure we run the Crossgened test executable in R2R tests
authorwtgodbe <wigodbe@microsoft.com>
Thu, 27 Apr 2017 22:40:23 +0000 (15:40 -0700)
committerwtgodbe <wigodbe@microsoft.com>
Fri, 28 Apr 2017 23:51:40 +0000 (16:51 -0700)
Commit migrated from https://github.com/dotnet/coreclr/commit/2dd21f2fcee8eb7d1978b59b87e6d7cdc3b6bb83

src/coreclr/tests/runtest.sh
src/coreclr/tests/skipCrossGenFiles.arm.txt
src/coreclr/tests/skipCrossGenFiles.arm64.txt
src/coreclr/tests/skipCrossGenFiles.x64.txt
src/coreclr/tests/skipCrossGenFiles.x86.txt
src/coreclr/tests/src/CLRTest.CrossGen.targets

index fd7b4a9..6a5d5ed 100755 (executable)
@@ -407,7 +407,7 @@ function precompile_overlay_assemblies {
                 $overlayDir/crossgen /Platform_Assemblies_Paths $overlayDir $filename 1> $filename.stdout 2>$filename.stderr
                 local exitCode=$?
                 if [[ $exitCode != 0 ]]; then
-                    if grep -q -e '(COR_E_ASSEMBLYEXPECTED)' $filename.stderr; then
+                    if [ grep -q -e '0x80131018' $filename.stderr ]; then
                         printf "\n\t$filename is not a managed assembly.\n\n"
                     else
                         echo Unable to precompile $filename.
index df66983..2e12456 100644 (file)
@@ -1,2 +1,3 @@
 mscorlib.dll
 System.Runtime.WindowsRuntime.UI.Xaml.dll
+System.Private.CoreLib.dll
index 53eec85..ee3972b 100644 (file)
@@ -3,3 +3,4 @@ Microsoft.CodeAnalysis.VisualBasic.dll
 System.Net.NameResolution.dll
 System.Net.Sockets.dll
 System.Net.Primitives.dll
+System.Private.CoreLib.dll
index df66983..2e12456 100644 (file)
@@ -1,2 +1,3 @@
 mscorlib.dll
 System.Runtime.WindowsRuntime.UI.Xaml.dll
+System.Private.CoreLib.dll
index df66983..2e12456 100644 (file)
@@ -1,2 +1,3 @@
 mscorlib.dll
 System.Runtime.WindowsRuntime.UI.Xaml.dll
+System.Private.CoreLib.dll
index d91bdcc..6bb5cdb 100644 (file)
@@ -40,11 +40,14 @@ WARNING:   When setting properties based on their current state (for example:
 if [ ! -z ${RunCrossGen+x} ]%3B then
     export COMPlus_ZapRequire=$(ZapRequire)
     export COMPlus_ZapRequireList=$(MSBuildProjectName)
-    if [ ! -f $(MSBuildProjectName).ni.exe ]%3B then
+    if [ ! -f $(MSBuildProjectName).org ]%3B then
         TakeLock
-        if [ ! -f $(MSBuildProjectName).ni.exe ]%3B then
-          echo $_DebuggerFullPath "$CORE_ROOT/crossgen" /Platform_Assemblies_Paths $CORE_ROOT%3A$PWD $(MSBuildProjectName).exe
-          $_DebuggerFullPath "$CORE_ROOT/crossgen" /Platform_Assemblies_Paths $CORE_ROOT%3A$PWD $(MSBuildProjectName).exe
+        if [ ! -f $(MSBuildProjectName).org ]%3B then
+          mkdir IL
+          cp $(MSBuildProjectName).exe IL/$(MSBuildProjectName).exe
+          mv $(MSBuildProjectName).exe $(MSBuildProjectName).org
+          echo $_DebuggerFullPath "$CORE_ROOT/crossgen" /Platform_Assemblies_Paths $CORE_ROOT%3A$PWD/IL%3A$PWD /in $(MSBuildProjectName).org /out $(MSBuildProjectName).exe
+          $_DebuggerFullPath "$CORE_ROOT/crossgen" /Platform_Assemblies_Paths $CORE_ROOT%3A$PWD/IL%3A$PWD /in $(MSBuildProjectName).org /out $(MSBuildProjectName).exe
           __cgExitCode=$?
           if [ $__cgExitCode -ne 0 ]
           then
@@ -73,12 +76,15 @@ REM CrossGen Script
 if defined RunCrossGen ( 
     set COMPlus_ZapRequire=$(ZapRequire)
     set COMPlus_ZapRequireList=$(MSBuildProjectName)
-    if not exist "$(MSBuildProjectName).ni.exe" (
+    if not exist "$(MSBuildProjectName).org" (
         call :TakeLock
         set CrossGenStatus=0
-        if not exist "$(MSBuildProjectName).ni.exe" (
-            echo "%_DebuggerFullPath% %CORE_ROOT%\crossgen.exe" /Platform_Assemblies_Paths %CORE_ROOT%%3B%25cd%25 $(MSBuildProjectName).exe
-            %_DebuggerFullPath% "%CORE_ROOT%\crossgen.exe" /Platform_Assemblies_Paths %CORE_ROOT%%3B%25cd%25 $(MSBuildProjectName).exe
+        if not exist "$(MSBuildProjectName).org" (
+            mkdir IL
+            copy $(MSBuildProjectName).exe IL\$(MSBuildProjectName).exe 
+            ren $(MSBuildProjectName).exe $(MSBuildProjectName).org
+            echo "%_DebuggerFullPath% %CORE_ROOT%\crossgen.exe" /Platform_Assemblies_Paths %CORE_ROOT%%3B%25cd%25\IL%3B%25cd%25 /in $(MSBuildProjectName).org /out $(MSBuildProjectName).exe
+            %_DebuggerFullPath% "%CORE_ROOT%\crossgen.exe" /Platform_Assemblies_Paths %CORE_ROOT%%3B%25cd%25\IL%3B%25cd%25 /in $(MSBuildProjectName).org /out $(MSBuildProjectName).exe
             set CrossGenStatus=!ERRORLEVEL!
         )
         call :ReleaseLock