200 lines · plain
1# Check the hardware registers2#3# FIXME: Use the code generator in order to print the .set directives4# instead of the instruction printer.5#6# RUN: llvm-mc %s -triple=mips-unknown-linux -show-encoding -mcpu=mips32r2 | \7# RUN: FileCheck %s8 .set noat9 # CHECK: .set push10 # CHECK-NEXT: .set mips32r211 # CHECK-NEXT: rdhwr $4, $hwr_cpunum12 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x00,0x3b]13 rdhwr $a0,$hwr_cpunum14 # CHECK: .set push15 # CHECK-NEXT: .set mips32r216 # CHECK-NEXT: rdhwr $4, $hwr_cpunum17 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x00,0x3b]18 rdhwr $a0,$019 20 # CHECK: .set push21 # CHECK-NEXT: .set mips32r222 # CHECK-NEXT: rdhwr $5, $hwr_synci_step23 # CHECK-NEXT: .set pop # encoding: [0x7c,0x05,0x08,0x3b]24 rdhwr $a1,$hwr_synci_step25 # CHECK: .set push26 # CHECK-NEXT: .set mips32r227 # CHECK-NEXT: rdhwr $5, $hwr_synci_step28 # CHECK-NEXT: .set pop # encoding: [0x7c,0x05,0x08,0x3b]29 rdhwr $a1,$130 31 # CHECK: .set push32 # CHECK-NEXT: .set mips32r233 # CHECK-NEXT: rdhwr $6, $hwr_cc34 # CHECK-NEXT: .set pop # encoding: [0x7c,0x06,0x10,0x3b]35 rdhwr $a2,$hwr_cc36 # CHECK: .set push37 # CHECK-NEXT: .set mips32r238 # CHECK-NEXT: rdhwr $6, $hwr_cc39 # CHECK-NEXT: .set pop # encoding: [0x7c,0x06,0x10,0x3b]40 rdhwr $a2,$241 42 # CHECK: .set push43 # CHECK-NEXT: .set mips32r244 # CHECK-NEXT: rdhwr $7, $hwr_ccres45 # CHECK-NEXT: .set pop # encoding: [0x7c,0x07,0x18,0x3b]46 rdhwr $a3,$hwr_ccres47 # CHECK: .set push48 # CHECK-NEXT: .set mips32r249 # CHECK-NEXT: rdhwr $7, $hwr_ccres50 # CHECK-NEXT: .set pop # encoding: [0x7c,0x07,0x18,0x3b]51 rdhwr $a3,$352 53 # CHECK: .set push54 # CHECK-NEXT: .set mips32r255 # CHECK-NEXT: rdhwr $4, $456 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x20,0x3b]57 rdhwr $a0,$458 # CHECK: .set push59 # CHECK-NEXT: .set mips32r260 # CHECK-NEXT: rdhwr $4, $561 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x28,0x3b]62 rdhwr $a0,$563 # CHECK: .set push64 # CHECK-NEXT: .set mips32r265 # CHECK-NEXT: rdhwr $4, $666 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x30,0x3b]67 rdhwr $a0,$668 # CHECK: .set push69 # CHECK-NEXT: .set mips32r270 # CHECK-NEXT: rdhwr $4, $771 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x38,0x3b]72 rdhwr $a0,$773 # CHECK: .set push74 # CHECK-NEXT: .set mips32r275 # CHECK-NEXT: rdhwr $4, $876 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x40,0x3b]77 rdhwr $a0,$878 # CHECK: .set push79 # CHECK-NEXT: .set mips32r280 # CHECK-NEXT: rdhwr $4, $981 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x48,0x3b]82 rdhwr $a0,$983 # CHECK: .set push84 # CHECK-NEXT: .set mips32r285 # CHECK-NEXT: rdhwr $4, $1086 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x50,0x3b]87 rdhwr $a0,$1088 # CHECK: .set push89 # CHECK-NEXT: .set mips32r290 # CHECK-NEXT: rdhwr $4, $1191 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x58,0x3b]92 rdhwr $a0,$1193 # CHECK: .set push94 # CHECK-NEXT: .set mips32r295 # CHECK-NEXT: rdhwr $4, $1296 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x60,0x3b]97 rdhwr $a0,$1298 # CHECK: .set push99 # CHECK-NEXT: .set mips32r2100 # CHECK-NEXT: rdhwr $4, $13101 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x68,0x3b]102 rdhwr $a0,$13103 # CHECK: .set push104 # CHECK-NEXT: .set mips32r2105 # CHECK-NEXT: rdhwr $4, $14106 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x70,0x3b]107 rdhwr $a0,$14108 # CHECK: .set push109 # CHECK-NEXT: .set mips32r2110 # CHECK-NEXT: rdhwr $4, $15111 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x78,0x3b]112 rdhwr $a0,$15113 # CHECK: .set push114 # CHECK-NEXT: .set mips32r2115 # CHECK-NEXT: rdhwr $4, $16116 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x80,0x3b]117 rdhwr $a0,$16118 # CHECK: .set push119 # CHECK-NEXT: .set mips32r2120 # CHECK-NEXT: rdhwr $4, $17121 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x88,0x3b]122 rdhwr $a0,$17123 # CHECK: .set push124 # CHECK-NEXT: .set mips32r2125 # CHECK-NEXT: rdhwr $4, $18126 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x90,0x3b]127 rdhwr $a0,$18128 # CHECK: .set push129 # CHECK-NEXT: .set mips32r2130 # CHECK-NEXT: rdhwr $4, $19131 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0x98,0x3b]132 rdhwr $a0,$19133 # CHECK: .set push134 # CHECK-NEXT: .set mips32r2135 # CHECK-NEXT: rdhwr $4, $20136 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xa0,0x3b]137 rdhwr $a0,$20138 # CHECK: .set push139 # CHECK-NEXT: .set mips32r2140 # CHECK-NEXT: rdhwr $4, $21141 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xa8,0x3b]142 rdhwr $a0,$21143 # CHECK: .set push144 # CHECK-NEXT: .set mips32r2145 # CHECK-NEXT: rdhwr $4, $22146 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xb0,0x3b]147 rdhwr $a0,$22148 # CHECK: .set push149 # CHECK-NEXT: .set mips32r2150 # CHECK-NEXT: rdhwr $4, $23151 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xb8,0x3b]152 rdhwr $a0,$23153 # CHECK: .set push154 # CHECK-NEXT: .set mips32r2155 # CHECK-NEXT: rdhwr $4, $24156 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xc0,0x3b]157 rdhwr $a0,$24158 # CHECK: .set push159 # CHECK-NEXT: .set mips32r2160 # CHECK-NEXT: rdhwr $4, $25161 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xc8,0x3b]162 rdhwr $a0,$25163 # CHECK: .set push164 # CHECK-NEXT: .set mips32r2165 # CHECK-NEXT: rdhwr $4, $26166 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xd0,0x3b]167 rdhwr $a0,$26168 # CHECK: .set push169 # CHECK-NEXT: .set mips32r2170 # CHECK-NEXT: rdhwr $4, $27171 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xd8,0x3b]172 rdhwr $a0,$27173 # CHECK: .set push174 # CHECK-NEXT: .set mips32r2175 # CHECK-NEXT: rdhwr $4, $28176 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xe0,0x3b]177 rdhwr $a0,$28178 179 # CHECK: .set push180 # CHECK-NEXT: .set mips32r2181 # CHECK-NEXT: rdhwr $4, $29182 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xe8,0x3b]183 rdhwr $a0,$29184 # CHECK: .set push185 # CHECK-NEXT: .set mips32r2186 # CHECK-NEXT: rdhwr $4, $29187 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xe8,0x3b]188 rdhwr $a0,$hwr_ulr189 190 # CHECK: .set push191 # CHECK-NEXT: .set mips32r2192 # CHECK-NEXT: rdhwr $4, $30193 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xf0,0x3b]194 rdhwr $a0,$30195 # CHECK: .set push196 # CHECK-NEXT: .set mips32r2197 # CHECK-NEXT: rdhwr $4, $31198 # CHECK-NEXT: .set pop # encoding: [0x7c,0x04,0xf8,0x3b]199 rdhwr $a0,$31200