1# RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s 2 3# Test to ensure that all special instructions and special registers can be 4# parsed by the assembly parser correctly. 5 6# TYPE A: OPCODE RD RA RB FLAGS 7# BINARY: 011011 00000 00000 00000 00000000000 8 9# CHECK: mfs 10# BINARY: 100101 00000 00000 10000 00000000000 11# CHECK: encoding: [0x94,0x00,0x80,0x00] 12 mfs r0, rpc 13 14# CHECK: msrclr 15# BINARY: 100101 00000 100010 000000000000000 16# CHECK: encoding: [0x94,0x11,0x00,0x00] 17 msrclr r0, 0x0 18 19# CHECK: msrset 20# BINARY: 100101 00000 100000 000000000000000 21# CHECK: encoding: [0x94,0x10,0x00,0x00] 22 msrset r0, 0x0 23 24# CHECK: mts 25# BINARY: 100101 00000 00000 11 00000000000000 26# CHECK: encoding: [0x94,0x00,0xc0,0x00] 27 mts rpc, r0 28 29# CHECK: wdc 30# BINARY: 100100 00000 00000 00001 00001100100 31# CHECK: encoding: [0x90,0x00,0x08,0x64] 32 wdc r0, r1 33 34# CHECK: wdc.clear 35# BINARY: 100100 00000 00000 00001 00001100110 36# CHECK: encoding: [0x90,0x00,0x08,0x66] 37 wdc.clear r0, r1 38 39# CHECK: wdc.flush 40# BINARY: 100100 00000 00000 00001 00001110100 41# CHECK: encoding: [0x90,0x00,0x08,0x74] 42 wdc.flush r0, r1 43 44# CHECK: wic 45# BINARY: 100100 00000 00000 00001 00001101000 46# CHECK: encoding: [0x90,0x00,0x08,0x68] 47 wic r0, r1 48 49# CHECK: mfs 50# BINARY: 100101 00001 00000 10000 00000000000 51# CHECK: encoding: [0x94,0x20,0x80,0x00] 52 mfs r1, rpc 53 54# CHECK: mfs 55# BINARY: 100101 00001 00000 10000 00000000001 56# CHECK: encoding: [0x94,0x20,0x80,0x01] 57 mfs r1, rmsr 58 59# CHECK: mfs 60# BINARY: 100101 00001 00000 10000 00000000011 61# CHECK: encoding: [0x94,0x20,0x80,0x03] 62 mfs r1, rear 63 64# CHECK: mfs 65# BINARY: 100101 00001 00000 10000 00000000101 66# CHECK: encoding: [0x94,0x20,0x80,0x05] 67 mfs r1, resr 68 69# CHECK: mfs 70# BINARY: 100101 00001 00000 10000 00000000111 71# CHECK: encoding: [0x94,0x20,0x80,0x07] 72 mfs r1, rfsr 73 74# CHECK: mfs 75# BINARY: 100101 00001 00000 10000 00000001011 76# CHECK: encoding: [0x94,0x20,0x80,0x0b] 77 mfs r1, rbtr 78 79# CHECK: mfs 80# BINARY: 100101 00001 00000 10000 00000001101 81# CHECK: encoding: [0x94,0x20,0x80,0x0d] 82 mfs r1, redr 83 84# CHECK: mfs 85# BINARY: 100101 00001 00000 10010 00000000000 86# CHECK: encoding: [0x94,0x20,0x90,0x00] 87 mfs r1, rpid 88 89# CHECK: mfs 90# BINARY: 100101 00001 00000 10010 00000000001 91# CHECK: encoding: [0x94,0x20,0x90,0x01] 92 mfs r1, rzpr 93 94# CHECK: mfs 95# BINARY: 100101 00001 00000 10010 00000000010 96# CHECK: encoding: [0x94,0x20,0x90,0x02] 97 mfs r1, rtlbx 98 99# CHECK: mfs 100# BINARY: 100101 00001 00000 10010 00000000100 101# CHECK: encoding: [0x94,0x20,0x90,0x04] 102 mfs r1, rtlbhi 103 104# CHECK: mfs 105# BINARY: 100101 00001 00000 10010 00000000011 106# CHECK: encoding: [0x94,0x20,0x90,0x03] 107 mfs r1, rtlblo 108 109# CHECK: mfs 110# BINARY: 100101 00001 00000 10100 00000000000 111# CHECK: encoding: [0x94,0x20,0xa0,0x00] 112 mfs r1, rpvr0 113 114# CHECK: mfs 115# BINARY: 100101 00001 00000 10100 00000000001 116# CHECK: encoding: [0x94,0x20,0xa0,0x01] 117 mfs r1, rpvr1 118 119# CHECK: mfs 120# BINARY: 100101 00001 00000 10100 00000000010 121# CHECK: encoding: [0x94,0x20,0xa0,0x02] 122 mfs r1, rpvr2 123 124# CHECK: mfs 125# BINARY: 100101 00001 00000 10100 00000000011 126# CHECK: encoding: [0x94,0x20,0xa0,0x03] 127 mfs r1, rpvr3 128 129# CHECK: mfs 130# BINARY: 100101 00001 00000 10100 00000000100 131# CHECK: encoding: [0x94,0x20,0xa0,0x04] 132 mfs r1, rpvr4 133 134# CHECK: mfs 135# BINARY: 100101 00001 00000 10100 00000000101 136# CHECK: encoding: [0x94,0x20,0xa0,0x05] 137 mfs r1, rpvr5 138 139# CHECK: mfs 140# BINARY: 100101 00001 00000 10100 00000000110 141# CHECK: encoding: [0x94,0x20,0xa0,0x06] 142 mfs r1, rpvr6 143 144# CHECK: mfs 145# BINARY: 100101 00001 00000 10100 00000000111 146# CHECK: encoding: [0x94,0x20,0xa0,0x07] 147 mfs r1, rpvr7 148 149# CHECK: mfs 150# BINARY: 100101 00001 00000 10100 00000001000 151# CHECK: encoding: [0x94,0x20,0xa0,0x08] 152 mfs r1, rpvr8 153 154# CHECK: mfs 155# BINARY: 100101 00001 00000 10100 00000001001 156# CHECK: encoding: [0x94,0x20,0xa0,0x09] 157 mfs r1, rpvr9 158 159# CHECK: mfs 160# BINARY: 100101 00001 00000 10100 00000001010 161# CHECK: encoding: [0x94,0x20,0xa0,0x0a] 162 mfs r1, rpvr10 163 164# CHECK: mfs 165# BINARY: 100101 00001 00000 10100 00000001011 166# CHECK: encoding: [0x94,0x20,0xa0,0x0b] 167 mfs r1, rpvr11 168