Analysis of high priority PR c/2454
Joe Buck
Joe.Buck@synopsys.com
Tue Jul 2 09:59:00 GMT 2002
> >But back to the RTL "combination" above. The true problem (take 3)
> >is with the other operand of the instruction. "(reg:SI 48)" which
> >should have the value 255, has been replaced with the value -1.
> >How did that happen?
Jeff Law writes:
> This is why I (*%@#$ hate paradoxical subregs. Their semantics aren't
> clear and they must one day die.
A rather ignorant proposal from someone who never really understood
the subreg stuff very well:
It seems that there are three possible semantics: the extra bits are
either don't care (or unknown), sign-extended, or zero-extended. What if
these three cases were made explicit (by, say, adding an attribute)?
Optimizations that don't care about the bits could just ignore this
attribute; optimizations that do care would have to check it.
But doing it that way might minimize the number of changes needed for
robust operation.
More information about the Gcc
mailing list