summaryrefslogtreecommitdiff
path: root/src/vm/dllimport.cpp
diff options
context:
space:
mode:
authorJeremy Koritzinsky <jekoritz@microsoft.com>2018-10-30 16:30:16 -0700
committerJeremy Koritzinsky <jkoritzinsky@gmail.com>2018-10-31 17:24:05 -0700
commit014a56de050a8c36f1c4ae38a84891a09d17469f (patch)
treeaa5c2a1e3d9b03470015067984dc9d07bab394a2 /src/vm/dllimport.cpp
parentaa0d4daf1491562a6c7e6ef18f719938a0e6e4bd (diff)
downloadcoreclr-014a56de050a8c36f1c4ae38a84891a09d17469f.tar.gz
coreclr-014a56de050a8c36f1c4ae38a84891a09d17469f.tar.bz2
coreclr-014a56de050a8c36f1c4ae38a84891a09d17469f.zip
Make the check for a struct fitting in a register check for either managed or native depending on the situation (i.e. managed call, reflection, P/Invoke) instead of only for managed. Fixes #20702.
Clean up duplicate #ifdefs. Move #ifdef into method impl instead of outside the implementations. Move IsRegPassedStruct out of UNIX_AMD64_ABI #ifdef. Move check for enregistered struct out of UNIX_AMD64_ABI #ifdef Add dummy implementation of IsRegPassedStruct and IsNativeStructPassedInRegisters when UNIX_AMD64_ABI isn't defined.
Diffstat (limited to 'src/vm/dllimport.cpp')
-rw-r--r--src/vm/dllimport.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vm/dllimport.cpp b/src/vm/dllimport.cpp
index 0b20aaeebb..6fd4366624 100644
--- a/src/vm/dllimport.cpp
+++ b/src/vm/dllimport.cpp
@@ -599,7 +599,7 @@ public:
#ifndef _TARGET_X86_
// we store the real managed argument stack size in the stub MethodDesc on non-X86
- UINT stackSize = pStubMD->SizeOfArgStack();
+ UINT stackSize = pStubMD->SizeOfNativeArgStack();
if (!FitsInU2(stackSize))
COMPlusThrow(kMarshalDirectiveException, IDS_EE_SIGTOOCOMPLEX);