This is the mail archive of the gcc-bugs@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]

Re: register renaming causes many ARM testsuite failures


>The function build_def_use uses constraints to determine which registers can
>be used for renaming.  The relevant bit of code is this:

If I'm reading that right, it just notes which class an operand is in so that 
it can later choose another register in the same class.  The problem at hand 
here is that the actual registers in use, not just their classes, matter in an 
ldmsi insn.  Am I missing something about the code you quoted?

The "old" regrename pass used to call recog to check that its transformations 
were acceptable.  I think that would have caught this case, because 
load_multiple_operation() will reject registers that are out of order.  I 
can't see a direct equivalent to that in the current code.

p.



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