This is a straight replacement of "calls we can clobber without saving them first".
2019-09-11 Richard Sandiford <richard.sandif...@arm.com> gcc/ * shrink-wrap.c: Include function-abi.h. (requires_stack_frame_p): Use crtl->abi to test whether the current function can use a register without saving it first. Index: gcc/shrink-wrap.c =================================================================== --- gcc/shrink-wrap.c 2019-09-10 19:56:32.577268091 +0100 +++ gcc/shrink-wrap.c 2019-09-11 19:49:15.133482515 +0100 @@ -43,7 +43,7 @@ Software Foundation; either version 3, o #include "regcprop.h" #include "rtl-iter.h" #include "valtrack.h" - +#include "function-abi.h" /* Return true if INSN requires the stack frame to be set up. PROLOGUE_USED contains the hard registers used in the function @@ -76,7 +76,7 @@ requires_stack_frame_p (rtx_insn *insn, } if (hard_reg_set_intersect_p (hardregs, prologue_used)) return true; - hardregs &= ~call_used_or_fixed_regs; + hardregs &= ~crtl->abi->full_reg_clobbers (); for (regno = 0; regno < FIRST_PSEUDO_REGISTER; regno++) if (TEST_HARD_REG_BIT (hardregs, regno) && df_regs_ever_live_p (regno))