diff --git a/src/xenia/cpu/backend/a64/a64_backend.cc b/src/xenia/cpu/backend/a64/a64_backend.cc index 076c1d487..d1780980b 100644 --- a/src/xenia/cpu/backend/a64/a64_backend.cc +++ b/src/xenia/cpu/backend/a64/a64_backend.cc @@ -418,7 +418,7 @@ void A64ThunkEmitter::EmitSaveVolatileRegs() { STR(X15, XSP, offsetof(StackLayout::Thunk, r[15])); STR(X16, XSP, offsetof(StackLayout::Thunk, r[16])); STR(X17, XSP, offsetof(StackLayout::Thunk, r[17])); - STR(X17, XSP, offsetof(StackLayout::Thunk, r[18])); + STR(X18, XSP, offsetof(StackLayout::Thunk, r[18])); STR(Q0, XSP, offsetof(StackLayout::Thunk, xmm[0])); STR(Q1, XSP, offsetof(StackLayout::Thunk, xmm[1])); diff --git a/src/xenia/cpu/backend/a64/a64_stack_layout.h b/src/xenia/cpu/backend/a64/a64_stack_layout.h index 87dc3379c..02db19db2 100644 --- a/src/xenia/cpu/backend/a64/a64_stack_layout.h +++ b/src/xenia/cpu/backend/a64/a64_stack_layout.h @@ -91,7 +91,7 @@ class StackLayout { XEPACKEDSTRUCT(Thunk, { uint64_t arg_temp[3]; uint64_t r[19]; - vec128_t xmm[31]; + vec128_t xmm[32]; }); static_assert(sizeof(Thunk) % 16 == 0, "sizeof(Thunk) must be a multiple of 16!");