[PATCH] [ARM] Fix handling of thumb1 out-of-range frame offsets
john.brawn at arm.com
Wed Mar 18 09:43:41 PDT 2015
LocalStackSlotPass assumes that isFrameOffsetLegal doesn't change its answer when the base register changes. Unfortunately this isn't true in thumb1, where SP-based loads allow a larger offset than non-SP-based loads, and this causes the base register reuse code to generate instructions that are unencodable, causing an assertion failure.
Solve this by adding a BaseReg parameter to isFrameOffsetLegal, which ARMBaseRegisterInfo can then make use of to give the correct answer.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 10632 bytes
Desc: not available
More information about the llvm-commits