Thumb2SizeReduction: Check the correct set of registers for LDMIA.
authorPeter Collingbourne <peter@pcc.me.uk>
Tue, 5 May 2015 20:07:10 +0000 (20:07 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Tue, 5 May 2015 20:07:10 +0000 (20:07 +0000)
commit08c531db5f74a756fda81dd49c798532ff89f045
tree6890ca17202ba3544ef8a6b06f6cd9c8806f013f
parent97dbeaa8d596f1b6963211f8e5683b4735d66ff8
Thumb2SizeReduction: Check the correct set of registers for LDMIA.

The register set for LDMIA begins at offset 3, not 4. We were previously
missing the short encoding of this instruction in the case where the base
register was the first register in the register set.

Also clean up some dead code:

- The isARMLowRegister check is redundant with what VerifyLowRegs does;
  replace with an assert.
- Remove handling of LDMDB instruction, which has no short encoding (and
  does not appear in ReduceTable).

Differential Revision: http://reviews.llvm.org/D9485

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236535 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/Thumb2SizeReduction.cpp
test/CodeGen/Thumb2/float-ops.ll