summaryrefslogtreecommitdiff
path: root/src/common/x64
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2016-03-09 02:41:07 -0500
committerLioncash <mathew1800@gmail.com>2016-03-09 03:13:01 -0500
commite3f9d09b28f662c699d14706f738c5f7881bf13c (patch)
treeacd43362203b206f0623d5af3ebc392ce0c953df /src/common/x64
parent1351c0ce9f2029f695ee47605c99655f078d3c01 (diff)
emitter: templatize ImmPtr
Diffstat (limited to 'src/common/x64')
-rw-r--r--src/common/x64/emitter.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/common/x64/emitter.h b/src/common/x64/emitter.h
index 865b724a8..7c6548fb5 100644
--- a/src/common/x64/emitter.h
+++ b/src/common/x64/emitter.h
@@ -274,11 +274,15 @@ constexpr OpArg SImmAuto(s32 imm) {
return OpArg(imm, (imm >= 128 || imm < -128) ? SCALE_IMM32 : SCALE_IMM8);
}
+template <typename T>
+OpArg ImmPtr(const T* imm)
+{
#ifdef _ARCH_64
-inline OpArg ImmPtr(const void* imm) {return Imm64((u64)imm);}
+ return Imm64(reinterpret_cast<u64>(imm));
#else
-inline OpArg ImmPtr(const void* imm) {return Imm32((u32)imm);}
+ return Imm32(reinterpret_cast<u32>(imm));
#endif
+}
inline u32 PtrOffset(const void* ptr, const void* base)
{