summaryrefslogtreecommitdiff
path: root/test/MC/MBlaze
diff options
context:
space:
mode:
authorWesley Peck <peckw@wesleypeck.com>2010-12-20 20:43:24 +0000
committerWesley Peck <peckw@wesleypeck.com>2010-12-20 20:43:24 +0000
commit9c0068f0a38597a5914b69a5e1b5a949027a5464 (patch)
treee35f37d75212e1c069efc1cf13e1510188ad3a11 /test/MC/MBlaze
parent025cc6e1be4cc3d780f10bb9ec92eba831a45f79 (diff)
downloadllvm-9c0068f0a38597a5914b69a5e1b5a949027a5464.tar.gz
llvm-9c0068f0a38597a5914b69a5e1b5a949027a5464.tar.bz2
llvm-9c0068f0a38597a5914b69a5e1b5a949027a5464.tar.xz
Teach the MBlaze asm parser how to parse special purpose register names.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122261 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/MC/MBlaze')
-rw-r--r--test/MC/MBlaze/mblaze_special.s128
1 files changed, 124 insertions, 4 deletions
diff --git a/test/MC/MBlaze/mblaze_special.s b/test/MC/MBlaze/mblaze_special.s
index 739caf4e43..c55ec277c1 100644
--- a/test/MC/MBlaze/mblaze_special.s
+++ b/test/MC/MBlaze/mblaze_special.s
@@ -1,7 +1,7 @@
# RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s
-# Test to ensure that all FPU instructions can be parsed by the
-# assembly parser correctly.
+# Test to ensure that all special instructions and special registers can be
+# parsed by the assembly parser correctly.
# TYPE A: OPCODE RD RA RB FLAGS
# BINARY: 011011 00000 00000 00000 00000000000
@@ -9,7 +9,7 @@
# CHECK: mfs
# BINARY: 100101 00000 00000 10000 00000000000
# CHECK: encoding: [0x94,0x00,0x80,0x00]
- mfs r0, 0x0
+ mfs r0, rpc
# CHECK: msrclr
# BINARY: 100101 00000 100010 000000000000000
@@ -24,7 +24,7 @@
# CHECK: mts
# BINARY: 100101 00000 00000 11 00000000000000
# CHECK: encoding: [0x94,0x00,0xc0,0x00]
- mts 0x0 , r0
+ mts rpc, r0
# CHECK: wdc
# BINARY: 100100 00000 00000 00001 00001100100
@@ -45,3 +45,123 @@
# BINARY: 100100 00000 00000 00001 00001101000
# CHECK: encoding: [0x90,0x00,0x08,0x68]
wic r0, r1
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000000000
+# CHECK: encoding: [0x94,0x20,0x80,0x00]
+ mfs r1, rpc
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000000001
+# CHECK: encoding: [0x94,0x20,0x80,0x01]
+ mfs r1, rmsr
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000000011
+# CHECK: encoding: [0x94,0x20,0x80,0x03]
+ mfs r1, rear
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000000101
+# CHECK: encoding: [0x94,0x20,0x80,0x05]
+ mfs r1, resr
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000000111
+# CHECK: encoding: [0x94,0x20,0x80,0x07]
+ mfs r1, rfsr
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000001011
+# CHECK: encoding: [0x94,0x20,0x80,0x0b]
+ mfs r1, rbtr
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10000 00000001101
+# CHECK: encoding: [0x94,0x20,0x80,0x0d]
+ mfs r1, redr
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10010 00000000000
+# CHECK: encoding: [0x94,0x20,0x90,0x00]
+ mfs r1, rpid
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10010 00000000001
+# CHECK: encoding: [0x94,0x20,0x90,0x01]
+ mfs r1, rzpr
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10010 00000000010
+# CHECK: encoding: [0x94,0x20,0x90,0x02]
+ mfs r1, rtlbx
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10010 00000000100
+# CHECK: encoding: [0x94,0x20,0x90,0x04]
+ mfs r1, rtlbhi
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10010 00000000011
+# CHECK: encoding: [0x94,0x20,0x90,0x03]
+ mfs r1, rtlblo
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000000
+# CHECK: encoding: [0x94,0x20,0xa0,0x00]
+ mfs r1, rpvr0
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000001
+# CHECK: encoding: [0x94,0x20,0xa0,0x01]
+ mfs r1, rpvr1
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000010
+# CHECK: encoding: [0x94,0x20,0xa0,0x02]
+ mfs r1, rpvr2
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000011
+# CHECK: encoding: [0x94,0x20,0xa0,0x03]
+ mfs r1, rpvr3
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000100
+# CHECK: encoding: [0x94,0x20,0xa0,0x04]
+ mfs r1, rpvr4
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000101
+# CHECK: encoding: [0x94,0x20,0xa0,0x05]
+ mfs r1, rpvr5
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000110
+# CHECK: encoding: [0x94,0x20,0xa0,0x06]
+ mfs r1, rpvr6
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000000111
+# CHECK: encoding: [0x94,0x20,0xa0,0x07]
+ mfs r1, rpvr7
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000001000
+# CHECK: encoding: [0x94,0x20,0xa0,0x08]
+ mfs r1, rpvr8
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000001001
+# CHECK: encoding: [0x94,0x20,0xa0,0x09]
+ mfs r1, rpvr9
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000001010
+# CHECK: encoding: [0x94,0x20,0xa0,0x0a]
+ mfs r1, rpvr10
+
+# CHECK: mfs
+# BINARY: 100101 00001 00000 10100 00000001011
+# CHECK: encoding: [0x94,0x20,0xa0,0x0b]
+ mfs r1, rpvr11