subreg against register allocation?

Joern Rennecke amylaar@spamcop.net
Tue Jun 15 08:06:00 GMT 2010


Quoting Ian Lance Taylor <iant@google.com>:

> Hmmm, you could be right.  I wrote and tested some examples when
> working on lower-subreg, but I never committed them.  The current
> define_splits in i386.md which can do parallel sets only run if
> reload_completed is true, when simplify_gen_subreg will return
> different hard registers.  While I don't know of any reason that it
> wouldn't work, I guess I don't know for sure that it is safe.

On targets with different register sizes, subregs are not useful before
reload to describe what happens with the smaller registers; because of
the uncertainty of the register allocation, the semantics are still
undefined.
It would really be useful if we replaced STRICT_LOW_PART with something
like STRICT_SUBREG to refer to parts of a REG like SUBREG, but always
leave the rest of the register alone.



More information about the Gcc mailing list