summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/x64/xbyak_abi.h36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/common/x64/xbyak_abi.h b/src/common/x64/xbyak_abi.h
index d15e1aaf0..1dcd147b6 100644
--- a/src/common/x64/xbyak_abi.h
+++ b/src/common/x64/xbyak_abi.h
@@ -223,40 +223,4 @@ inline void ABI_PopRegistersAndAdjustStack(Xbyak::CodeGenerator& code, std::bits
223 } 223 }
224} 224}
225 225
226inline size_t ABI_PushRegistersAndAdjustStackGPS(Xbyak::CodeGenerator& code, std::bitset<32> regs,
227 size_t rsp_alignment,
228 size_t needed_frame_size = 0) {
229 s32 subtraction, xmm_offset;
230 ABI_CalculateFrameSize(regs, rsp_alignment, needed_frame_size, &subtraction, &xmm_offset);
231
232 for (std::size_t i = 0; i < regs.size(); ++i) {
233 if (regs[i] && ABI_ALL_GPRS[i]) {
234 code.push(IndexToReg64(static_cast<int>(i)));
235 }
236 }
237
238 if (subtraction != 0) {
239 code.sub(code.rsp, subtraction);
240 }
241
242 return ABI_SHADOW_SPACE;
243}
244
245inline void ABI_PopRegistersAndAdjustStackGPS(Xbyak::CodeGenerator& code, std::bitset<32> regs,
246 size_t rsp_alignment, size_t needed_frame_size = 0) {
247 s32 subtraction, xmm_offset;
248 ABI_CalculateFrameSize(regs, rsp_alignment, needed_frame_size, &subtraction, &xmm_offset);
249
250 if (subtraction != 0) {
251 code.add(code.rsp, subtraction);
252 }
253
254 // GPRs need to be popped in reverse order
255 for (int i = 15; i >= 0; i--) {
256 if (regs[i]) {
257 code.pop(IndexToReg64(i));
258 }
259 }
260}
261
262} // namespace Common::X64 226} // namespace Common::X64