Fix for issue 5639
authorBrian Sullivan <briansul@microsoft.com>
Fri, 24 Jun 2016 18:24:46 +0000 (11:24 -0700)
committerBrian Sullivan <briansul@microsoft.com>
Fri, 24 Jun 2016 21:48:31 +0000 (14:48 -0700)
Added check for hfa type
Update Test.lst removing the appropriate R2R_FAIL tags

Commit migrated from https://github.com/dotnet/coreclr/commit/81b2abba239fad281ede4e715beac3856477e61c

src/coreclr/src/jit/morph.cpp
src/coreclr/tests/arm64/Tests.lst

index c4336de..abf8bb3 100644 (file)
@@ -4512,7 +4512,7 @@ GenTreePtr    Compiler::fgMorphMultiregStructArg(GenTreePtr arg, fgArgTabEntryPt
 
         // Is this LclVar a promoted struct with exactly 2 fields?
         // TODO-ARM64-CQ: Support struct promoted HFA types here
-        if (varDsc->lvPromoted && (varDsc->lvFieldCnt == 2))
+        if (varDsc->lvPromoted && (varDsc->lvFieldCnt == 2) && !varDsc->lvIsHfa())
         {
             // See if we have two promoted fields that start at offset 0 and 8?
             unsigned loVarNum = lvaGetFieldLocal(varDsc, 0);
index f054782..f00ce9e 100644 (file)
@@ -34822,14 +34822,14 @@ RelativePath=JIT\jit64\hfa\main\testA\hfa_sd2A_d\hfa_sd2A_d.cmd
 WorkingDir=JIT\jit64\hfa\main\testA\hfa_sd2A_d
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_sd2A_r.cmd_5016]
 RelativePath=JIT\jit64\hfa\main\testA\hfa_sd2A_r\hfa_sd2A_r.cmd
 WorkingDir=JIT\jit64\hfa\main\testA\hfa_sd2A_r
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_sf0A_d.cmd_5017]
 RelativePath=JIT\jit64\hfa\main\testA\hfa_sf0A_d\hfa_sf0A_d.cmd
@@ -34864,14 +34864,14 @@ RelativePath=JIT\jit64\hfa\main\testA\hfa_sf2A_d\hfa_sf2A_d.cmd
 WorkingDir=JIT\jit64\hfa\main\testA\hfa_sf2A_d
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_sf2A_r.cmd_5022]
 RelativePath=JIT\jit64\hfa\main\testA\hfa_sf2A_r\hfa_sf2A_r.cmd
 WorkingDir=JIT\jit64\hfa\main\testA\hfa_sf2A_r
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_nd0B_d.cmd_5023]
 RelativePath=JIT\jit64\hfa\main\testB\hfa_nd0B_d\hfa_nd0B_d.cmd
@@ -34948,14 +34948,14 @@ RelativePath=JIT\jit64\hfa\main\testB\hfa_sd2B_d\hfa_sd2B_d.cmd
 WorkingDir=JIT\jit64\hfa\main\testB\hfa_sd2B_d
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_sd2B_r.cmd_5034]
 RelativePath=JIT\jit64\hfa\main\testB\hfa_sd2B_r\hfa_sd2B_r.cmd
 WorkingDir=JIT\jit64\hfa\main\testB\hfa_sd2B_r
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_sf0B_d.cmd_5035]
 RelativePath=JIT\jit64\hfa\main\testB\hfa_sf0B_d\hfa_sf0B_d.cmd
@@ -34976,14 +34976,14 @@ RelativePath=JIT\jit64\hfa\main\testB\hfa_sf2B_d\hfa_sf2B_d.cmd
 WorkingDir=JIT\jit64\hfa\main\testB\hfa_sf2B_d
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_sf2B_r.cmd_5038]
 RelativePath=JIT\jit64\hfa\main\testB\hfa_sf2B_r\hfa_sf2B_r.cmd
 WorkingDir=JIT\jit64\hfa\main\testB\hfa_sf2B_r
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;ISSUE_5639
 HostStyle=0
 [hfa_nd0C_d.cmd_5039]
 RelativePath=JIT\jit64\hfa\main\testC\hfa_nd0C_d\hfa_nd0C_d.cmd
@@ -35102,14 +35102,14 @@ RelativePath=JIT\jit64\hfa\main\testC\hfa_sd2C_d\hfa_sd2C_d.cmd
 WorkingDir=JIT\jit64\hfa\main\testC\hfa_sd2C_d
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;ISSUE_5639
 HostStyle=0
 [hfa_sd2C_r.cmd_5056]
 RelativePath=JIT\jit64\hfa\main\testC\hfa_sd2C_r\hfa_sd2C_r.cmd
 WorkingDir=JIT\jit64\hfa\main\testC\hfa_sd2C_r
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;ISSUE_5639
 HostStyle=0
 [hfa_sf0C_d.cmd_5057]
 RelativePath=JIT\jit64\hfa\main\testC\hfa_sf0C_d\hfa_sf0C_d.cmd
@@ -35144,14 +35144,14 @@ RelativePath=JIT\jit64\hfa\main\testC\hfa_sf2C_d\hfa_sf2C_d.cmd
 WorkingDir=JIT\jit64\hfa\main\testC\hfa_sf2C_d
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;ISSUE_5639
 HostStyle=0
 [hfa_sf2C_r.cmd_5062]
 RelativePath=JIT\jit64\hfa\main\testC\hfa_sf2C_r\hfa_sf2C_r.cmd
 WorkingDir=JIT\jit64\hfa\main\testC\hfa_sf2C_r
 Expected=0
 MaxAllowedDurationSeconds=600
-Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;R2R_FAIL;ISSUE_5639
+Categories=Pri0;EXPECTED_PASS;ISSUE_4946;NATIVE_INTEROP;ISSUE_5639
 HostStyle=0
 [hfa_nd0E_d.cmd_5063]
 RelativePath=JIT\jit64\hfa\main\testE\hfa_nd0E_d\hfa_nd0E_d.cmd