summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorJack Carter <jack.carter@imgtec.com>2013-08-13 20:19:16 +0000
committerJack Carter <jack.carter@imgtec.com>2013-08-13 20:19:16 +0000
commit9770097727c21d41fe966e7faef69140a72a49b7 (patch)
tree4a3378bd0ca7a5a4552455a7c110d591f69e80fe /llvm/test
parent1be0c73a94c4eb86bc173821a2a4da2d52b9c156 (diff)
downloadbcm5719-llvm-9770097727c21d41fe966e7faef69140a72a49b7.tar.gz
bcm5719-llvm-9770097727c21d41fe966e7faef69140a72a49b7.zip
[Mips] Support for unaligned load/store microMips instructions
This includes instructions lwl, lwr, swl and swr. Patch by Zoran Jovnovic llvm-svn: 188312
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/MC/Mips/micromips-loadstore-unaligned.s26
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/test/MC/Mips/micromips-loadstore-unaligned.s b/llvm/test/MC/Mips/micromips-loadstore-unaligned.s
new file mode 100644
index 00000000000..ab1d8b935a1
--- /dev/null
+++ b/llvm/test/MC/Mips/micromips-loadstore-unaligned.s
@@ -0,0 +1,26 @@
+# RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding \
+# RUN: -mattr=micromips | FileCheck -check-prefix=CHECK-EL %s
+# RUN: llvm-mc %s -triple=mips-unknown-linux -show-encoding \
+# RUN: -mattr=micromips | FileCheck -check-prefix=CHECK-EB %s
+# Check that the assembler can handle the documented syntax
+# for loads and stores.
+#------------------------------------------------------------------------------
+# Load and Store unaligned instructions
+#------------------------------------------------------------------------------
+# Little endian
+#------------------------------------------------------------------------------
+# CHECK-EL: lwl $4, 16($5) # encoding: [0x85,0x60,0x10,0x00]
+# CHECK-EL: lwr $4, 16($5) # encoding: [0x85,0x60,0x10,0x10]
+# CHECK-EL: swl $4, 16($5) # encoding: [0x85,0x60,0x10,0x80]
+# CHECK-EL: swr $4, 16($5) # encoding: [0x85,0x60,0x10,0x90]
+#------------------------------------------------------------------------------
+# Big endian
+#------------------------------------------------------------------------------
+# CHECK-EB: lwl $4, 16($5) # encoding: [0x60,0x85,0x00,0x10]
+# CHECK-EB: lwr $4, 16($5) # encoding: [0x60,0x85,0x10,0x10]
+# CHECK-EB: swl $4, 16($5) # encoding: [0x60,0x85,0x80,0x10]
+# CHECK-EB: swr $4, 16($5) # encoding: [0x60,0x85,0x90,0x10]
+ lwl $4, 16($5)
+ lwr $4, 16($5)
+ swl $4, 16($5)
+ swr $4, 16($5)
OpenPOWER on IntegriCloud