boot2

Playing with the boostrap
git clone https://git.ryansepassi.com/git/boot2.git
Log | Files | Refs | README

P1-riscv64.M1 (15343B)


      1 ## riscv64.M1 — GENERATED by p1/gen/p1_gen.py. Do not edit by hand.
      2 ##
      3 ## This table targets the P1 ISA described in docs/P1.md.
      4 ## Row shapes are shared; per-arch lowering lives in p1/gen/<arch>.py.
      5 
      6 
      7 ## ---- Materialization
      8 DEFINE li_a0 170500000335C5006F00C000
      9 DEFINE li_a1 9705000083B5C5006F00C000
     10 DEFINE li_a2 170600000336C6006F00C000
     11 DEFINE li_a3 9706000083B6C6006F00C000
     12 DEFINE li_t0 9702000083B2C2006F00C000
     13 DEFINE li_t1 170300000333C3006F00C000
     14 DEFINE li_t2 9703000083B3C3006F00C000
     15 DEFINE la_a0 170500000365C5006F008000
     16 DEFINE la_a1 9705000083E5C5006F008000
     17 DEFINE la_a2 170600000366C6006F008000
     18 DEFINE la_a3 9706000083E6C6006F008000
     19 DEFINE la_t0 9702000083E2C2006F008000
     20 DEFINE la_t1 170300000363C3006F008000
     21 DEFINE la_t2 9703000083E3C3006F008000
     22 DEFINE la_br 970F000083EFCF006F008000
     23 
     24 ## ---- Moves
     25 DEFINE mov_a0,a1 13850500
     26 DEFINE mov_a0,a3 13850600
     27 DEFINE mov_a0,t0 13850200
     28 DEFINE mov_a0,t1 13050300
     29 DEFINE mov_a0,t2 13850300
     30 DEFINE mov_a1,a0 93050500
     31 DEFINE mov_a1,t0 93850200
     32 DEFINE mov_a1,t1 93050300
     33 DEFINE mov_a1,t2 93850300
     34 DEFINE mov_a2,a1 13860500
     35 DEFINE mov_a2,t0 13860200
     36 DEFINE mov_a2,t1 13060300
     37 DEFINE mov_a3,t0 93860200
     38 DEFINE mov_a3,t1 93060300
     39 DEFINE mov_t0,a0 93020500
     40 DEFINE mov_t1,a0 13030500
     41 DEFINE mov_t2,a0 93030500
     42 DEFINE mov_t2,t1 93030300
     43 
     44 ## ---- Register Arithmetic
     45 DEFINE add_a0,a0,a1 3305B500
     46 DEFINE add_a0,a0,a2 3305C500
     47 DEFINE add_a0,a0,t0 33055500
     48 DEFINE add_a0,a0,t1 33056500
     49 DEFINE add_a0,a0,t2 33057500
     50 DEFINE add_a0,a2,a0 3305A600
     51 DEFINE add_a0,a2,t2 33057600
     52 DEFINE add_a0,t0,a3 3385D200
     53 DEFINE add_a0,t1,a0 3305A300
     54 DEFINE add_a0,t1,t2 33057300
     55 DEFINE add_a0,t2,a1 3385B300
     56 DEFINE add_a1,a0,a1 B305B500
     57 DEFINE add_a1,a1,a0 B385A500
     58 DEFINE add_a1,a1,a2 B385C500
     59 DEFINE add_a1,a1,a3 B385D500
     60 DEFINE add_a1,a1,t0 B3855500
     61 DEFINE add_a1,a1,t1 B3856500
     62 DEFINE add_a1,a2,a1 B305B600
     63 DEFINE add_a1,a2,a3 B305D600
     64 DEFINE add_a1,a2,t0 B3055600
     65 DEFINE add_a1,a3,a1 B385B600
     66 DEFINE add_a1,t0,a0 B385A200
     67 DEFINE add_a1,t2,a1 B385B300
     68 DEFINE add_a1,t2,a3 B385D300
     69 DEFINE add_a1,t2,t1 B3856300
     70 DEFINE add_a2,a1,a3 3386D500
     71 DEFINE add_a2,a1,t0 33865500
     72 DEFINE add_a2,a2,a0 3306A600
     73 DEFINE add_a2,a2,a3 3306D600
     74 DEFINE add_a2,a2,t0 33065600
     75 DEFINE add_a2,a2,t1 33066600
     76 DEFINE add_a2,a3,a2 3386C600
     77 DEFINE add_a2,t0,t1 33866200
     78 DEFINE add_a2,t1,t2 33067300
     79 DEFINE add_a2,t2,a0 3386A300
     80 DEFINE add_a2,t2,a2 3386C300
     81 DEFINE add_a3,a0,a2 B306C500
     82 DEFINE add_a3,a1,t1 B3866500
     83 DEFINE add_a3,a1,t2 B3867500
     84 DEFINE add_a3,a3,a1 B386B600
     85 DEFINE add_a3,a3,a2 B386C600
     86 DEFINE add_a3,a3,t0 B3865600
     87 DEFINE add_a3,a3,t1 B3866600
     88 DEFINE add_a3,a3,t2 B3867600
     89 DEFINE add_a3,t0,t2 B3867200
     90 DEFINE add_a3,t1,a2 B306C300
     91 DEFINE add_t0,a1,t2 B3827500
     92 DEFINE add_t0,a3,a1 B382B600
     93 DEFINE add_t0,t0,a0 B382A200
     94 DEFINE add_t0,t0,a1 B382B200
     95 DEFINE add_t0,t0,a3 B382D200
     96 DEFINE add_t0,t0,t1 B3826200
     97 DEFINE add_t1,a0,t0 33035500
     98 DEFINE add_t1,t0,t1 33836200
     99 DEFINE add_t1,t1,a0 3303A300
    100 DEFINE add_t1,t1,a1 3303B300
    101 DEFINE add_t1,t1,a2 3303C300
    102 DEFINE add_t1,t1,t2 33037300
    103 DEFINE add_t2,a0,t0 B3035500
    104 DEFINE add_t2,a0,t1 B3036500
    105 DEFINE add_t2,a1,a3 B383D500
    106 DEFINE add_t2,a1,t2 B3837500
    107 DEFINE add_t2,a2,t1 B3036600
    108 DEFINE add_t2,t0,t1 B3836200
    109 DEFINE add_t2,t1,t2 B3037300
    110 DEFINE add_t2,t2,a0 B383A300
    111 DEFINE add_t2,t2,a3 B383D300
    112 DEFINE sub_a0,a0,t1 33056540
    113 DEFINE sub_a0,a1,t2 33857540
    114 DEFINE sub_a0,a3,a0 3385A640
    115 DEFINE sub_a1,t0,a0 B385A240
    116 DEFINE sub_a2,a1,a0 3386A540
    117 DEFINE sub_a2,a2,a2 3306C640
    118 DEFINE sub_a2,a2,t0 33065640
    119 DEFINE sub_a2,t0,t1 33866240
    120 DEFINE sub_a2,t2,a3 3386D340
    121 DEFINE sub_a3,a3,a1 B386B640
    122 DEFINE sub_a3,a3,a2 B386C640
    123 DEFINE sub_a3,t0,a2 B386C240
    124 DEFINE sub_a3,t0,a3 B386D240
    125 DEFINE sub_a3,t0,t1 B3866240
    126 DEFINE sub_a3,t1,a2 B306C340
    127 DEFINE sub_a3,t1,t0 B3065340
    128 DEFINE sub_a3,t2,t1 B3866340
    129 DEFINE sub_t0,a1,a2 B382C540
    130 DEFINE sub_t0,t0,a0 B382A240
    131 DEFINE sub_t0,t0,a1 B382B240
    132 DEFINE sub_t0,t0,t1 B3826240
    133 DEFINE sub_t2,t1,t0 B3035340
    134 DEFINE and_a3,a3,a2 B3F6C600
    135 DEFINE or_a0,a0,a1 3365B500
    136 DEFINE or_a0,a0,a2 3365C500
    137 DEFINE or_a3,a3,a2 B3E6C600
    138 DEFINE xor_a2,a2,a3 3346D600
    139 DEFINE xor_a3,a3,a2 B3C6C600
    140 DEFINE shl_a2,a2,a3 3316D600
    141 DEFINE sar_a2,a2,a3 3356D640
    142 DEFINE mul_a0,a0,a3 3305D502
    143 DEFINE mul_a0,t1,t2 33057302
    144 DEFINE mul_a1,a1,a3 B385D502
    145 DEFINE mul_a2,a2,t0 33065602
    146 DEFINE mul_a3,a3,a2 B386C602
    147 DEFINE mul_t0,t0,a1 B382B202
    148 DEFINE mul_t0,t0,a2 B382C202
    149 DEFINE mul_t1,t1,a3 3303D302
    150 DEFINE mul_t2,t0,a2 B383C202
    151 DEFINE div_a0,a0,a1 3345B502
    152 DEFINE div_a2,a2,a3 3346D602
    153 DEFINE rem_a2,a0,a1 3366B502
    154 DEFINE rem_a2,a2,a3 3366D602
    155 
    156 ## ---- Immediate Arithmetic
    157 DEFINE addi_a0,a0,neg1 1305F5FF
    158 DEFINE addi_a0,a0,1 13051500
    159 DEFINE addi_a0,a0,24 13058501
    160 DEFINE addi_a1,a1,neg48 938505FD
    161 DEFINE addi_a1,a1,neg24 938585FE
    162 DEFINE addi_a1,a1,neg2 9385E5FF
    163 DEFINE addi_a1,a1,1 93851500
    164 DEFINE addi_a1,a1,2 93852500
    165 DEFINE addi_a1,a1,3 93853500
    166 DEFINE addi_a1,t0,1 93851200
    167 DEFINE addi_a2,a0,1 13061500
    168 DEFINE addi_a2,a2,neg1 1306F6FF
    169 DEFINE addi_a2,a2,1 13061600
    170 DEFINE addi_a2,a2,2 13062600
    171 DEFINE addi_a2,a2,3 13063600
    172 DEFINE addi_a2,a2,8 13068600
    173 DEFINE addi_a2,a2,24 13068601
    174 DEFINE addi_a2,a2,48 13060603
    175 DEFINE addi_a2,t0,1 13861200
    176 DEFINE addi_a2,t2,neg48 138603FD
    177 DEFINE addi_a3,a3,1 93861600
    178 DEFINE addi_a3,a3,24 93868601
    179 DEFINE addi_t0,a1,neg24 938285FE
    180 DEFINE addi_t0,a1,24 93828501
    181 DEFINE addi_t0,t0,neg1 9382F2FF
    182 DEFINE addi_t0,t0,1 93821200
    183 DEFINE addi_t0,t0,2 93822200
    184 DEFINE addi_t0,t0,24 93828201
    185 DEFINE addi_t0,t0,48 93820203
    186 DEFINE addi_t1,t0,24 13838201
    187 DEFINE addi_t1,t1,neg24 130383FE
    188 DEFINE addi_t1,t1,neg1 1303F3FF
    189 DEFINE addi_t1,t1,1 13031300
    190 DEFINE addi_t1,t1,16 13030301
    191 DEFINE addi_t1,t1,24 13038301
    192 DEFINE addi_t2,a1,neg24 938385FE
    193 DEFINE addi_t2,t0,neg24 938382FE
    194 DEFINE addi_t2,t0,24 93838201
    195 DEFINE addi_t2,t1,2 93032300
    196 DEFINE addi_t2,t2,neg1 9383F3FF
    197 DEFINE addi_t2,t2,1 93831300
    198 DEFINE addi_t2,t2,24 93838301
    199 DEFINE andi_a2,a0,15 1376F500
    200 DEFINE andi_a2,a1,15 13F6F500
    201 DEFINE andi_a2,a2,15 1376F600
    202 DEFINE andi_a3,a3,15 93F6F600
    203 DEFINE andi_a3,t2,255 93F6F30F
    204 DEFINE shli_a0,a0,3 13153500
    205 DEFINE shli_a0,a0,4 13154500
    206 DEFINE shli_a1,a1,1 93951500
    207 DEFINE shli_a2,t1,3 13163300
    208 DEFINE shli_a3,t0,1 93961200
    209 DEFINE shli_a3,t0,4 93964200
    210 DEFINE shli_t1,a2,3 13133600
    211 DEFINE shli_t2,t0,3 93933200
    212 DEFINE shri_a0,a0,6 13556500
    213 DEFINE shri_a1,a1,6 93D56500
    214 DEFINE shri_a2,a3,4 13D64600
    215 DEFINE shri_t2,t2,8 93D38300
    216 
    217 ## ---- Memory
    218 DEFINE ld_a0,a0,0 03350500
    219 DEFINE ld_a0,a0,8 03358500
    220 DEFINE ld_a0,a0,16 03350501
    221 DEFINE ld_a0,a1,0 03B50500
    222 DEFINE ld_a0,a2,0 03350600
    223 DEFINE ld_a0,a3,0 03B50600
    224 DEFINE ld_a0,a3,8 03B58600
    225 DEFINE ld_a0,a3,16 03B50601
    226 DEFINE ld_a0,t0,0 03B50200
    227 DEFINE ld_a0,sp,0 03350101
    228 DEFINE ld_a0,sp,8 03358101
    229 DEFINE ld_a0,sp,24 03358102
    230 DEFINE ld_a1,a0,0 83350500
    231 DEFINE ld_a1,a0,8 83358500
    232 DEFINE ld_a1,a0,24 83358501
    233 DEFINE ld_a1,a1,0 83B50500
    234 DEFINE ld_a1,a2,8 83358600
    235 DEFINE ld_a1,a3,8 83B58600
    236 DEFINE ld_a1,t0,0 83B50200
    237 DEFINE ld_a1,t0,8 83B58200
    238 DEFINE ld_a1,t0,16 83B50201
    239 DEFINE ld_a1,t1,0 83350300
    240 DEFINE ld_a1,t2,16 83B50301
    241 DEFINE ld_a1,sp,8 83358101
    242 DEFINE ld_a2,a0,0 03360500
    243 DEFINE ld_a2,a0,8 03368500
    244 DEFINE ld_a2,a0,16 03360501
    245 DEFINE ld_a2,a1,0 03B60500
    246 DEFINE ld_a2,a1,8 03B68500
    247 DEFINE ld_a2,a2,0 03360600
    248 DEFINE ld_a2,t0,0 03B60200
    249 DEFINE ld_a2,t0,8 03B68200
    250 DEFINE ld_a2,t0,16 03B60201
    251 DEFINE ld_a2,t1,neg24 033683FE
    252 DEFINE ld_a2,t1,0 03360300
    253 DEFINE ld_a2,t2,0 03B60300
    254 DEFINE ld_a2,sp,16 03360102
    255 DEFINE ld_a3,a0,0 83360500
    256 DEFINE ld_a3,a0,8 83368500
    257 DEFINE ld_a3,a0,16 83360501
    258 DEFINE ld_a3,a1,0 83B60500
    259 DEFINE ld_a3,a1,8 83B68500
    260 DEFINE ld_a3,a2,0 83360600
    261 DEFINE ld_a3,a3,0 83B60600
    262 DEFINE ld_a3,t0,0 83B60200
    263 DEFINE ld_a3,t0,8 83B68200
    264 DEFINE ld_a3,t0,16 83B60201
    265 DEFINE ld_a3,t1,8 83368300
    266 DEFINE ld_t0,a0,0 83320500
    267 DEFINE ld_t0,a0,8 83328500
    268 DEFINE ld_t0,a0,16 83320501
    269 DEFINE ld_t0,a1,0 83B20500
    270 DEFINE ld_t0,a1,8 83B28500
    271 DEFINE ld_t0,a1,16 83B20501
    272 DEFINE ld_t0,a1,24 83B28501
    273 DEFINE ld_t0,a1,32 83B20502
    274 DEFINE ld_t0,a2,0 83320600
    275 DEFINE ld_t0,a3,0 83B20600
    276 DEFINE ld_t0,t0,0 83B20200
    277 DEFINE ld_t0,t1,8 83328300
    278 DEFINE ld_t0,t1,16 83320301
    279 DEFINE ld_t0,t2,16 83B20301
    280 DEFINE ld_t0,sp,0 83320101
    281 DEFINE ld_t0,sp,8 83328101
    282 DEFINE ld_t0,sp,16 83320102
    283 DEFINE ld_t0,sp,24 83328102
    284 DEFINE ld_t0,sp,32 83320103
    285 DEFINE ld_t0,sp,40 83328103
    286 DEFINE ld_t1,a0,0 03330500
    287 DEFINE ld_t1,a0,8 03338500
    288 DEFINE ld_t1,a0,16 03330501
    289 DEFINE ld_t1,a1,0 03B30500
    290 DEFINE ld_t1,a1,8 03B38500
    291 DEFINE ld_t1,a1,16 03B30501
    292 DEFINE ld_t1,a2,8 03338600
    293 DEFINE ld_t1,a2,16 03330601
    294 DEFINE ld_t1,a3,0 03B30600
    295 DEFINE ld_t1,a3,8 03B38600
    296 DEFINE ld_t1,t0,0 03B30200
    297 DEFINE ld_t1,t0,16 03B30201
    298 DEFINE ld_t1,t1,0 03330300
    299 DEFINE ld_t1,t1,16 03330301
    300 DEFINE ld_t1,sp,8 03338101
    301 DEFINE ld_t1,sp,32 03330103
    302 DEFINE ld_t1,sp,48 03330104
    303 DEFINE ld_t2,a0,0 83330500
    304 DEFINE ld_t2,a1,0 83B30500
    305 DEFINE ld_t2,a3,16 83B30601
    306 DEFINE ld_t2,t0,0 83B30200
    307 DEFINE ld_t2,t1,0 83330300
    308 DEFINE ld_t2,t2,0 83B30300
    309 DEFINE ld_t2,sp,16 83330102
    310 DEFINE st_a0,a1,0 23B0A500
    311 DEFINE st_a0,a2,0 2330A600
    312 DEFINE st_a0,a2,8 2334A600
    313 DEFINE st_a0,a2,16 2338A600
    314 DEFINE st_a0,a3,0 23B0A600
    315 DEFINE st_a0,a3,8 23B4A600
    316 DEFINE st_a0,a3,16 23B8A600
    317 DEFINE st_a0,t0,0 23B0A200
    318 DEFINE st_a0,t0,8 23B4A200
    319 DEFINE st_a0,t2,0 23B0A300
    320 DEFINE st_a0,t2,8 23B4A300
    321 DEFINE st_a0,t2,16 23B8A300
    322 DEFINE st_a0,sp,0 2338A100
    323 DEFINE st_a0,sp,16 2330A102
    324 DEFINE st_a1,a0,0 2330B500
    325 DEFINE st_a1,a2,0 2330B600
    326 DEFINE st_a1,a2,16 2338B600
    327 DEFINE st_a1,a3,0 23B0B600
    328 DEFINE st_a1,a3,8 23B4B600
    329 DEFINE st_a1,t0,0 23B0B200
    330 DEFINE st_a1,t0,8 23B4B200
    331 DEFINE st_a1,t0,16 23B8B200
    332 DEFINE st_a1,t1,0 2330B300
    333 DEFINE st_a1,t1,8 2334B300
    334 DEFINE st_a1,t1,16 2338B300
    335 DEFINE st_a1,t2,16 23B8B300
    336 DEFINE st_a1,sp,8 233CB100
    337 DEFINE st_a1,sp,16 2330B102
    338 DEFINE st_a2,a0,0 2330C500
    339 DEFINE st_a2,a1,0 23B0C500
    340 DEFINE st_a2,a3,0 23B0C600
    341 DEFINE st_a2,a3,16 23B8C600
    342 DEFINE st_a2,a3,32 23B0C602
    343 DEFINE st_a2,t0,0 23B0C200
    344 DEFINE st_a2,t0,16 23B8C200
    345 DEFINE st_a2,t1,0 2330C300
    346 DEFINE st_a2,t2,0 23B0C300
    347 DEFINE st_a3,a0,0 2330D500
    348 DEFINE st_a3,a2,0 2330D600
    349 DEFINE st_a3,t0,0 23B0D200
    350 DEFINE st_a3,t1,8 2334D300
    351 DEFINE st_a3,t2,0 23B0D300
    352 DEFINE st_a3,t2,8 23B4D300
    353 DEFINE st_a3,t2,16 23B8D300
    354 DEFINE st_t0,a0,0 23305500
    355 DEFINE st_t0,a0,16 23385500
    356 DEFINE st_t0,a0,24 233C5500
    357 DEFINE st_t0,a1,0 23B05500
    358 DEFINE st_t0,a2,0 23305600
    359 DEFINE st_t0,a3,0 23B05600
    360 DEFINE st_t0,a3,8 23B45600
    361 DEFINE st_t0,t1,0 23305300
    362 DEFINE st_t0,sp,0 23385100
    363 DEFINE st_t0,sp,8 233C5100
    364 DEFINE st_t0,sp,16 23305102
    365 DEFINE st_t0,sp,24 23345102
    366 DEFINE st_t0,sp,32 23385102
    367 DEFINE st_t0,sp,40 233C5102
    368 DEFINE st_t0,sp,48 23305104
    369 DEFINE st_t1,a0,0 23306500
    370 DEFINE st_t1,a0,24 233C6500
    371 DEFINE st_t1,a1,0 23B06500
    372 DEFINE st_t1,a3,0 23B06600
    373 DEFINE st_t1,a3,8 23B46600
    374 DEFINE st_t1,a3,16 23B86600
    375 DEFINE st_t1,a3,24 23BC6600
    376 DEFINE st_t1,t0,0 23B06200
    377 DEFINE st_t2,a0,0 23307500
    378 DEFINE st_t2,a1,0 23B07500
    379 DEFINE st_t2,a2,0 23307600
    380 DEFINE st_t2,a3,0 23B07600
    381 DEFINE st_t2,t0,0 23B07200
    382 DEFINE st_t2,t1,0 23307300
    383 DEFINE lb_a0,a0,0 03450500
    384 DEFINE lb_a0,t0,0 03C50200
    385 DEFINE lb_a1,a1,0 83C50500
    386 DEFINE lb_a1,a3,0 83C50600
    387 DEFINE lb_a1,a3,1 83C51600
    388 DEFINE lb_a1,t0,0 83C50200
    389 DEFINE lb_a1,t0,1 83C51200
    390 DEFINE lb_a2,a1,0 03C60500
    391 DEFINE lb_a2,a2,0 03460600
    392 DEFINE lb_a2,t0,0 03C60200
    393 DEFINE lb_a3,a1,0 83C60500
    394 DEFINE lb_a3,a2,0 83460600
    395 DEFINE lb_a3,a3,0 83C60600
    396 DEFINE lb_t0,a3,0 83C20600
    397 DEFINE lb_t0,a3,1 83C21600
    398 DEFINE lb_t0,a3,2 83C22600
    399 DEFINE lb_t0,t0,0 83C20200
    400 DEFINE lb_t1,t1,0 03430300
    401 DEFINE lb_t2,t0,0 83C30200
    402 DEFINE lb_t2,t2,0 83C30300
    403 DEFINE sb_a0,a1,0 2380A500
    404 DEFINE sb_a0,a2,0 2300A600
    405 DEFINE sb_a0,t2,0 2380A300
    406 DEFINE sb_a1,a2,0 2300B600
    407 DEFINE sb_a2,a0,0 2300C500
    408 DEFINE sb_a2,a1,0 2380C500
    409 DEFINE sb_a2,a3,0 2380C600
    410 DEFINE sb_a2,t2,0 2380C300
    411 DEFINE sb_a3,a0,0 2300D500
    412 DEFINE sb_a3,a1,0 2380D500
    413 DEFINE sb_a3,a2,0 2300D600
    414 DEFINE sb_a3,t2,0 2380D300
    415 DEFINE sb_t1,a0,0 23006500
    416 DEFINE sb_t1,a2,0 23006600
    417 DEFINE sb_t2,a0,0 23007500
    418 DEFINE sb_t2,a1,0 23807500
    419 DEFINE sb_t2,a2,0 23007600
    420 
    421 ## ---- ABI Access
    422 
    423 ## ---- Branches
    424 DEFINE b 67800F00
    425 DEFINE beq_a0,a1 6314B50067800F00
    426 DEFINE beq_a0,t0 6314550067800F00
    427 DEFINE beq_a0,t1 6314650067800F00
    428 DEFINE beq_a1,a2 6394C50067800F00
    429 DEFINE beq_a2,a1 6314B60067800F00
    430 DEFINE beq_a2,a3 6314D60067800F00
    431 DEFINE beq_a3,a2 6394C60067800F00
    432 DEFINE beq_a3,t0 6394560067800F00
    433 DEFINE beq_a3,t1 6394660067800F00
    434 DEFINE beq_t0,a0 6394A20067800F00
    435 DEFINE beq_t0,a1 6394B20067800F00
    436 DEFINE beq_t0,a2 6394C20067800F00
    437 DEFINE beq_t0,t1 6394620067800F00
    438 DEFINE beq_t0,t2 6394720067800F00
    439 DEFINE beq_t1,a0 6314A30067800F00
    440 DEFINE beq_t1,a1 6314B30067800F00
    441 DEFINE beq_t1,a2 6314C30067800F00
    442 DEFINE beq_t1,t0 6314530067800F00
    443 DEFINE beq_t1,t2 6314730067800F00
    444 DEFINE beq_t2,a0 6394A30067800F00
    445 DEFINE beq_t2,a2 6394C30067800F00
    446 DEFINE beq_t2,a3 6394D30067800F00
    447 DEFINE beq_t2,t0 6394530067800F00
    448 DEFINE beq_t2,t1 6394630067800F00
    449 DEFINE bne_a0,t0 6304550067800F00
    450 DEFINE bne_a1,a2 6384C50067800F00
    451 DEFINE bne_a1,t0 6384550067800F00
    452 DEFINE bne_a2,a3 6304D60067800F00
    453 DEFINE bne_a3,a0 6384A60067800F00
    454 DEFINE bne_a3,a2 6384C60067800F00
    455 DEFINE bne_a3,t0 6384560067800F00
    456 DEFINE bne_t0,t1 6384620067800F00
    457 DEFINE bne_t0,t2 6384720067800F00
    458 DEFINE bne_t1,a2 6304C30067800F00
    459 DEFINE bne_t1,a3 6304D30067800F00
    460 DEFINE bne_t1,t2 6304730067800F00
    461 DEFINE bne_t2,a2 6384C30067800F00
    462 DEFINE bne_t2,a3 6384D30067800F00
    463 DEFINE bne_t2,t0 6384530067800F00
    464 DEFINE blt_a0,a2 6354C50067800F00
    465 DEFINE blt_a1,a0 63D4A50067800F00
    466 DEFINE blt_a1,a2 63D4C50067800F00
    467 DEFINE blt_a1,t2 63D4750067800F00
    468 DEFINE blt_a2,a1 6354B60067800F00
    469 DEFINE blt_a2,a3 6354D60067800F00
    470 DEFINE blt_a2,t0 6354560067800F00
    471 DEFINE blt_a2,t1 6354660067800F00
    472 DEFINE blt_a2,t2 6354760067800F00
    473 DEFINE blt_a3,a2 63D4C60067800F00
    474 DEFINE blt_a3,t2 63D4760067800F00
    475 DEFINE blt_t0,t1 63D4620067800F00
    476 DEFINE blt_t0,t2 63D4720067800F00
    477 DEFINE blt_t1,a1 6354B30067800F00
    478 DEFINE blt_t1,t0 6354530067800F00
    479 DEFINE blt_t2,a3 63D4D30067800F00
    480 DEFINE blt_t2,t1 63D4630067800F00
    481 DEFINE bltu_t0,t1 63F4620067800F00
    482 DEFINE beqz_a0 6314050067800F00
    483 DEFINE beqz_a1 6394050067800F00
    484 DEFINE beqz_a2 6314060067800F00
    485 DEFINE beqz_a3 6394060067800F00
    486 DEFINE beqz_t0 6394020067800F00
    487 DEFINE beqz_t1 6314030067800F00
    488 DEFINE beqz_t2 6394030067800F00
    489 DEFINE bnez_a0 6304050067800F00
    490 DEFINE bnez_a1 6384050067800F00
    491 DEFINE bnez_a2 6304060067800F00
    492 DEFINE bnez_t0 6384020067800F00
    493 DEFINE bnez_t1 6304030067800F00
    494 DEFINE bnez_t2 6384030067800F00
    495 DEFINE bltz_a0 6354050067800F00
    496 DEFINE bltz_t0 63D4020067800F00
    497 
    498 ## ---- Calls And Returns
    499 DEFINE call E7800F00
    500 DEFINE ret 67800000
    501 DEFINE eret 83300100033481001301040067800000
    502 DEFINE tail 83300100033481001301040067800F00
    503 
    504 ## ---- Frame Management
    505 DEFINE enter_0 130101FF233011001304010123348100
    506 DEFINE enter_8 130101FE233011001304010223348100
    507 DEFINE enter_16 130101FE233011001304010223348100
    508 DEFINE enter_40 130101FC233011001304010423348100
    509 DEFINE enter_56 130101FB233011001304010523348100
    510 
    511 ## ---- System
    512 DEFINE syscall 938E0500130E0600138806009308050013850E0093050E00130608009386020013870400930709007300000093850E0013060E0093060800
    513 DEFINE sys_close 3900000000000000
    514 DEFINE sys_exit 5D00000000000000
    515 DEFINE sys_openat 3800000000000000
    516 DEFINE sys_read 3F00000000000000
    517 DEFINE sys_write 4000000000000000
    518 
    519 ## ---- Program Entry
    520 ## Backend-owned :_start stub per docs/P1.md §Program Entry.
    521 ## Calls p1_main under the one-word direct-result convention
    522 ## (a0=argc, a1=argv) and sys_exits its return value.
    523 :_start
    524 '03350100'
    525 '93058100'
    526 '970F000083EFCF006F008000'
    527 &p1_main
    528 'E7800F00'
    529 '9308D005'
    530 '73000000'