ref: cd57a9a0ba13aedfa6e9f67331e75936d66a621a
parent: 763f64ccf2eca7fa70d8db923fac58e364e82555
author: Henrik Gramner <gramner@twoorioles.com>
date: Wed Dec 19 15:28:14 EST 2018
Only perform stack allocation on WIN64 in ipred_filter_avx2 Makes it possible to use <32-byte stack alignment on non-Windows systems. The stack space is used to store xmm registers which is only required on 64-bit Windows.
--- a/src/x86/ipred.asm
+++ b/src/x86/ipred.asm
@@ -2249,10 +2249,12 @@
RET
ALIGN function_align
.w16:
+%if WIN64
%assign stack_offset stack_offset - stack_size_padded
%assign xmm_regs_used 15
%assign stack_size_padded 0x98
SUB rsp, stack_size_padded
+%endif
sub hd, 2
TAIL_CALL .w16_main, 0
.w16_main: