Message ID | 87lgh4soqt.fsf@linaro.org |
---|---|
State | New |
Headers | show |
Series | [committed] Fix mode_for_size units in caller-save.c (PR83761) | expand |
Index: gcc/caller-save.c =================================================================== --- gcc/caller-save.c 2018-01-03 21:42:44.552647435 +0000 +++ gcc/caller-save.c 2018-01-11 09:49:29.873718858 +0000 @@ -1147,7 +1147,8 @@ replace_reg_with_saved_mem (rtx *loc, machine_mode smode = save_mode[regno]; gcc_assert (smode != VOIDmode); if (hard_regno_nregs (regno, smode) > 1) - smode = mode_for_size (exact_div (GET_MODE_SIZE (mode), nregs), + smode = mode_for_size (exact_div (GET_MODE_BITSIZE (mode), + nregs), GET_MODE_CLASS (mode), 0).require (); XVECEXP (mem, 0, i) = gen_rtx_REG (smode, regno + i); }