Merge pull request #3085 from lateralusX/jlorenss/win-x64-pinvoke-empty-struct
[mono.git] / mono / mini / mini-amd64.h
index 43b825c9ca606c98937d6187cb0bf0e2941d7c77..11fc30a435f28b08366bd6cae009fe21602147d4 100644 (file)
@@ -230,8 +230,10 @@ typedef struct {
        gpointer bp_addrs [MONO_ZERO_LEN_ARRAY];
 } SeqPointInfo;
 
+#define DYN_CALL_STACK_ARGS 6
+
 typedef struct {
-       mgreg_t regs [PARAM_REGS];
+       mgreg_t regs [PARAM_REGS + DYN_CALL_STACK_ARGS];
        mgreg_t res;
        guint8 *ret;
        double fregs [8];
@@ -387,7 +389,7 @@ typedef struct {
 
 #define MONO_ARCH_GSHARED_SUPPORTED 1
 #define MONO_ARCH_DYN_CALL_SUPPORTED 1
-#define MONO_ARCH_DYN_CALL_PARAM_AREA 0
+#define MONO_ARCH_DYN_CALL_PARAM_AREA (DYN_CALL_STACK_ARGS * 8)
 
 #define MONO_ARCH_LLVM_SUPPORTED 1
 #define MONO_ARCH_HAVE_HANDLER_BLOCK_GUARD 1
@@ -413,9 +415,7 @@ typedef struct {
 #define MONO_ARCH_HAVE_TLS_GET_REG 1
 #endif
 
-#if !defined (TARGET_WIN32)
 #define MONO_ARCH_GSHAREDVT_SUPPORTED 1
-#endif
 
 
 #if defined(TARGET_APPLETVOS)