419 lines · plain
1! RUN: llvm-mc %s -triple=sparc -show-encoding | FileCheck %s2! RUN: llvm-mc %s -triple=sparcv9 -show-encoding | FileCheck %s3 4 ! CHECK: call foo ! encoding: [0b01AAAAAA,A,A,A]5 call foo6 7 ! CHECK: call foo, 0 ! encoding: [0b01AAAAAA,A,A,A]8 call foo, 09 10 ! CHECK: call %g1+%i2 ! encoding: [0x9f,0xc0,0x40,0x1a]11 call %g1 + %i212 13 ! CHECK: call %g1+%i2, 1 ! encoding: [0x9f,0xc0,0x40,0x1a]14 call %g1 + %i2, 115 16 ! CHECK: call %o1+8 ! encoding: [0x9f,0xc2,0x60,0x08]17 call %o1 + 818 19 ! CHECK: call %o1+8, 2 ! encoding: [0x9f,0xc2,0x60,0x08]20 call %o1 + 8, 221 22 ! CHECK: call %g1 ! encoding: [0x9f,0xc0,0x40,0x00]23 call %g124 25 ! CHECK: call %g1, 3 ! encoding: [0x9f,0xc0,0x40,0x00]26 call %g1, 327 28 ! CHECK: call %g1+%lo(sym) ! encoding: [0x9f,0xc0,0b011000AA,A]29 call %g1+%lo(sym)30 31 ! CHECK: call %g1+%lo(sym), 4 ! encoding: [0x9f,0xc0,0b011000AA,A]32 call %g1+%lo(sym), 433 34 ! CHECK-LABEL: .Ltmp0:35 ! CHECK: call .Ltmp0-4 ! encoding: [0b01AAAAAA,A,A,A]36 call . - 437 38 ! CHECK-LABEL: .Ltmp1:39 ! CHECK: call .Ltmp1-4, 5 ! encoding: [0b01AAAAAA,A,A,A]40 call . - 4, 541 42 ! CHECK: jmp %g1+%i2 ! encoding: [0x81,0xc0,0x40,0x1a]43 jmp %g1 + %i244 45 ! CHECK: jmp %o1+8 ! encoding: [0x81,0xc2,0x60,0x08]46 jmp %o1 + 847 48 ! CHECK: jmp %g1 ! encoding: [0x81,0xc0,0x40,0x00]49 jmp %g150 51 ! CHECK: jmp %g1+%lo(sym) ! encoding: [0x81,0xc0,0b011000AA,A]52 jmp %g1+%lo(sym)53 54 ! CHECK: jmp sym ! encoding: [0x81,0xc0,0b001AAAAA,A]55 jmp sym56 57 ! CHECK: jmpl %g1+%i2, %g2 ! encoding: [0x85,0xc0,0x40,0x1a]58 jmpl %g1 + %i2, %g259 60 ! CHECK: jmpl %o1+8, %g2 ! encoding: [0x85,0xc2,0x60,0x08]61 jmpl %o1 + 8, %g262 63 ! CHECK: jmpl %g1, %g2 ! encoding: [0x85,0xc0,0x40,0x00]64 jmpl %g1, %g265 66 ! CHECK: jmpl %g1+%lo(sym), %g2 ! encoding: [0x85,0xc0,0b011000AA,A]67 jmpl %g1+%lo(sym), %g268 69 ! CHECK: ba .BB0 ! encoding: [0x10,0b10AAAAAA,A,A]70 ba .BB071 72 ! CHECK: bne .BB0 ! encoding: [0x12,0b10AAAAAA,A,A]73 bne .BB074 75 ! CHECK: bne .BB0 ! encoding: [0x12,0b10AAAAAA,A,A]76 bnz .BB077 78 ! CHECK: be .BB0 ! encoding: [0x02,0b10AAAAAA,A,A]79 be .BB080 81 ! CHECK: be .BB0 ! encoding: [0x02,0b10AAAAAA,A,A]82 bz .BB083 84 ! CHECK: be .BB0 ! encoding: [0x02,0b10AAAAAA,A,A]85 beq .BB086 87 ! CHECK: bg .BB0 ! encoding: [0x14,0b10AAAAAA,A,A]88 bg .BB089 90 ! CHECK: bg .BB0 ! encoding: [0x14,0b10AAAAAA,A,A]91 bgt .BB092 93 ! CHECK: ble .BB0 ! encoding: [0x04,0b10AAAAAA,A,A]94 ble .BB095 96 ! CHECK: bge .BB0 ! encoding: [0x16,0b10AAAAAA,A,A]97 bge .BB098 99 ! CHECK: bl .BB0 ! encoding: [0x06,0b10AAAAAA,A,A]100 bl .BB0101 102 ! CHECK: bl .BB0 ! encoding: [0x06,0b10AAAAAA,A,A]103 blt .BB0104 105 ! CHECK: bgu .BB0 ! encoding: [0x18,0b10AAAAAA,A,A]106 bgu .BB0107 108 ! CHECK: bleu .BB0 ! encoding: [0x08,0b10AAAAAA,A,A]109 bleu .BB0110 111 ! CHECK: bcc .BB0 ! encoding: [0x1a,0b10AAAAAA,A,A]112 bcc .BB0113 114 ! CHECK: bcc .BB0 ! encoding: [0x1a,0b10AAAAAA,A,A]115 bgeu .BB0116 117 ! CHECK: bcs .BB0 ! encoding: [0x0a,0b10AAAAAA,A,A]118 bcs .BB0119 120 ! CHECK: bcs .BB0 ! encoding: [0x0a,0b10AAAAAA,A,A]121 blu .BB0122 123 ! CHECK: bpos .BB0 ! encoding: [0x1c,0b10AAAAAA,A,A]124 bpos .BB0125 126 ! CHECK: bneg .BB0 ! encoding: [0x0c,0b10AAAAAA,A,A]127 bneg .BB0128 129 ! CHECK: bvc .BB0 ! encoding: [0x1e,0b10AAAAAA,A,A]130 bvc .BB0131 132 ! CHECK: bvs .BB0 ! encoding: [0x0e,0b10AAAAAA,A,A]133 bvs .BB0134 135 ! CHECK: fba .BB0 ! encoding: [0x11,0b10AAAAAA,A,A]136 fba .BB0137 138 ! CHECK: fba .BB0 ! encoding: [0x11,0b10AAAAAA,A,A]139 fb .BB0140 141 ! CHECK: fbn .BB0 ! encoding: [0x01,0b10AAAAAA,A,A]142 fbn .BB0143 144 ! CHECK: fbu .BB0 ! encoding: [0x0f,0b10AAAAAA,A,A]145 fbu .BB0146 147 ! CHECK: fbg .BB0 ! encoding: [0x0d,0b10AAAAAA,A,A]148 fbg .BB0149 150 ! CHECK: fbug .BB0 ! encoding: [0x0b,0b10AAAAAA,A,A]151 fbug .BB0152 153 ! CHECK: fbl .BB0 ! encoding: [0x09,0b10AAAAAA,A,A]154 fbl .BB0155 156 ! CHECK: fbul .BB0 ! encoding: [0x07,0b10AAAAAA,A,A]157 fbul .BB0158 159 ! CHECK: fblg .BB0 ! encoding: [0x05,0b10AAAAAA,A,A]160 fblg .BB0161 162 ! CHECK: fbne .BB0 ! encoding: [0x03,0b10AAAAAA,A,A]163 fbne .BB0164 165 ! CHECK: fbne .BB0 ! encoding: [0x03,0b10AAAAAA,A,A]166 fbnz .BB0167 168 ! CHECK: fbe .BB0 ! encoding: [0x13,0b10AAAAAA,A,A]169 fbe .BB0170 171 ! CHECK: fbe .BB0 ! encoding: [0x13,0b10AAAAAA,A,A]172 fbz .BB0173 174 ! CHECK: fbue .BB0 ! encoding: [0x15,0b10AAAAAA,A,A]175 fbue .BB0176 177 ! CHECK: fbge .BB0 ! encoding: [0x17,0b10AAAAAA,A,A]178 fbge .BB0179 180 ! CHECK: fbuge .BB0 ! encoding: [0x19,0b10AAAAAA,A,A]181 fbuge .BB0182 183 ! CHECK: fble .BB0 ! encoding: [0x1b,0b10AAAAAA,A,A]184 fble .BB0185 186 ! CHECK: fbule .BB0 ! encoding: [0x1d,0b10AAAAAA,A,A]187 fbule .BB0188 189 ! CHECK: fbo .BB0 ! encoding: [0x1f,0b10AAAAAA,A,A]190 fbo .BB0191 192 ! CHECK: cba .BB0 ! encoding: [0x11,0b11AAAAAA,A,A]193 cb .BB0194 195 ! CHECK: cba .BB0 ! encoding: [0x11,0b11AAAAAA,A,A]196 cba .BB0197 198 ! CHECK: cbn .BB0 ! encoding: [0x01,0b11AAAAAA,A,A]199 cbn .BB0200 201 ! CHECK: cb3 .BB0 ! encoding: [0x0f,0b11AAAAAA,A,A]202 cb3 .BB0203 204 ! CHECK: cb2 .BB0 ! encoding: [0x0d,0b11AAAAAA,A,A]205 cb2 .BB0206 207 ! CHECK: cb23 .BB0 ! encoding: [0x0b,0b11AAAAAA,A,A]208 cb23 .BB0209 210 ! CHECK: cb1 .BB0 ! encoding: [0x09,0b11AAAAAA,A,A]211 cb1 .BB0212 213 ! CHECK: cb13 .BB0 ! encoding: [0x07,0b11AAAAAA,A,A]214 cb13 .BB0215 216 ! CHECK: cb12 .BB0 ! encoding: [0x05,0b11AAAAAA,A,A]217 cb12 .BB0218 219 ! CHECK: cb123 .BB0 ! encoding: [0x03,0b11AAAAAA,A,A]220 cb123 .BB0221 222 ! CHECK: cb0 .BB0 ! encoding: [0x13,0b11AAAAAA,A,A]223 cb0 .BB0224 225 ! CHECK: cb03 .BB0 ! encoding: [0x15,0b11AAAAAA,A,A]226 cb03 .BB0227 228 ! CHECK: cb02 .BB0 ! encoding: [0x17,0b11AAAAAA,A,A]229 cb02 .BB0230 231 ! CHECK: cb023 .BB0 ! encoding: [0x19,0b11AAAAAA,A,A]232 cb023 .BB0233 234 ! CHECK: cb01 .BB0 ! encoding: [0x1b,0b11AAAAAA,A,A]235 cb01 .BB0236 237 ! CHECK: cb013 .BB0 ! encoding: [0x1d,0b11AAAAAA,A,A]238 cb013 .BB0239 240 ! CHECK: cb012 .BB0 ! encoding: [0x1f,0b11AAAAAA,A,A]241 cb012 .BB0242 243 ! CHECK: ba,a .BB0 ! encoding: [0x30,0b10AAAAAA,A,A]244 ba,a .BB0245 246 ! CHECK: bne,a .BB0 ! encoding: [0x32,0b10AAAAAA,A,A]247 bne,a .BB0248 249 ! CHECK: be,a .BB0 ! encoding: [0x22,0b10AAAAAA,A,A]250 be,a .BB0251 252 ! CHECK: bg,a .BB0 ! encoding: [0x34,0b10AAAAAA,A,A]253 bg,a .BB0254 255 ! CHECK: ble,a .BB0 ! encoding: [0x24,0b10AAAAAA,A,A]256 ble,a .BB0257 258 ! CHECK: bge,a .BB0 ! encoding: [0x36,0b10AAAAAA,A,A]259 bge,a .BB0260 261 ! CHECK: bl,a .BB0 ! encoding: [0x26,0b10AAAAAA,A,A]262 bl,a .BB0263 264 ! CHECK: bgu,a .BB0 ! encoding: [0x38,0b10AAAAAA,A,A]265 bgu,a .BB0266 267 ! CHECK: bleu,a .BB0 ! encoding: [0x28,0b10AAAAAA,A,A]268 bleu,a .BB0269 270 ! CHECK: bcc,a .BB0 ! encoding: [0x3a,0b10AAAAAA,A,A]271 bcc,a .BB0272 273 ! CHECK: bcs,a .BB0 ! encoding: [0x2a,0b10AAAAAA,A,A]274 bcs,a .BB0275 276 ! CHECK: bpos,a .BB0 ! encoding: [0x3c,0b10AAAAAA,A,A]277 bpos,a .BB0278 279 ! CHECK: bneg,a .BB0 ! encoding: [0x2c,0b10AAAAAA,A,A]280 bneg,a .BB0281 282 ! CHECK: bvc,a .BB0 ! encoding: [0x3e,0b10AAAAAA,A,A]283 bvc,a .BB0284 285 ! CHECK: bvs,a .BB0 ! encoding: [0x2e,0b10AAAAAA,A,A]286 bvs,a .BB0287 288 ! CHECK: fbu,a .BB0 ! encoding: [0x2f,0b10AAAAAA,A,A]289 fbu,a .BB0290 291 ! CHECK: fbg,a .BB0 ! encoding: [0x2d,0b10AAAAAA,A,A]292 fbg,a .BB0293 ! CHECK: fbug,a .BB0 ! encoding: [0x2b,0b10AAAAAA,A,A]294 fbug,a .BB0295 296 ! CHECK: fbl,a .BB0 ! encoding: [0x29,0b10AAAAAA,A,A]297 fbl,a .BB0298 299 ! CHECK: fbul,a .BB0 ! encoding: [0x27,0b10AAAAAA,A,A]300 fbul,a .BB0301 302 ! CHECK: fblg,a .BB0 ! encoding: [0x25,0b10AAAAAA,A,A]303 fblg,a .BB0304 305 ! CHECK: fbne,a .BB0 ! encoding: [0x23,0b10AAAAAA,A,A]306 fbne,a .BB0307 308 ! CHECK: fbe,a .BB0 ! encoding: [0x33,0b10AAAAAA,A,A]309 fbe,a .BB0310 311 ! CHECK: fbue,a .BB0 ! encoding: [0x35,0b10AAAAAA,A,A]312 fbue,a .BB0313 314 ! CHECK: fbge,a .BB0 ! encoding: [0x37,0b10AAAAAA,A,A]315 fbge,a .BB0316 317 ! CHECK: fbuge,a .BB0 ! encoding: [0x39,0b10AAAAAA,A,A]318 fbuge,a .BB0319 320 ! CHECK: fble,a .BB0 ! encoding: [0x3b,0b10AAAAAA,A,A]321 fble,a .BB0322 323 ! CHECK: fbule,a .BB0 ! encoding: [0x3d,0b10AAAAAA,A,A]324 fbule,a .BB0325 326 ! CHECK: fbo,a .BB0 ! encoding: [0x3f,0b10AAAAAA,A,A]327 fbo,a .BB0328 329 ! CHECK: rett %i7+8 ! encoding: [0x81,0xcf,0xe0,0x08]330 rett %i7 + 8331 332 ! CHECK: cb3,a .BB0 ! encoding: [0x2f,0b11AAAAAA,A,A]333 cb3,a .BB0334 335 ! CHECK: cb2,a .BB0 ! encoding: [0x2d,0b11AAAAAA,A,A]336 cb2,a .BB0337 338 ! CHECK: cb23,a .BB0 ! encoding: [0x2b,0b11AAAAAA,A,A]339 cb23,a .BB0340 341 ! CHECK: cb1,a .BB0 ! encoding: [0x29,0b11AAAAAA,A,A]342 cb1,a .BB0343 344 ! CHECK: cb13,a .BB0 ! encoding: [0x27,0b11AAAAAA,A,A]345 cb13,a .BB0346 347 ! CHECK: cb12,a .BB0 ! encoding: [0x25,0b11AAAAAA,A,A]348 cb12,a .BB0349 350 ! CHECK: cb123,a .BB0 ! encoding: [0x23,0b11AAAAAA,A,A]351 cb123,a .BB0352 353 ! CHECK: cb0,a .BB0 ! encoding: [0x33,0b11AAAAAA,A,A]354 cb0,a .BB0355 356 ! CHECK: cb03,a .BB0 ! encoding: [0x35,0b11AAAAAA,A,A]357 cb03,a .BB0358 359 ! CHECK: cb02,a .BB0 ! encoding: [0x37,0b11AAAAAA,A,A]360 cb02,a .BB0361 362 ! CHECK: cb023,a .BB0 ! encoding: [0x39,0b11AAAAAA,A,A]363 cb023,a .BB0364 365 ! CHECK: cb01,a .BB0 ! encoding: [0x3b,0b11AAAAAA,A,A]366 cb01,a .BB0367 368 ! CHECK: cb013,a .BB0 ! encoding: [0x3d,0b11AAAAAA,A,A]369 cb013,a .BB0370 371 ! CHECK: cb012,a .BB0 ! encoding: [0x3f,0b11AAAAAA,A,A]372 cb012,a .BB0373 374 ! CHECK: cb3,a .BB0 ! encoding: [0x2f,0b11AAAAAA,A,A]375 cb3,a .BB0376 377 ! CHECK: cb2,a .BB0 ! encoding: [0x2d,0b11AAAAAA,A,A]378 cb2,a .BB0379 380 ! CHECK: cb23,a .BB0 ! encoding: [0x2b,0b11AAAAAA,A,A]381 cb23,a .BB0382 383 ! CHECK: cb1,a .BB0 ! encoding: [0x29,0b11AAAAAA,A,A]384 cb1,a .BB0385 386 ! CHECK: cb13,a .BB0 ! encoding: [0x27,0b11AAAAAA,A,A]387 cb13,a .BB0388 389 ! CHECK: cb12,a .BB0 ! encoding: [0x25,0b11AAAAAA,A,A]390 cb12,a .BB0391 392 ! CHECK: cb123,a .BB0 ! encoding: [0x23,0b11AAAAAA,A,A]393 cb123,a .BB0394 395 ! CHECK: cb0,a .BB0 ! encoding: [0x33,0b11AAAAAA,A,A]396 cb0,a .BB0397 398 ! CHECK: cb03,a .BB0 ! encoding: [0x35,0b11AAAAAA,A,A]399 cb03,a .BB0400 401 ! CHECK: cb02,a .BB0 ! encoding: [0x37,0b11AAAAAA,A,A]402 cb02,a .BB0403 404 ! CHECK: cb023,a .BB0 ! encoding: [0x39,0b11AAAAAA,A,A]405 cb023,a .BB0406 407 ! CHECK: cb01,a .BB0 ! encoding: [0x3b,0b11AAAAAA,A,A]408 cb01,a .BB0409 410 ! CHECK: cb013,a .BB0 ! encoding: [0x3d,0b11AAAAAA,A,A]411 cb013,a .BB0412 413 ! CHECK: cb012,a .BB0 ! encoding: [0x3f,0b11AAAAAA,A,A]414 cb012,a .BB0415 416 ! CHECK: rett %i7+8 ! encoding: [0x81,0xcf,0xe0,0x08]417 rett %i7 + 8418 419