Home | History | Annotate | Download | only in MBlaze
      1 # RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s
      2 
      3 # Test to make sure that all of the TYPE-A instructions supported by
      4 # the Microblaze can be parsed by the assembly parser.
      5 
      6 # TYPE A:   OPCODE RD    RA    RB    FLAGS
      7 # BINARY:   000000 00000 00000 00000 00000000000
      8 
      9 # CHECK:    beq
     10 # BINARY:   100111 00000 00010 00011 00000000000
     11 # CHECK:    encoding: [0x9c,0x02,0x18,0x00]
     12             beq     r2, r3
     13 
     14 # CHECK:    bge
     15 # BINARY:   100111 00101 00010 00011 00000000000
     16 # CHECK:    encoding: [0x9c,0xa2,0x18,0x00]
     17             bge     r2, r3
     18 
     19 # CHECK:    bgt
     20 # BINARY:   100111 00100 00010 00011 00000000000
     21 # CHECK:    encoding: [0x9c,0x82,0x18,0x00]
     22             bgt     r2, r3
     23 
     24 # CHECK:    ble
     25 # BINARY:   100111 00011 00010 00011 00000000000
     26 # CHECK:    encoding: [0x9c,0x62,0x18,0x00]
     27             ble     r2, r3
     28 
     29 # CHECK:    blt
     30 # BINARY:   100111 00010 00010 00011 00000000000
     31 # CHECK:    encoding: [0x9c,0x42,0x18,0x00]
     32             blt     r2, r3
     33 
     34 # CHECK:    bne
     35 # BINARY:   100111 00001 00010 00011 00000000000
     36 # CHECK:    encoding: [0x9c,0x22,0x18,0x00]
     37             bne     r2, r3
     38 
     39 # CHECK:    beqd
     40 # BINARY:   100111 10000 00010 00011 00000000000
     41 # CHECK:    encoding: [0x9e,0x02,0x18,0x00]
     42             beqd    r2, r3
     43 
     44 # CHECK:    bged
     45 # BINARY:   100111 10101 00010 00011 00000000000
     46 # CHECK:    encoding: [0x9e,0xa2,0x18,0x00]
     47             bged    r2, r3
     48 
     49 # CHECK:    bgtd
     50 # BINARY:   100111 10100 00010 00011 00000000000
     51 # CHECK:    encoding: [0x9e,0x82,0x18,0x00]
     52             bgtd    r2, r3
     53 
     54 # CHECK:    bled
     55 # BINARY:   100111 10011 00010 00011 00000000000
     56 # CHECK:    encoding: [0x9e,0x62,0x18,0x00]
     57             bled    r2, r3
     58 
     59 # CHECK:    bltd
     60 # BINARY:   100111 10010 00010 00011 00000000000
     61 # CHECK:    encoding: [0x9e,0x42,0x18,0x00]
     62             bltd    r2, r3
     63 
     64 # CHECK:    bned
     65 # BINARY:   100111 10001 00010 00011 00000000000
     66 # CHECK:    encoding: [0x9e,0x22,0x18,0x00]
     67             bned    r2, r3
     68 
     69 # CHECK:    br
     70 # BINARY:   100110 00000 00000 00011 00000000000
     71 # CHECK:    encoding: [0x98,0x00,0x18,0x00]
     72             br      r3
     73 
     74 # CHECK:    bra
     75 # BINARY:   100110 00000 01000 00011 00000000000
     76 # CHECK:    encoding: [0x98,0x08,0x18,0x00]
     77             bra     r3
     78 
     79 # CHECK:    brd
     80 # BINARY:   100110 00000 10000 00011 00000000000
     81 # CHECK:    encoding: [0x98,0x10,0x18,0x00]
     82             brd     r3
     83 
     84 # CHECK:    brad
     85 # BINARY:   100110 00000 11000 00011 00000000000
     86 # CHECK:    encoding: [0x98,0x18,0x18,0x00]
     87             brad    r3
     88 
     89 # CHECK:    brld
     90 # BINARY:   100110 01111 10100 00011 00000000000
     91 # CHECK:    encoding: [0x99,0xf4,0x18,0x00]
     92             brld    r15, r3
     93 
     94 # CHECK:    brald
     95 # BINARY:   100110 01111 11100 00011 00000000000
     96 # CHECK:    encoding: [0x99,0xfc,0x18,0x00]
     97             brald   r15, r3
     98 
     99 # CHECK:    brk
    100 # BINARY:   100110 01111 01100 00011 00000000000
    101 # CHECK:    encoding: [0x99,0xec,0x18,0x00]
    102             brk     r15, r3
    103 
    104 # CHECK:    beqi
    105 # BINARY:   101111 00000 00010 0000000000000000
    106 # CHECK:    encoding: [0xbc,0x02,0x00,0x00]
    107             beqi    r2, 0
    108 
    109 # CHECK:    bgei
    110 # BINARY:   101111 00101 00010 0000000000000000
    111 # CHECK:    encoding: [0xbc,0xa2,0x00,0x00]
    112             bgei    r2, 0
    113 
    114 # CHECK:    bgti
    115 # BINARY:   101111 00100 00010 0000000000000000
    116 # CHECK:    encoding: [0xbc,0x82,0x00,0x00]
    117             bgti    r2, 0
    118 
    119 # CHECK:    blei
    120 # BINARY:   101111 00011 00010 0000000000000000
    121 # CHECK:    encoding: [0xbc,0x62,0x00,0x00]
    122             blei    r2, 0
    123 
    124 # CHECK:    blti
    125 # BINARY:   101111 00010 00010 0000000000000000
    126 # CHECK:    encoding: [0xbc,0x42,0x00,0x00]
    127             blti    r2, 0
    128 
    129 # CHECK:    bnei
    130 # BINARY:   101111 00001 00010 0000000000000000
    131 # CHECK:    encoding: [0xbc,0x22,0x00,0x00]
    132             bnei    r2, 0
    133 
    134 # CHECK:    beqid
    135 # BINARY:   101111 10000 00010 0000000000000000
    136 # CHECK:    encoding: [0xbe,0x02,0x00,0x00]
    137             beqid   r2, 0
    138 
    139 # CHECK:    bgeid
    140 # BINARY:   101111 10101 00010 0000000000000000
    141 # CHECK:    encoding: [0xbe,0xa2,0x00,0x00]
    142             bgeid   r2, 0
    143 
    144 # CHECK:    bgtid
    145 # BINARY:   101111 10100 00010 0000000000000000
    146 # CHECK:    encoding: [0xbe,0x82,0x00,0x00]
    147             bgtid   r2, 0
    148 
    149 # CHECK:    bleid
    150 # BINARY:   101111 10011 00010 0000000000000000
    151 # CHECK:    encoding: [0xbe,0x62,0x00,0x00]
    152             bleid   r2, 0
    153 
    154 # CHECK:    bltid
    155 # BINARY:   101111 10010 00010 0000000000000000
    156 # CHECK:    encoding: [0xbe,0x42,0x00,0x00]
    157             bltid   r2, 0
    158 
    159 # CHECK:    bneid
    160 # BINARY:   101111 10001 00010 0000000000000000
    161 # CHECK:    encoding: [0xbe,0x22,0x00,0x00]
    162             bneid   r2, 0
    163 
    164 # CHECK:    bri
    165 # BINARY:   101110 00000 00000 0000000000000000
    166 # CHECK:    encoding: [0xb8,0x00,0x00,0x00]
    167             bri     0
    168 
    169 # CHECK:    brai
    170 # BINARY:   101110 00000 01000 0000000000000000
    171 # CHECK:    encoding: [0xb8,0x08,0x00,0x00]
    172             brai    0
    173 
    174 # CHECK:    brid
    175 # BINARY:   101110 00000 10000 0000000000000000
    176 # CHECK:    encoding: [0xb8,0x10,0x00,0x00]
    177             brid    0
    178 
    179 # CHECK:    braid
    180 # BINARY:   101110 00000 11000 0000000000000000
    181 # CHECK:    encoding: [0xb8,0x18,0x00,0x00]
    182             braid   0
    183 
    184 # CHECK:    brlid
    185 # BINARY:   101110 01111 10100 0000000000000000
    186 # CHECK:    encoding: [0xb9,0xf4,0x00,0x00]
    187             brlid   r15, 0
    188 
    189 # CHECK:    bralid
    190 # BINARY:   101110 01111 11100 0000000000000000
    191 # CHECK:    encoding: [0xb9,0xfc,0x00,0x00]
    192             bralid  r15, 0
    193 
    194 # CHECK:    brki
    195 # BINARY:   101110 01111 01100 0000000000000000
    196 # CHECK:    encoding: [0xb9,0xec,0x00,0x00]
    197             brki    r15, 0
    198