summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorRenato Golin <renato.golin@linaro.org>2016-07-27 12:15:26 +0000
committerRenato Golin <renato.golin@linaro.org>2016-07-27 12:15:26 +0000
commitb9edb5c9b084017f2691b82175ada266dc189dec (patch)
tree73fbce96bc31b9b4c542deedf0ef9bb645e810eb /llvm/test
parent3839263204a107b7befe498bdd8ee617b20808c9 (diff)
downloadbcm5719-llvm-b9edb5c9b084017f2691b82175ada266dc189dec.tar.gz
bcm5719-llvm-b9edb5c9b084017f2691b82175ada266dc189dec.zip
[ARM] Adds test for immediate encoding
The encoding of expressions as immediates wasn't correct, and was reported in PR23000. However, we have done some refactoring on how immediates are handled and now it seems the problem is fixed. This is a test just to make sure it won't regress again. llvm-svn: 276858
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/MC/ARM/sub-expr-imm.s29
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/test/MC/ARM/sub-expr-imm.s b/llvm/test/MC/ARM/sub-expr-imm.s
new file mode 100644
index 00000000000..73011896842
--- /dev/null
+++ b/llvm/test/MC/ARM/sub-expr-imm.s
@@ -0,0 +1,29 @@
+@ RUN: llvm-mc < %s -triple armv7-unknown-unknown -filetype=obj | llvm-objdump -d - | FileCheck %s
+
+@ Test that makes sure both label and immediate expression
+@ are evaluated to the same values.
+
+AES_Te:
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+ .word 1,2,3,4,5,6
+@ CHECK: AES_encrypt:
+AES_encrypt:
+@ CHECK: sub r10, r3, #264
+ sub r10,r3,#(AES_encrypt-AES_Te)
+@ CHECK: sub r10, r3, #264
+ sub r10,r3,#(6*11*4)
+Data:
+@ CHECK: 08 01 00 00
+ .word (AES_encrypt-AES_Te)
+@ CHECK: 08 01 00 00
+ .word (6*11*4)
+
OpenPOWER on IntegriCloud