diff --git a/CMakeLists.txt b/CMakeLists.txt index 85e192aed1..3a9894ade5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -279,8 +279,6 @@ elseif(X86) set(CommonExtra ${CommonExtra} Common/ABI.cpp Common/ABI.h - Common/ArmEmitter.h - Common/ArmEmitter.cpp Common/CPUDetect.cpp Common/CPUDetect.h Common/Thunk.cpp diff --git a/Common/ArmEmitter.cpp b/Common/ArmEmitter.cpp index 27ebf7887c..302cdc7715 100644 --- a/Common/ArmEmitter.cpp +++ b/Common/ArmEmitter.cpp @@ -471,10 +471,10 @@ void ARMXEmitter::FlushLitPool() // Write the constant to Literal Pool if (!pool.loc) { - pool.loc = (s32)code; + pool.loc = (intptr_t)code; Write32(pool.val); } - s32 offset = pool.loc - (s32)pool.ldr_address - 8; + s32 offset = (s32)(pool.loc - (intptr_t)pool.ldr_address - 8); // Backpatch the LDR *(u32*)pool.ldr_address |= (offset >= 0) << 23 | abs(offset);