diff options
Diffstat (limited to 'gcc/config/sh')
-rw-r--r-- | gcc/config/sh/sh.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index b2fb56c..7f88180 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -6707,7 +6707,9 @@ output_stack_adjust (int size, rtx reg, int epilogue_p, temp = -1; if (temp < 0 && ! current_function_interrupt && epilogue_p >= 0) { - HARD_REG_SET temps = call_used_reg_set & ~call_fixed_reg_set; + HARD_REG_SET temps = (call_used_reg_set + & ~fixed_reg_set + & savable_regs); if (epilogue_p > 0) { int nreg = 0; |