1 # RUN: llvm-mc %s -triple=mipsel-unknown-linux -show-encoding -mcpu=mips32r2 | \ 2 # RUN: FileCheck %s 3 # Check that the assembler can handle the documented syntax 4 # for ".set at" and set the correct value. 5 6 # CHECK: .section __TEXT,__text,regular,pure_instructions 7 .text 8 foo: 9 # CHECK: jr $1 # encoding: [0x08,0x00,0x20,0x00] 10 .set at=$1 11 jr $at 12 nop 13 # CHECK: jr $2 # encoding: [0x08,0x00,0x40,0x00] 14 .set at=$2 15 jr $at 16 nop 17 # CHECK: jr $3 # encoding: [0x08,0x00,0x60,0x00] 18 .set at=$3 19 jr $at 20 nop 21 # CHECK: jr $4 # encoding: [0x08,0x00,0x80,0x00] 22 .set at=$a0 23 jr $at 24 nop 25 # CHECK: jr $5 # encoding: [0x08,0x00,0xa0,0x00] 26 .set at=$a1 27 jr $at 28 nop 29 # CHECK: jr $6 # encoding: [0x08,0x00,0xc0,0x00] 30 .set at=$a2 31 jr $at 32 nop 33 # CHECK: jr $7 # encoding: [0x08,0x00,0xe0,0x00] 34 .set at=$a3 35 jr $at 36 nop 37 # CHECK: jr $8 # encoding: [0x08,0x00,0x00,0x01] 38 .set at=$8 39 jr $at 40 nop 41 # CHECK: jr $9 # encoding: [0x08,0x00,0x20,0x01] 42 .set at=$9 43 jr $at 44 nop 45 # CHECK: jr $10 # encoding: [0x08,0x00,0x40,0x01] 46 .set at=$10 47 jr $at 48 nop 49 # CHECK: jr $11 # encoding: [0x08,0x00,0x60,0x01] 50 .set at=$11 51 jr $at 52 nop 53 # CHECK: jr $12 # encoding: [0x08,0x00,0x80,0x01] 54 .set at=$12 55 jr $at 56 nop 57 # CHECK: jr $13 # encoding: [0x08,0x00,0xa0,0x01] 58 .set at=$13 59 jr $at 60 nop 61 # CHECK: jr $14 # encoding: [0x08,0x00,0xc0,0x01] 62 .set at=$14 63 jr $at 64 nop 65 # CHECK: jr $15 # encoding: [0x08,0x00,0xe0,0x01] 66 .set at=$15 67 jr $at 68 nop 69 # CHECK: jr $16 # encoding: [0x08,0x00,0x00,0x02] 70 .set at=$s0 71 jr $at 72 nop 73 # CHECK: jr $17 # encoding: [0x08,0x00,0x20,0x02] 74 .set at=$s1 75 jr $at 76 nop 77 # CHECK: jr $18 # encoding: [0x08,0x00,0x40,0x02] 78 .set at=$s2 79 jr $at 80 nop 81 # CHECK: jr $19 # encoding: [0x08,0x00,0x60,0x02] 82 .set at=$s3 83 jr $at 84 nop 85 # CHECK: jr $20 # encoding: [0x08,0x00,0x80,0x02] 86 .set at=$s4 87 jr $at 88 nop 89 # CHECK: jr $21 # encoding: [0x08,0x00,0xa0,0x02] 90 .set at=$s5 91 jr $at 92 nop 93 # CHECK: jr $22 # encoding: [0x08,0x00,0xc0,0x02] 94 .set at=$s6 95 jr $at 96 nop 97 # CHECK: jr $23 # encoding: [0x08,0x00,0xe0,0x02] 98 .set at=$s7 99 jr $at 100 nop 101 # CHECK: jr $24 # encoding: [0x08,0x00,0x00,0x03] 102 .set at=$24 103 jr $at 104 nop 105 # CHECK: jr $25 # encoding: [0x08,0x00,0x20,0x03] 106 .set at=$25 107 jr $at 108 nop 109 # CHECK: jr $26 # encoding: [0x08,0x00,0x40,0x03] 110 .set at=$26 111 jr $at 112 nop 113 # CHECK: jr $27 # encoding: [0x08,0x00,0x60,0x03] 114 .set at=$27 115 jr $at 116 nop 117 # CHECK: jr $gp # encoding: [0x08,0x00,0x80,0x03] 118 .set at=$gp 119 jr $at 120 nop 121 # CHECK: jr $fp # encoding: [0x08,0x00,0xc0,0x03] 122 .set at=$fp 123 jr $at 124 nop 125 # CHECK: jr $sp # encoding: [0x08,0x00,0xa0,0x03] 126 .set at=$sp 127 jr $at 128 nop 129 # CHECK: jr $ra # encoding: [0x08,0x00,0xe0,0x03] 130 .set at=$ra 131 jr $at 132 nop 133