summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJan Kotas <jkotas@microsoft.com>2016-04-19 20:20:32 -0700
committerJan Kotas <jkotas@microsoft.com>2016-04-19 20:20:32 -0700
commitf1e5b8c80ff74ebd719140b7d73747a62238698a (patch)
tree9b98ae7dfb35313c0182e49ee09f557afdbebbdf /src
parentb82077e95ca8834ee97f763c1382d273d5fc6767 (diff)
parentbaff60cd73a804e76362b2576926ff728c19c98f (diff)
downloadcoreclr-f1e5b8c80ff74ebd719140b7d73747a62238698a.tar.gz
coreclr-f1e5b8c80ff74ebd719140b7d73747a62238698a.tar.bz2
coreclr-f1e5b8c80ff74ebd719140b7d73747a62238698a.zip
Merge pull request #4405 from yizhang82/delegate_fix
Fix SysV calling convention bug in interop. We need to treat delegate…
Diffstat (limited to 'src')
-rw-r--r--src/vm/methodtable.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/vm/methodtable.cpp b/src/vm/methodtable.cpp
index 056c7cb892..ce04b51076 100644
--- a/src/vm/methodtable.cpp
+++ b/src/vm/methodtable.cpp
@@ -2921,15 +2921,17 @@ bool MethodTable::ClassifyEightBytesWithNativeLayout(SystemVStructRegisterPassin
case NFT_ANSICHAR:
case NFT_WINBOOL:
case NFT_CBOOL:
+ case NFT_DELEGATE:
+ case NFT_SAFEHANDLE:
+ case NFT_CRITICALHANDLE:
fieldClassificationType = SystemVClassificationTypeInteger;
break;
- case NFT_DELEGATE:
+ // It's not clear what the right behavior for NTF_DECIMAL and NTF_DATE is
+ // But those two types would only make sense on windows. We can revisit this later
case NFT_DECIMAL:
case NFT_DATE:
case NFT_ILLEGAL:
- case NFT_SAFEHANDLE:
- case NFT_CRITICALHANDLE:
default:
return false;
}