diff options
author | Mihai Popa <mihail.popa@gmail.com> | 2013-08-19 15:02:25 +0000 |
---|---|---|
committer | Mihai Popa <mihail.popa@gmail.com> | 2013-08-19 15:02:25 +0000 |
commit | 756e89c8c2a3c30ce3a73ed13724aad1b41a5608 (patch) | |
tree | 0f65e8909417964cfc256849f7a3d741fe82be04 /test | |
parent | f12df0ad507a620daedcab4041d473e40af81eb9 (diff) | |
download | external_llvm-756e89c8c2a3c30ce3a73ed13724aad1b41a5608.zip external_llvm-756e89c8c2a3c30ce3a73ed13724aad1b41a5608.tar.gz external_llvm-756e89c8c2a3c30ce3a73ed13724aad1b41a5608.tar.bz2 |
Thumb2 add immediate alias for SP
The Thumb2 add immediate is in fact defined for SP. The manual is misleading as it points to a different section for add immediate with SP, however the encoding is the same as for add immediate with register only with the SP operand hard coded. As such add immediate with SP and add immediate with register can safely be treated as the same instruction.
All the patch does is adjust a register constraint on an instruction alias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188676 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/MC/ARM/basic-thumb2-instructions.s | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/test/MC/ARM/basic-thumb2-instructions.s b/test/MC/ARM/basic-thumb2-instructions.s index a7f9ac6..59318aa 100644 --- a/test/MC/ARM/basic-thumb2-instructions.s +++ b/test/MC/ARM/basic-thumb2-instructions.s @@ -80,6 +80,7 @@ _func: adds r2, r2, #56 adds r2, #56 add r1, r7, #0xcbcbcbcb + add sp, sp, #0x1fe0000 adds.w r2, #-16 adds.w r2, r2, #-16 @@ -103,6 +104,7 @@ _func: @ CHECK: adds r2, #56 @ encoding: [0x38,0x32] @ CHECK: adds r2, #56 @ encoding: [0x38,0x32] @ CHECK: add.w r1, r7, #3419130827 @ encoding: [0x07,0xf1,0xcb,0x31] +@ CHECK: add.w sp, sp, #33423360 @ encoding: [0x0d,0xf1,0xff,0x7d] @ CHECK: subs.w r2, r2, #16 @ encoding: [0xb2,0xf1,0x10,0x02] @ CHECK: subs.w r2, r2, #16 @ encoding: [0xb2,0xf1,0x10,0x02] |