1 # RUN: not llvm-mc %s -triple=mipsel-unknown-linux -mcpu=mips32r2 -mattr=+msa -arch=mips -mattr=+micromips 2>&1 | FileCheck %s 2 # 3 # CHECK: error: branch to misaligned address 4 # CHECK: b -65535 5 # CHECK: error: branch target out of range 6 # CHECK: b -65537 7 # CHECK: error: branch to misaligned address 8 # CHECK: b 65535 9 # CHECK: error: branch target out of range 10 # CHECK: b 65536 11 12 # CHECK: error: branch to misaligned address 13 # CHECK: beq $1, $1, -65535 14 # CHECK: error: branch target out of range 15 # CHECK: beq $1, $1, -65537 16 # CHECK: error: branch to misaligned address 17 # CHECK: beq $1, $1, 65535 18 # CHECK: error: branch target out of range 19 # CHECK: beq $1, $1, 65536 20 21 # CHECK: error: branch to misaligned address 22 # CHECK: bne $1, $1, -65535 23 # CHECK: error: branch target out of range 24 # CHECK: bne $1, $1, -65537 25 # CHECK: error: branch to misaligned address 26 # CHECK: bne $1, $1, 65535 27 # CHECK: error: branch target out of range 28 # CHECK: bne $1, $1, 65536 29 30 # CHECK: error: branch to misaligned address 31 # CHECK: bal -65535 32 # CHECK: error: branch target out of range 33 # CHECK: bal -65537 34 # CHECK: error: branch to misaligned address 35 # CHECK: bal 65535 36 # CHECK: error: branch target out of range 37 # CHECK: bal 65536 38 39 # CHECK: error: branch to misaligned address 40 # CHECK: bgez $1, -65535 41 # CHECK: error: branch target out of range 42 # CHECK: bgez $1, -65537 43 # CHECK: error: branch to misaligned address 44 # CHECK: bgez $1, 65535 45 # CHECK: error: branch target out of range 46 # CHECK: bgez $1, 65536 47 48 # CHECK: error: branch to misaligned address 49 # CHECK: bgtz $1, -65535 50 # CHECK: error: branch target out of range 51 # CHECK: bgtz $1, -65537 52 # CHECK: error: branch to misaligned address 53 # CHECK: bgtz $1, 65535 54 # CHECK: error: branch target out of range 55 # CHECK: bgtz $1, 65536 56 57 # CHECK: error: branch to misaligned address 58 # CHECK: blez $1, -65535 59 # CHECK: error: branch target out of range 60 # CHECK: blez $1, -65537 61 # CHECK: error: branch to misaligned address 62 # CHECK: blez $1, 65535 63 # CHECK: error: branch target out of range 64 # CHECK: blez $1, 65536 65 66 # CHECK: error: branch to misaligned address 67 # CHECK: bltz $1, -65535 68 # CHECK: error: branch target out of range 69 # CHECK: bltz $1, -65537 70 # CHECK: error: branch to misaligned address 71 # CHECK: bltz $1, 65535 72 # CHECK: error: branch target out of range 73 # CHECK: bltz $1, 65536 74 75 # CHECK: error: branch to misaligned address 76 # CHECK: bgezal $1, -65535 77 # CHECK: error: branch target out of range 78 # CHECK: bgezal $1, -65537 79 # CHECK: error: branch to misaligned address 80 # CHECK: bgezal $1, 65535 81 # CHECK: error: branch target out of range 82 # CHECK: bgezal $1, 65536 83 84 # CHECK: error: branch to misaligned address 85 # CHECK: bltzal $1, -65535 86 # CHECK: error: branch target out of range 87 # CHECK: bltzal $1, -65537 88 # CHECK: error: branch to misaligned address 89 # CHECK: bltzal $1, 65535 90 # CHECK: error: branch target out of range 91 # CHECK: bltzal $1, 65536 92 93 # CHECK: error: branch to misaligned address 94 # CHECK: bc1f -65535 95 # CHECK: error: branch target out of range 96 # CHECK: bc1f -65537 97 # CHECK: error: branch to misaligned address 98 # CHECK: bc1f 65535 99 # CHECK: error: branch target out of range 100 # CHECK: bc1f 65536 101 102 # CHECK: error: branch to misaligned address 103 # CHECK: bc1f $fcc0, -65535 104 # CHECK: error: branch target out of range 105 # CHECK: bc1f $fcc0, -65537 106 # CHECK: error: branch to misaligned address 107 # CHECK: bc1f $fcc0, 65535 108 # CHECK: error: branch target out of range 109 # CHECK: bc1f $fcc0, 65536 110 111 # CHECK: error: branch to misaligned address 112 # CHECK: bc1t -65535 113 # CHECK: error: branch target out of range 114 # CHECK: bc1t -65537 115 # CHECK: error: branch to misaligned address 116 # CHECK: bc1t 65535 117 # CHECK: error: branch target out of range 118 # CHECK: bc1t 65536 119 120 # CHECK: error: branch to misaligned address 121 # CHECK: bc1t $fcc0, -65535 122 # CHECK: error: branch target out of range 123 # CHECK: bc1t $fcc0, -65537 124 # CHECK: error: branch to misaligned address 125 # CHECK: bc1t $fcc0, 65535 126 # CHECK: error: branch target out of range 127 # CHECK: bc1t $fcc0, 65536 128 129 b -65535 130 b -65536 131 b -65537 132 b 65534 133 b 65535 134 b 65536 135 136 beq $1, $1, -65535 137 beq $1, $1, -65536 138 beq $1, $1, -65537 139 beq $1, $1, 65534 140 beq $1, $1, 65535 141 beq $1, $1, 65536 142 143 bne $1, $1, -65535 144 bne $1, $1, -65536 145 bne $1, $1, -65537 146 bne $1, $1, 65534 147 bne $1, $1, 65535 148 bne $1, $1, 65536 149 150 bal -65535 151 bal -65536 152 bal -65537 153 bal 65534 154 bal 65535 155 bal 65536 156 157 bgez $1, -65535 158 bgez $1, -65536 159 bgez $1, -65537 160 bgez $1, 65534 161 bgez $1, 65535 162 bgez $1, 65536 163 164 bgtz $1, -65535 165 bgtz $1, -65536 166 bgtz $1, -65537 167 bgtz $1, 65534 168 bgtz $1, 65535 169 bgtz $1, 65536 170 171 blez $1, -65535 172 blez $1, -65536 173 blez $1, -65537 174 blez $1, 65534 175 blez $1, 65535 176 blez $1, 65536 177 178 bltz $1, -65535 179 bltz $1, -65536 180 bltz $1, -65537 181 bltz $1, 65534 182 bltz $1, 65535 183 bltz $1, 65536 184 185 bgezal $1, -65535 186 bgezal $1, -65536 187 bgezal $1, -65537 188 bgezal $1, 65534 189 bgezal $1, 65535 190 bgezal $1, 65536 191 192 bltzal $1, -65535 193 bltzal $1, -65536 194 bltzal $1, -65537 195 bltzal $1, 65534 196 bltzal $1, 65535 197 bltzal $1, 65536 198 199 bc1f -65535 200 bc1f -65536 201 bc1f -65537 202 bc1f 65534 203 bc1f 65535 204 bc1f 65536 205 206 bc1f $fcc0, -65535 207 bc1f $fcc0, -65536 208 bc1f $fcc0, -65537 209 bc1f $fcc0, 65534 210 bc1f $fcc0, 65535 211 bc1f $fcc0, 65536 212 213 bc1t -65535 214 bc1t -65536 215 bc1t -65537 216 bc1t 65534 217 bc1t 65535 218 bc1t 65536 219 220 bc1t $fcc0, -65535 221 bc1t $fcc0, -65536 222 bc1t $fcc0, -65537 223 bc1t $fcc0, 65534 224 bc1t $fcc0, 65535 225 bc1t $fcc0, 65536 226