OSDN Git Service

Fix Thumb2 load / store addressing mode matching code. Do not use so_reg form to
authorEvan Cheng <evan.cheng@apple.com>
Tue, 11 Aug 2009 08:52:18 +0000 (08:52 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Tue, 11 Aug 2009 08:52:18 +0000 (08:52 +0000)
commit3a21425dbe09c7ac85e6b156f82184dd6132435a
tree157a3d9c4389162fbe1cb121dd964bc0f9c84cfd
parent1cf5783dd73e72adc60aa2d037728cdcd13938ca
Fix Thumb2 load / store addressing mode matching code. Do not use so_reg form to
match base only address, i.e. [r] since Thumb2 requires a offset register field.
For those, use [r + imm12] where the immediate is zero.
Note the generated assembly code does not look any different after the patch.
But the bug would have broken the JIT (if there is Thumb2 support) and it can
break later passes which expect the address mode to be well-formed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78658 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMISelDAGToDAG.cpp
lib/Target/ARM/AsmPrinter/ARMAsmPrinter.cpp
lib/Target/ARM/Thumb2SizeReduction.cpp