summaryrefslogtreecommitdiff
path: root/tests/x86_jit32_issues.targets
diff options
context:
space:
mode:
authorYi Zhang <yzha@microsoft.com>2016-05-18 23:05:53 -0700
committerYi Zhang <yzha@microsoft.com>2016-05-19 15:44:36 -0700
commitaa08b53d25088dd9c2b7c9a8aa483b413906c7d4 (patch)
tree5853f6e09387551b36231ec34081b77a044ca0a7 /tests/x86_jit32_issues.targets
parente78338ef715dc6fd89d9cbd0bf93c7f88d211c20 (diff)
downloadcoreclr-aa08b53d25088dd9c2b7c9a8aa483b413906c7d4.tar.gz
coreclr-aa08b53d25088dd9c2b7c9a8aa483b413906c7d4.tar.bz2
coreclr-aa08b53d25088dd9c2b7c9a8aa483b413906c7d4.zip
Fix x86 only ICastable feature bug.
When we call ICastable.IsInstanceOfInterface, we treat RuntimeTypeHandle as a OBJECTREF, which is incorrect as-per x86 calling convention since RuntimeTypehandle is a struct that contains a RuntimeType ref field and needs to be passed in stack. Our VM simple call helpers CALL_MANAGED_METHOD doesn't handle this correctly (it does the simple thing that always assume all the arguments are passed in register first). I'm fixing this by using a static method that takes RuntimeType instead of RuntimeTypeHandle, then convert it to RuntimeTypehandle. Also switch to use PREPARE_NONVIRTUAL_CALLSITE(METHODID) as per Jan's suggestion. ICastable test is now enabled in x86 for both JITs.
Diffstat (limited to 'tests/x86_jit32_issues.targets')
-rw-r--r--tests/x86_jit32_issues.targets5
1 files changed, 1 insertions, 4 deletions
diff --git a/tests/x86_jit32_issues.targets b/tests/x86_jit32_issues.targets
index adee8b38fd..3bc3b16a53 100644
--- a/tests/x86_jit32_issues.targets
+++ b/tests/x86_jit32_issues.targets
@@ -1,9 +1,6 @@
<Project DefaultTargets = "GetListOfTestCmds"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<ItemGroup Condition="'$(XunitTestBinBase)' != ''">
- <ExcludeList Include="$(XunitTestBinBase)\Interop\ICastable\Castable\Castable.cmd" >
- <Issue> Assert failure(PID 4872 [0x00001308], Thread: 13744 [0x35b0]): Consistency check failed: AV in clr at this callstack:</Issue>
- </ExcludeList>
<ExcludeList Include="$(XunitTestBinBase)\JIT\opt\Inline\regression\mismatch64\mismatch64\mismatch64.cmd" >
<Issue>'Arg type mismatch: Wanted long (size 8), Got struct (size 4) for call at IL offset 0x16'</Issue>
</ExcludeList>
@@ -278,4 +275,4 @@
<Issue>needs triage</Issue>
</ExcludeList>
</ItemGroup>
-</Project> \ No newline at end of file
+</Project>