summaryrefslogtreecommitdiff
path: root/src/jit/compiler.h
diff options
context:
space:
mode:
authorSejong Oh <sejooh@microsoft.com>2016-05-06 14:25:40 -0700
committerSejong Oh <sejooh@microsoft.com>2016-05-06 14:25:40 -0700
commit2308fbf2253abef97628bde2a04d8fb910ce1018 (patch)
tree180b147c9d997652e380621957951f3248eda78a /src/jit/compiler.h
parentb3be35f379519120acd8427485524e92cf911918 (diff)
parent9b54e5ebee7838b3eb9c7cacbd9f66ac78dfb968 (diff)
downloadcoreclr-2308fbf2253abef97628bde2a04d8fb910ce1018.tar.gz
coreclr-2308fbf2253abef97628bde2a04d8fb910ce1018.tar.bz2
coreclr-2308fbf2253abef97628bde2a04d8fb910ce1018.zip
Merge pull request #4690 from sejongoh/use_rax_for_ret_buf
Return RetBuf address via RAX for Windows 64
Diffstat (limited to 'src/jit/compiler.h')
-rw-r--r--src/jit/compiler.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/jit/compiler.h b/src/jit/compiler.h
index 6ae1b08a20..ea7ef101f2 100644
--- a/src/jit/compiler.h
+++ b/src/jit/compiler.h
@@ -7869,11 +7869,14 @@ public :
// 2. As per the System V ABI, the address of RetBuf needs to be returned by
// methods with hidden RetBufArg in RAX. In such case GT_RETURN is of TYP_BYREF,
// returning the address of RetBuf.
-#ifdef FEATURE_UNIX_AMD64_STRUCT_PASSING
+ //
+ // 3. Windows 64-bit native calling convention also requires the address of RetBuff
+ // to be returned in RAX.
+#ifdef _TARGET_AMD64_
return (info.compRetBuffArg != BAD_VAR_NUM);
-#else // FEATURE_UNIX_AMD64_STRUCT_PASSING
+#else // !_TARGET_AMD64_
return (compIsProfilerHookNeeded()) && (info.compRetBuffArg != BAD_VAR_NUM);
-#endif // !FEATURE_UNIX_AMD64_STRUCT_PASSING
+#endif // !_TARGET_AMD64_
}
// Returns true if the method returns a value in more than one return register