SUBREG questions

Joern Rennecke amylaar@cambridge.redhat.com
Thu Feb 22 21:41:00 GMT 2001


> The mismatch is this:  It's documented that stores into SUBREG's with a
> smaller mode, leave the other bits in undefined state:
>   "Storing in a non-paradoxical `subreg' has undefined results for
>      bits belonging to the same word as the `subreg'."  (from docu of
                      ^^^^^^^^^^^^^^^^

It's no mismatch.  Bits belonging to other words remain unchanged.

              
>   subreg RTL pattern), and
>   "Likewise, if
>      LVAL is a `subreg' whose machine mode is narrower than the mode of
>      the register, the rest of the register can be changed in an
>      undefined way."  (from docu to (set LVAL X) RTL pattern)

This is not formulated exactly enough.  This is only meant to apply to
extend to a word for pseudos, for a single hard register for hard registers.



More information about the Gcc mailing list