This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [cft] subreg validation round 2
> > How did you address the problem with SPARC splitters?
>
> @@ -3674,14 +3676,15 @@ simplify_subreg (enum machine_mode outer
> && subreg_offset_representable_p (REGNO (op), innermode,
> byte, outermode))
> {
> - rtx tem = gen_rtx_SUBREG (outermode, op, byte);
> - int final_regno = subreg_hard_regno (tem, 0);
> + unsigned int regno = REGNO (op);
> + unsigned int final_regno
> + = regno + subreg_regno_offset (regno, innermode, byte, outermode);
Ouch! Pretty deeply buried in the subreg handling stuff.
Would you see any advantage in manually building the hard regs within the
splitters?
--
Eric Botcazou