https://gcc.gnu.org/g:2af32814cf2ba3c632fd5a3f69f275613383723d
commit r15-8989-g2af32814cf2ba3c632fd5a3f69f275613383723d Author: Uros Bizjak <ubiz...@gmail.com> Date: Thu Mar 27 21:25:36 2025 +0100 i386: Fix offset calculation in ix86_redzone_clobber plus_constant expects integer as its third argument, not rtx. gcc/ChangeLog: * config/i386/i386.cc (ix86_redzone_clobber): Use integer, not rtx as the third argument of plus_constant. Diff: --- gcc/config/i386/i386.cc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gcc/config/i386/i386.cc b/gcc/config/i386/i386.cc index 18127bcada81..f38e3db41fa9 100644 --- a/gcc/config/i386/i386.cc +++ b/gcc/config/i386/i386.cc @@ -26465,8 +26465,7 @@ ix86_redzone_clobber () cfun->machine->asm_redzone_clobber_seen = true; if (ix86_using_red_zone ()) { - rtx base = plus_constant (Pmode, stack_pointer_rtx, - GEN_INT (-RED_ZONE_SIZE)); + rtx base = plus_constant (Pmode, stack_pointer_rtx, -RED_ZONE_SIZE); rtx mem = gen_rtx_MEM (BLKmode, base); set_mem_size (mem, RED_ZONE_SIZE); return mem;