[Thumb] Don't materialize a new base register when CPSR is live

Moritz Roth Moritz.Roth at arm.com
Fri Sep 12 09:44:52 PDT 2014


Hi Renato,

This patch is a small bugfix for the load/store optimizer. If the CPSR is live, we can't safely materialize a base register + offset in Thumb-1.
There is no test case because I haven't actually seen this cause problems in real code - but theoretically, it's possible to get spill code inserted between e.g. a CMP + Bcc, which would then be a candidate for merging.

OK to commit?

Cheers
Moritz

-- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

ARM Limited, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2557590
ARM Holdings plc, Registered office 110 Fulbourn Road, Cambridge CB1 9NJ, Registered in England & Wales, Company No: 2548782
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140912/2c5bcf4b/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-ARM-Load-store-optimizer-Don-t-materialize-a-new-bas.patch
Type: application/octet-stream
Size: 2609 bytes
Desc: 0001-ARM-Load-store-optimizer-Don-t-materialize-a-new-bas.patch
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140912/2c5bcf4b/attachment.obj>


More information about the llvm-commits mailing list