This fixes three issues related to Thumb literal loads:
authorMihai Popa <mihail.popa@gmail.com>
Thu, 15 Aug 2013 15:43:06 +0000 (15:43 +0000)
committerMihai Popa <mihail.popa@gmail.com>
Thu, 15 Aug 2013 15:43:06 +0000 (15:43 +0000)
commit428715d4e120e6ef6fc898665607a92f3dd02709
tree29e585153282a0492d293d6d5dedaa219f1bbe79
parentbd71eea899d579deb1fcee02944f955a4708091a
This fixes three issues related to Thumb literal loads:

1. The offset range for Thumb1 PC relative loads is [0..1020] and not [-1024..1020]
2. Thumb2 PC relative loads may define the PC, so the restriction placed on target register is removed
3. Removes unneeded alias between "ldr.n" and t1LDRpci. ".n" is actually stripped by both tablegen
and the ASM parser, so this alias rule really does nothing

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188466 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMInstrThumb.td
lib/Target/ARM/ARMInstrThumb2.td
lib/Target/ARM/AsmParser/ARMAsmParser.cpp
test/MC/ARM/basic-thumb2-instructions.s
test/MC/ARM/thumb-diagnostics.s