summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/video_core/macro/macro_jit_x64.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/video_core/macro/macro_jit_x64.cpp b/src/video_core/macro/macro_jit_x64.cpp
index b703daad9..2eb98173d 100644
--- a/src/video_core/macro/macro_jit_x64.cpp
+++ b/src/video_core/macro/macro_jit_x64.cpp
@@ -17,7 +17,6 @@ namespace Tegra {
17static const Xbyak::Reg64 STATE = Xbyak::util::rbx; 17static const Xbyak::Reg64 STATE = Xbyak::util::rbx;
18static const Xbyak::Reg32 RESULT = Xbyak::util::ebp; 18static const Xbyak::Reg32 RESULT = Xbyak::util::ebp;
19static const Xbyak::Reg64 PARAMETERS = Xbyak::util::r12; 19static const Xbyak::Reg64 PARAMETERS = Xbyak::util::r12;
20static const Xbyak::Reg64 NEXT_PARAMETER = Xbyak::util::r13;
21static const Xbyak::Reg32 METHOD_ADDRESS = Xbyak::util::r14d; 20static const Xbyak::Reg32 METHOD_ADDRESS = Xbyak::util::r14d;
22static const Xbyak::Reg64 BRANCH_HOLDER = Xbyak::util::r15; 21static const Xbyak::Reg64 BRANCH_HOLDER = Xbyak::util::r15;
23 22
@@ -25,7 +24,6 @@ static const std::bitset<32> PERSISTENT_REGISTERS = Common::X64::BuildRegSet({
25 STATE, 24 STATE,
26 RESULT, 25 RESULT,
27 PARAMETERS, 26 PARAMETERS,
28 NEXT_PARAMETER,
29 METHOD_ADDRESS, 27 METHOD_ADDRESS,
30 BRANCH_HOLDER, 28 BRANCH_HOLDER,
31}); 29});
@@ -422,7 +420,6 @@ void MacroJITx64Impl::Compile() {
422 mov(PARAMETERS, Common::X64::ABI_PARAM2); 420 mov(PARAMETERS, Common::X64::ABI_PARAM2);
423 xor_(RESULT, RESULT); 421 xor_(RESULT, RESULT);
424 xor_(METHOD_ADDRESS, METHOD_ADDRESS); 422 xor_(METHOD_ADDRESS, METHOD_ADDRESS);
425 xor_(NEXT_PARAMETER, NEXT_PARAMETER);
426 xor_(BRANCH_HOLDER, BRANCH_HOLDER); 423 xor_(BRANCH_HOLDER, BRANCH_HOLDER);
427 424
428 mov(dword[STATE + offsetof(JITState, registers) + 4], Compile_FetchParameter()); 425 mov(dword[STATE + offsetof(JITState, registers) + 4], Compile_FetchParameter());
@@ -529,8 +526,8 @@ bool MacroJITx64Impl::Compile_NextInstruction() {
529} 526}
530 527
531Xbyak::Reg32 Tegra::MacroJITx64Impl::Compile_FetchParameter() { 528Xbyak::Reg32 Tegra::MacroJITx64Impl::Compile_FetchParameter() {
532 mov(eax, dword[PARAMETERS + NEXT_PARAMETER * sizeof(u32)]); 529 mov(eax, dword[PARAMETERS]);
533 inc(NEXT_PARAMETER); 530 add(PARAMETERS, sizeof(u32));
534 return eax; 531 return eax;
535} 532}
536 533