aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC/Mips
diff options
context:
space:
mode:
authorVladimir Medic <Vladimir.Medic@imgtec.com>2013-09-06 13:08:00 +0000
committerVladimir Medic <Vladimir.Medic@imgtec.com>2013-09-06 13:08:00 +0000
commit638382e6f169649eb86fa47a6ea25dd932f07689 (patch)
tree07526bd2d49ea0ecd7b91d5a3398d478280da78c /test/MC/Mips
parent3aaa3e31aa35164fa54474bcf3a2c2df5ab8b375 (diff)
downloadexternal_llvm-638382e6f169649eb86fa47a6ea25dd932f07689.zip
external_llvm-638382e6f169649eb86fa47a6ea25dd932f07689.tar.gz
external_llvm-638382e6f169649eb86fa47a6ea25dd932f07689.tar.bz2
This patch adds support for microMIPS Multiply and Add/Sub instructions. Test cases are included in patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190154 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/Mips')
-rw-r--r--test/MC/Mips/micromips-multiply-instructions.s26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/MC/Mips/micromips-multiply-instructions.s b/test/MC/Mips/micromips-multiply-instructions.s
new file mode 100644
index 0000000..7c3c518
--- /dev/null
+++ b/test/MC/Mips/micromips-multiply-instructions.s
@@ -0,0 +1,26 @@
+# RUN: llvm-mc %s -triple=mipsel -show-encoding -mattr=micromips \
+# RUN: | FileCheck -check-prefix=CHECK-EL %s
+# RUN: llvm-mc %s -triple=mips -show-encoding -mattr=micromips \
+# RUN: | FileCheck -check-prefix=CHECK-EB %s
+# Check that the assembler can handle the documented syntax
+# for Multiply Add/Sub instructions.
+#------------------------------------------------------------------------------
+# Multiply Add/Sub Instructions
+#------------------------------------------------------------------------------
+# Little endian
+#------------------------------------------------------------------------------
+# CHECK-EL: madd $4, $5 # encoding: [0xa4,0x00,0x3c,0xcb]
+# CHECK-EL: maddu $4, $5 # encoding: [0xa4,0x00,0x3c,0xdb]
+# CHECK-EL: msub $4, $5 # encoding: [0xa4,0x00,0x3c,0xeb]
+# CHECK-EL: msubu $4, $5 # encoding: [0xa4,0x00,0x3c,0xfb]
+#------------------------------------------------------------------------------
+# Big endian
+#------------------------------------------------------------------------------
+# CHECK-EB: madd $4, $5 # encoding: [0x00,0xa4,0xcb,0x3c]
+# CHECK-EB: maddu $4, $5 # encoding: [0x00,0xa4,0xdb,0x3c]
+# CHECK-EB: msub $4, $5 # encoding: [0x00,0xa4,0xeb,0x3c]
+# CHECK-EB: msubu $4, $5 # encoding: [0x00,0xa4,0xfb,0x3c]
+ madd $4, $5
+ maddu $4, $5
+ msub $4, $5
+ msubu $4, $5