This is the mail archive of the
mailing list for the GCC project.
Re: fix opt/12441
> > The block comment immediately above Jan's change explicitly says not to
> > accept SUBREGs, and why. This PR is exactly that case. Shame on you.
> > The problem is not in reload, per se. The problem is that with the
> > way we treat multi-word data types such as DImode, we really will run
> > out of registers.
> > This would be safe to pull back to 3.3.3 if someone would like to do
> > the requisite sanity check build.
> This patch has been originaly made to fix regression on x86-64 where we
> produced SUBREGed registers (this is why i didn't want to revert it
> completely as mentioned earlier on the thread).
> Perhaps we can allow just SUBREGs that does not increase number of words
> in the memory addresses?
> I will try to dig out the original testcase if it still fails.
The beggining of the thread is unforutnately not in archives (it
probably went by private mail) and I didn't found any regressions in
SPEC nor testsuite by reversing this patch, so perhaps the original
problem has been solved independnetly (I remember that it was very
strange lea constructed on stack pointer or something similar).
I will drop your patch to hammer branch and lets see if something
breaks. Thanks a lot for looking into that! Sorry for skipping this