On Sat, May 17, 2014 at 12:52 AM, Mike Stump <mikest...@comcast.net> wrote: > On May 16, 2014, at 3:07 AM, Bin.Cheng <amker.ch...@gmail.com> wrote: >> >>> I don't see how regrename will help resolve [base+offset] false >>> dependencies. Can you explain? I'd expect effects from >>> hardreg-copyprop "commoning" a base register. >> It's the register operand's false dependency, rather than the base's >> one. Considering below simple case: >> mov r1, #const1 >> store r1, [base+offset1] >> mov r1, #const2 >> store r1, [base_offset2] >> It should be renamed into: >> mov r1, #const1 >> store r1, [base+offset1] >> mov r2, #const2 >> store r2, [base_offset2] > > Ah, but, what did this look like right before pass_web? I don't think this would be a problem for pre-RA, generally GCC won't try to reuse pseudo register in this way, right?
Thanks, bin -- Best Regards.