This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: SUBREG and reload.c


    I was puzzled by the code below in reload.c

    Why is it necessary to reload a PLUS, but not other
    RTL(MULT/XOR/ASHIFTR, etc.), inside a SUBREG?

As is unfortunately the case with many things in reload, the basic answer is
"because that's what works", but a possible explanation is that reload can
create a PLUS when it eliminates things like the frame pointer, so it has to
be able to undo what it did if it makes invalid patterns.  All the other
expressions are only there if they were already valid, so they don't need
special treatment.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]