Kaynağa Gözat

emitter: templatize ImmPtr

Lioncash 10 yıl önce
ebeveyn
işleme
e3f9d09b28
1 değiştirilmiş dosya ile 6 ekleme ve 2 silme
  1. 6 2
      src/common/x64/emitter.h

+ 6 - 2
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)
 {