Fix multi-reg regno_reg_rtx entry
Eric Botcazou
ebotcazou@adacore.com
Sun Jan 29 16:21:00 GMT 2012
> [ BTw, I think the MIPS comment is wrong. HARD_REGNO_NREGS (fpreg, SFmode)
> is (now) 1, even when using paired FPRs. And the suggestion doesn't
> seem at all ideal to me. OK to remove? ]
You're the MIPS maintainer, so it's up to you.
> A simple fix, which I've used below, is to make sure that the previous
> mode requires only one register. We could drop the new assert if we want
> to be even more conservative at this stage.
That doesn't seem decisively better to me. Why not use REGNO_REG_CLASS, i.e.
copy the mode only if we stay within the same class?
> A riskier but perhaps more logical fix would be to call choose_hard_reg_mode
> again, this time telling it to ignore HARD_REGNO_MODE_OK.
Yes, that's probably a little too risky at this stage.
Btw, could you fix the comment about regno_reg_rtx in emit-rtl.c/function.h?
It talks about pseudo-registers while we are talking about hard registers.
--
Eric Botcazou
More information about the Gcc-patches
mailing list