P1-amd64.M1 (16172B)
1 ## amd64.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 48BF 9 DEFINE li_a1 48BE 10 DEFINE li_a2 48BA 11 DEFINE li_a3 48B9 12 DEFINE li_t0 49BA 13 DEFINE li_t1 49BB 14 DEFINE li_t2 49B8 15 DEFINE la_a0 BF 16 DEFINE la_a1 BE 17 DEFINE la_a2 BA 18 DEFINE la_a3 B9 19 DEFINE la_t0 41BA 20 DEFINE la_t1 41BB 21 DEFINE la_t2 41B8 22 DEFINE la_br 41BF 23 24 ## ---- Moves 25 DEFINE mov_a0,a1 4889F7 26 DEFINE mov_a0,a3 4889CF 27 DEFINE mov_a0,t0 4C89D7 28 DEFINE mov_a0,t1 4C89DF 29 DEFINE mov_a0,t2 4C89C7 30 DEFINE mov_a1,a0 4889FE 31 DEFINE mov_a1,t0 4C89D6 32 DEFINE mov_a1,t1 4C89DE 33 DEFINE mov_a1,t2 4C89C6 34 DEFINE mov_a2,a1 4889F2 35 DEFINE mov_a2,t0 4C89D2 36 DEFINE mov_a2,t1 4C89DA 37 DEFINE mov_a3,t0 4C89D1 38 DEFINE mov_a3,t1 4C89D9 39 DEFINE mov_t0,a0 4989FA 40 DEFINE mov_t1,a0 4989FB 41 DEFINE mov_t2,a0 4989F8 42 DEFINE mov_t2,t1 4D89D8 43 44 ## ---- Register Arithmetic 45 DEFINE add_a0,a0,a1 4889FF4801F7 46 DEFINE add_a0,a0,a2 4889FF4801D7 47 DEFINE add_a0,a0,t0 4889FF4C01D7 48 DEFINE add_a0,a0,t1 4889FF4C01DF 49 DEFINE add_a0,a0,t2 4889FF4C01C7 50 DEFINE add_a0,a2,a0 4989F94889D74C01CF 51 DEFINE add_a0,a2,t2 4889D74C01C7 52 DEFINE add_a0,t0,a3 4C89D74801CF 53 DEFINE add_a0,t1,a0 4989F94C89DF4C01CF 54 DEFINE add_a0,t1,t2 4C89DF4C01C7 55 DEFINE add_a0,t2,a1 4C89C74801F7 56 DEFINE add_a1,a0,a1 4989F14889FE4C01CE 57 DEFINE add_a1,a1,a0 4889F64801FE 58 DEFINE add_a1,a1,a2 4889F64801D6 59 DEFINE add_a1,a1,a3 4889F64801CE 60 DEFINE add_a1,a1,t0 4889F64C01D6 61 DEFINE add_a1,a1,t1 4889F64C01DE 62 DEFINE add_a1,a2,a1 4989F14889D64C01CE 63 DEFINE add_a1,a2,a3 4889D64801CE 64 DEFINE add_a1,a2,t0 4889D64C01D6 65 DEFINE add_a1,a3,a1 4989F14889CE4C01CE 66 DEFINE add_a1,t0,a0 4C89D64801FE 67 DEFINE add_a1,t2,a1 4989F14C89C64C01CE 68 DEFINE add_a1,t2,a3 4C89C64801CE 69 DEFINE add_a1,t2,t1 4C89C64C01DE 70 DEFINE add_a2,a1,a3 4889F24801CA 71 DEFINE add_a2,a1,t0 4889F24C01D2 72 DEFINE add_a2,a2,a0 4889D24801FA 73 DEFINE add_a2,a2,a3 4889D24801CA 74 DEFINE add_a2,a2,t0 4889D24C01D2 75 DEFINE add_a2,a2,t1 4889D24C01DA 76 DEFINE add_a2,a3,a2 4989D14889CA4C01CA 77 DEFINE add_a2,t0,t1 4C89D24C01DA 78 DEFINE add_a2,t1,t2 4C89DA4C01C2 79 DEFINE add_a2,t2,a0 4C89C24801FA 80 DEFINE add_a2,t2,a2 4989D14C89C24C01CA 81 DEFINE add_a3,a0,a2 4889F94801D1 82 DEFINE add_a3,a1,t1 4889F14C01D9 83 DEFINE add_a3,a1,t2 4889F14C01C1 84 DEFINE add_a3,a3,a1 4889C94801F1 85 DEFINE add_a3,a3,a2 4889C94801D1 86 DEFINE add_a3,a3,t0 4889C94C01D1 87 DEFINE add_a3,a3,t1 4889C94C01D9 88 DEFINE add_a3,a3,t2 4889C94C01C1 89 DEFINE add_a3,t0,t2 4C89D14C01C1 90 DEFINE add_a3,t1,a2 4C89D94801D1 91 DEFINE add_t0,a1,t2 4989F24D01C2 92 DEFINE add_t0,a3,a1 4989CA4901F2 93 DEFINE add_t0,t0,a0 4D89D24901FA 94 DEFINE add_t0,t0,a1 4D89D24901F2 95 DEFINE add_t0,t0,a3 4D89D24901CA 96 DEFINE add_t0,t0,t1 4D89D24D01DA 97 DEFINE add_t1,a0,t0 4989FB4D01D3 98 DEFINE add_t1,t0,t1 4D89D94D89D34D01CB 99 DEFINE add_t1,t1,a0 4D89DB4901FB 100 DEFINE add_t1,t1,a1 4D89DB4901F3 101 DEFINE add_t1,t1,a2 4D89DB4901D3 102 DEFINE add_t1,t1,t2 4D89DB4D01C3 103 DEFINE add_t2,a0,t0 4989F84D01D0 104 DEFINE add_t2,a0,t1 4989F84D01D8 105 DEFINE add_t2,a1,a3 4989F04901C8 106 DEFINE add_t2,a1,t2 4D89C14989F04D01C8 107 DEFINE add_t2,a2,t1 4989D04D01D8 108 DEFINE add_t2,t0,t1 4D89D04D01D8 109 DEFINE add_t2,t1,t2 4D89C14D89D84D01C8 110 DEFINE add_t2,t2,a0 4D89C04901F8 111 DEFINE add_t2,t2,a3 4D89C04901C8 112 DEFINE sub_a0,a0,t1 4889FF4C29DF 113 DEFINE sub_a0,a1,t2 4889F74C29C7 114 DEFINE sub_a0,a3,a0 4989F94889CF4C29CF 115 DEFINE sub_a1,t0,a0 4C89D64829FE 116 DEFINE sub_a2,a1,a0 4889F24829FA 117 DEFINE sub_a2,a2,a2 4989D14889D24C29CA 118 DEFINE sub_a2,a2,t0 4889D24C29D2 119 DEFINE sub_a2,t0,t1 4C89D24C29DA 120 DEFINE sub_a2,t2,a3 4C89C24829CA 121 DEFINE sub_a3,a3,a1 4889C94829F1 122 DEFINE sub_a3,a3,a2 4889C94829D1 123 DEFINE sub_a3,t0,a2 4C89D14829D1 124 DEFINE sub_a3,t0,a3 4989C94C89D14C29C9 125 DEFINE sub_a3,t0,t1 4C89D14C29D9 126 DEFINE sub_a3,t1,a2 4C89D94829D1 127 DEFINE sub_a3,t1,t0 4C89D94C29D1 128 DEFINE sub_a3,t2,t1 4C89C14C29D9 129 DEFINE sub_t0,a1,a2 4989F24929D2 130 DEFINE sub_t0,t0,a0 4D89D24929FA 131 DEFINE sub_t0,t0,a1 4D89D24929F2 132 DEFINE sub_t0,t0,t1 4D89D24D29DA 133 DEFINE sub_t2,t1,t0 4D89D84D29D0 134 DEFINE and_a3,a3,a2 4889C94821D1 135 DEFINE or_a0,a0,a1 4889FF4809F7 136 DEFINE or_a0,a0,a2 4889FF4809D7 137 DEFINE or_a3,a3,a2 4889C94809D1 138 DEFINE xor_a2,a2,a3 4889D24831CA 139 DEFINE xor_a3,a3,a2 4889C94831D1 140 DEFINE shl_a2,a2,a3 4889CD4989D14889C949D3E14889E94C89CA 141 DEFINE sar_a2,a2,a3 4889CD4989D14889C949D3F94889E94C89CA 142 DEFINE mul_a0,a0,a3 4889FF480FAFF9 143 DEFINE mul_a0,t1,t2 4C89DF490FAFF8 144 DEFINE mul_a1,a1,a3 4889F6480FAFF1 145 DEFINE mul_a2,a2,t0 4889D2490FAFD2 146 DEFINE mul_a3,a3,a2 4889C9480FAFCA 147 DEFINE mul_t0,t0,a1 4D89D24C0FAFD6 148 DEFINE mul_t0,t0,a2 4D89D24C0FAFD2 149 DEFINE mul_t1,t1,a3 4D89DB4C0FAFD9 150 DEFINE mul_t2,t0,a2 4D89D04C0FAFC2 151 DEFINE div_a0,a0,a1 4889D54989F14889F8489949F7F94889EA4889C7 152 DEFINE div_a2,a2,a3 4889D54989C94889D0489949F7F94889EA4889C2 153 DEFINE rem_a2,a0,a1 4889D54989F14889F8489949F7F94889D04889EA4889C2 154 DEFINE rem_a2,a2,a3 4889D54989C94889D0489949F7F94889D04889EA4889C2 155 156 ## ---- Immediate Arithmetic 157 DEFINE addi_a0,a0,neg1 4889FF4883C7FF 158 DEFINE addi_a0,a0,1 4889FF4883C701 159 DEFINE addi_a0,a0,24 4889FF4883C718 160 DEFINE addi_a1,a1,neg48 4889F64883C6D0 161 DEFINE addi_a1,a1,neg24 4889F64883C6E8 162 DEFINE addi_a1,a1,neg2 4889F64883C6FE 163 DEFINE addi_a1,a1,1 4889F64883C601 164 DEFINE addi_a1,a1,2 4889F64883C602 165 DEFINE addi_a1,a1,3 4889F64883C603 166 DEFINE addi_a1,t0,1 4C89D64883C601 167 DEFINE addi_a2,a0,1 4889FA4883C201 168 DEFINE addi_a2,a2,neg1 4889D24883C2FF 169 DEFINE addi_a2,a2,1 4889D24883C201 170 DEFINE addi_a2,a2,2 4889D24883C202 171 DEFINE addi_a2,a2,3 4889D24883C203 172 DEFINE addi_a2,a2,8 4889D24883C208 173 DEFINE addi_a2,a2,24 4889D24883C218 174 DEFINE addi_a2,a2,48 4889D24883C230 175 DEFINE addi_a2,t0,1 4C89D24883C201 176 DEFINE addi_a2,t2,neg48 4C89C24883C2D0 177 DEFINE addi_a3,a3,1 4889C94883C101 178 DEFINE addi_a3,a3,24 4889C94883C118 179 DEFINE addi_t0,a1,neg24 4989F24983C2E8 180 DEFINE addi_t0,a1,24 4989F24983C218 181 DEFINE addi_t0,t0,neg1 4D89D24983C2FF 182 DEFINE addi_t0,t0,1 4D89D24983C201 183 DEFINE addi_t0,t0,2 4D89D24983C202 184 DEFINE addi_t0,t0,24 4D89D24983C218 185 DEFINE addi_t0,t0,48 4D89D24983C230 186 DEFINE addi_t1,t0,24 4D89D34983C318 187 DEFINE addi_t1,t1,neg24 4D89DB4983C3E8 188 DEFINE addi_t1,t1,neg1 4D89DB4983C3FF 189 DEFINE addi_t1,t1,1 4D89DB4983C301 190 DEFINE addi_t1,t1,16 4D89DB4983C310 191 DEFINE addi_t1,t1,24 4D89DB4983C318 192 DEFINE addi_t2,a1,neg24 4989F04983C0E8 193 DEFINE addi_t2,t0,neg24 4D89D04983C0E8 194 DEFINE addi_t2,t0,24 4D89D04983C018 195 DEFINE addi_t2,t1,2 4D89D84983C002 196 DEFINE addi_t2,t2,neg1 4D89C04983C0FF 197 DEFINE addi_t2,t2,1 4D89C04983C001 198 DEFINE addi_t2,t2,24 4D89C04983C018 199 DEFINE andi_a2,a0,15 4889FA4883E20F 200 DEFINE andi_a2,a1,15 4889F24883E20F 201 DEFINE andi_a2,a2,15 4889D24883E20F 202 DEFINE andi_a3,a3,15 4889C94883E10F 203 DEFINE andi_a3,t2,255 4C89C14881E1FF000000 204 DEFINE shli_a0,a0,3 4889FF48C1E703 205 DEFINE shli_a0,a0,4 4889FF48C1E704 206 DEFINE shli_a1,a1,1 4889F648C1E601 207 DEFINE shli_a2,t1,3 4C89DA48C1E203 208 DEFINE shli_a3,t0,1 4C89D148C1E101 209 DEFINE shli_a3,t0,4 4C89D148C1E104 210 DEFINE shli_t1,a2,3 4989D349C1E303 211 DEFINE shli_t2,t0,3 4D89D049C1E003 212 DEFINE shri_a0,a0,6 4889FF48C1EF06 213 DEFINE shri_a1,a1,6 4889F648C1EE06 214 DEFINE shri_a2,a3,4 4889CA48C1EA04 215 DEFINE shri_t2,t2,8 4D89C049C1E808 216 217 ## ---- Memory 218 DEFINE ld_a0,a0,0 488B7F00 219 DEFINE ld_a0,a0,8 488B7F08 220 DEFINE ld_a0,a0,16 488B7F10 221 DEFINE ld_a0,a1,0 488B7E00 222 DEFINE ld_a0,a2,0 488B7A00 223 DEFINE ld_a0,a3,0 488B7900 224 DEFINE ld_a0,a3,8 488B7908 225 DEFINE ld_a0,a3,16 488B7910 226 DEFINE ld_a0,t0,0 498B7A00 227 DEFINE ld_a0,sp,0 488B7C2410 228 DEFINE ld_a0,sp,8 488B7C2418 229 DEFINE ld_a0,sp,24 488B7C2428 230 DEFINE ld_a1,a0,0 488B7700 231 DEFINE ld_a1,a0,8 488B7708 232 DEFINE ld_a1,a0,24 488B7718 233 DEFINE ld_a1,a1,0 488B7600 234 DEFINE ld_a1,a2,8 488B7208 235 DEFINE ld_a1,a3,8 488B7108 236 DEFINE ld_a1,t0,0 498B7200 237 DEFINE ld_a1,t0,8 498B7208 238 DEFINE ld_a1,t0,16 498B7210 239 DEFINE ld_a1,t1,0 498B7300 240 DEFINE ld_a1,t2,16 498B7010 241 DEFINE ld_a1,sp,8 488B742418 242 DEFINE ld_a2,a0,0 488B5700 243 DEFINE ld_a2,a0,8 488B5708 244 DEFINE ld_a2,a0,16 488B5710 245 DEFINE ld_a2,a1,0 488B5600 246 DEFINE ld_a2,a1,8 488B5608 247 DEFINE ld_a2,a2,0 488B5200 248 DEFINE ld_a2,t0,0 498B5200 249 DEFINE ld_a2,t0,8 498B5208 250 DEFINE ld_a2,t0,16 498B5210 251 DEFINE ld_a2,t1,neg24 498B53E8 252 DEFINE ld_a2,t1,0 498B5300 253 DEFINE ld_a2,t2,0 498B5000 254 DEFINE ld_a2,sp,16 488B542420 255 DEFINE ld_a3,a0,0 488B4F00 256 DEFINE ld_a3,a0,8 488B4F08 257 DEFINE ld_a3,a0,16 488B4F10 258 DEFINE ld_a3,a1,0 488B4E00 259 DEFINE ld_a3,a1,8 488B4E08 260 DEFINE ld_a3,a2,0 488B4A00 261 DEFINE ld_a3,a3,0 488B4900 262 DEFINE ld_a3,t0,0 498B4A00 263 DEFINE ld_a3,t0,8 498B4A08 264 DEFINE ld_a3,t0,16 498B4A10 265 DEFINE ld_a3,t1,8 498B4B08 266 DEFINE ld_t0,a0,0 4C8B5700 267 DEFINE ld_t0,a0,8 4C8B5708 268 DEFINE ld_t0,a0,16 4C8B5710 269 DEFINE ld_t0,a1,0 4C8B5600 270 DEFINE ld_t0,a1,8 4C8B5608 271 DEFINE ld_t0,a1,16 4C8B5610 272 DEFINE ld_t0,a1,24 4C8B5618 273 DEFINE ld_t0,a1,32 4C8B5620 274 DEFINE ld_t0,a2,0 4C8B5200 275 DEFINE ld_t0,a3,0 4C8B5100 276 DEFINE ld_t0,t0,0 4D8B5200 277 DEFINE ld_t0,t1,8 4D8B5308 278 DEFINE ld_t0,t1,16 4D8B5310 279 DEFINE ld_t0,t2,16 4D8B5010 280 DEFINE ld_t0,sp,0 4C8B542410 281 DEFINE ld_t0,sp,8 4C8B542418 282 DEFINE ld_t0,sp,16 4C8B542420 283 DEFINE ld_t0,sp,24 4C8B542428 284 DEFINE ld_t0,sp,32 4C8B542430 285 DEFINE ld_t0,sp,40 4C8B542438 286 DEFINE ld_t1,a0,0 4C8B5F00 287 DEFINE ld_t1,a0,8 4C8B5F08 288 DEFINE ld_t1,a0,16 4C8B5F10 289 DEFINE ld_t1,a1,0 4C8B5E00 290 DEFINE ld_t1,a1,8 4C8B5E08 291 DEFINE ld_t1,a1,16 4C8B5E10 292 DEFINE ld_t1,a2,8 4C8B5A08 293 DEFINE ld_t1,a2,16 4C8B5A10 294 DEFINE ld_t1,a3,0 4C8B5900 295 DEFINE ld_t1,a3,8 4C8B5908 296 DEFINE ld_t1,t0,0 4D8B5A00 297 DEFINE ld_t1,t0,16 4D8B5A10 298 DEFINE ld_t1,t1,0 4D8B5B00 299 DEFINE ld_t1,t1,16 4D8B5B10 300 DEFINE ld_t1,sp,8 4C8B5C2418 301 DEFINE ld_t1,sp,32 4C8B5C2430 302 DEFINE ld_t1,sp,48 4C8B5C2440 303 DEFINE ld_t2,a0,0 4C8B4700 304 DEFINE ld_t2,a1,0 4C8B4600 305 DEFINE ld_t2,a3,16 4C8B4110 306 DEFINE ld_t2,t0,0 4D8B4200 307 DEFINE ld_t2,t1,0 4D8B4300 308 DEFINE ld_t2,t2,0 4D8B4000 309 DEFINE ld_t2,sp,16 4C8B442420 310 DEFINE st_a0,a1,0 48897E00 311 DEFINE st_a0,a2,0 48897A00 312 DEFINE st_a0,a2,8 48897A08 313 DEFINE st_a0,a2,16 48897A10 314 DEFINE st_a0,a3,0 48897900 315 DEFINE st_a0,a3,8 48897908 316 DEFINE st_a0,a3,16 48897910 317 DEFINE st_a0,t0,0 49897A00 318 DEFINE st_a0,t0,8 49897A08 319 DEFINE st_a0,t2,0 49897800 320 DEFINE st_a0,t2,8 49897808 321 DEFINE st_a0,t2,16 49897810 322 DEFINE st_a0,sp,0 48897C2410 323 DEFINE st_a0,sp,16 48897C2420 324 DEFINE st_a1,a0,0 48897700 325 DEFINE st_a1,a2,0 48897200 326 DEFINE st_a1,a2,16 48897210 327 DEFINE st_a1,a3,0 48897100 328 DEFINE st_a1,a3,8 48897108 329 DEFINE st_a1,t0,0 49897200 330 DEFINE st_a1,t0,8 49897208 331 DEFINE st_a1,t0,16 49897210 332 DEFINE st_a1,t1,0 49897300 333 DEFINE st_a1,t1,8 49897308 334 DEFINE st_a1,t1,16 49897310 335 DEFINE st_a1,t2,16 49897010 336 DEFINE st_a1,sp,8 4889742418 337 DEFINE st_a1,sp,16 4889742420 338 DEFINE st_a2,a0,0 48895700 339 DEFINE st_a2,a1,0 48895600 340 DEFINE st_a2,a3,0 48895100 341 DEFINE st_a2,a3,16 48895110 342 DEFINE st_a2,a3,32 48895120 343 DEFINE st_a2,t0,0 49895200 344 DEFINE st_a2,t0,16 49895210 345 DEFINE st_a2,t1,0 49895300 346 DEFINE st_a2,t2,0 49895000 347 DEFINE st_a3,a0,0 48894F00 348 DEFINE st_a3,a2,0 48894A00 349 DEFINE st_a3,t0,0 49894A00 350 DEFINE st_a3,t1,8 49894B08 351 DEFINE st_a3,t2,0 49894800 352 DEFINE st_a3,t2,8 49894808 353 DEFINE st_a3,t2,16 49894810 354 DEFINE st_t0,a0,0 4C895700 355 DEFINE st_t0,a0,16 4C895710 356 DEFINE st_t0,a0,24 4C895718 357 DEFINE st_t0,a1,0 4C895600 358 DEFINE st_t0,a2,0 4C895200 359 DEFINE st_t0,a3,0 4C895100 360 DEFINE st_t0,a3,8 4C895108 361 DEFINE st_t0,t1,0 4D895300 362 DEFINE st_t0,sp,0 4C89542410 363 DEFINE st_t0,sp,8 4C89542418 364 DEFINE st_t0,sp,16 4C89542420 365 DEFINE st_t0,sp,24 4C89542428 366 DEFINE st_t0,sp,32 4C89542430 367 DEFINE st_t0,sp,40 4C89542438 368 DEFINE st_t0,sp,48 4C89542440 369 DEFINE st_t1,a0,0 4C895F00 370 DEFINE st_t1,a0,24 4C895F18 371 DEFINE st_t1,a1,0 4C895E00 372 DEFINE st_t1,a3,0 4C895900 373 DEFINE st_t1,a3,8 4C895908 374 DEFINE st_t1,a3,16 4C895910 375 DEFINE st_t1,a3,24 4C895918 376 DEFINE st_t1,t0,0 4D895A00 377 DEFINE st_t2,a0,0 4C894700 378 DEFINE st_t2,a1,0 4C894600 379 DEFINE st_t2,a2,0 4C894200 380 DEFINE st_t2,a3,0 4C894100 381 DEFINE st_t2,t0,0 4D894200 382 DEFINE st_t2,t1,0 4D894300 383 DEFINE lb_a0,a0,0 480FB67F00 384 DEFINE lb_a0,t0,0 490FB67A00 385 DEFINE lb_a1,a1,0 480FB67600 386 DEFINE lb_a1,a3,0 480FB67100 387 DEFINE lb_a1,a3,1 480FB67101 388 DEFINE lb_a1,t0,0 490FB67200 389 DEFINE lb_a1,t0,1 490FB67201 390 DEFINE lb_a2,a1,0 480FB65600 391 DEFINE lb_a2,a2,0 480FB65200 392 DEFINE lb_a2,t0,0 490FB65200 393 DEFINE lb_a3,a1,0 480FB64E00 394 DEFINE lb_a3,a2,0 480FB64A00 395 DEFINE lb_a3,a3,0 480FB64900 396 DEFINE lb_t0,a3,0 4C0FB65100 397 DEFINE lb_t0,a3,1 4C0FB65101 398 DEFINE lb_t0,a3,2 4C0FB65102 399 DEFINE lb_t0,t0,0 4D0FB65200 400 DEFINE lb_t1,t1,0 4D0FB65B00 401 DEFINE lb_t2,t0,0 4D0FB64200 402 DEFINE lb_t2,t2,0 4D0FB64000 403 DEFINE sb_a0,a1,0 48887E00 404 DEFINE sb_a0,a2,0 48887A00 405 DEFINE sb_a0,t2,0 49887800 406 DEFINE sb_a1,a2,0 48887200 407 DEFINE sb_a2,a0,0 48885700 408 DEFINE sb_a2,a1,0 48885600 409 DEFINE sb_a2,a3,0 48885100 410 DEFINE sb_a2,t2,0 49885000 411 DEFINE sb_a3,a0,0 48884F00 412 DEFINE sb_a3,a1,0 48884E00 413 DEFINE sb_a3,a2,0 48884A00 414 DEFINE sb_a3,t2,0 49884800 415 DEFINE sb_t1,a0,0 4C885F00 416 DEFINE sb_t1,a2,0 4C885A00 417 DEFINE sb_t2,a0,0 4C884700 418 DEFINE sb_t2,a1,0 4C884600 419 DEFINE sb_t2,a2,0 4C884200 420 421 ## ---- ABI Access 422 423 ## ---- Branches 424 DEFINE b 41FFE7 425 DEFINE beq_a0,a1 4839F7750341FFE7 426 DEFINE beq_a0,t0 4C39D7750341FFE7 427 DEFINE beq_a0,t1 4C39DF750341FFE7 428 DEFINE beq_a1,a2 4839D6750341FFE7 429 DEFINE beq_a2,a1 4839F2750341FFE7 430 DEFINE beq_a2,a3 4839CA750341FFE7 431 DEFINE beq_a3,a2 4839D1750341FFE7 432 DEFINE beq_a3,t0 4C39D1750341FFE7 433 DEFINE beq_a3,t1 4C39D9750341FFE7 434 DEFINE beq_t0,a0 4939FA750341FFE7 435 DEFINE beq_t0,a1 4939F2750341FFE7 436 DEFINE beq_t0,a2 4939D2750341FFE7 437 DEFINE beq_t0,t1 4D39DA750341FFE7 438 DEFINE beq_t0,t2 4D39C2750341FFE7 439 DEFINE beq_t1,a0 4939FB750341FFE7 440 DEFINE beq_t1,a1 4939F3750341FFE7 441 DEFINE beq_t1,a2 4939D3750341FFE7 442 DEFINE beq_t1,t0 4D39D3750341FFE7 443 DEFINE beq_t1,t2 4D39C3750341FFE7 444 DEFINE beq_t2,a0 4939F8750341FFE7 445 DEFINE beq_t2,a2 4939D0750341FFE7 446 DEFINE beq_t2,a3 4939C8750341FFE7 447 DEFINE beq_t2,t0 4D39D0750341FFE7 448 DEFINE beq_t2,t1 4D39D8750341FFE7 449 DEFINE bne_a0,t0 4C39D7740341FFE7 450 DEFINE bne_a1,a2 4839D6740341FFE7 451 DEFINE bne_a1,t0 4C39D6740341FFE7 452 DEFINE bne_a2,a3 4839CA740341FFE7 453 DEFINE bne_a3,a0 4839F9740341FFE7 454 DEFINE bne_a3,a2 4839D1740341FFE7 455 DEFINE bne_a3,t0 4C39D1740341FFE7 456 DEFINE bne_t0,t1 4D39DA740341FFE7 457 DEFINE bne_t0,t2 4D39C2740341FFE7 458 DEFINE bne_t1,a2 4939D3740341FFE7 459 DEFINE bne_t1,a3 4939CB740341FFE7 460 DEFINE bne_t1,t2 4D39C3740341FFE7 461 DEFINE bne_t2,a2 4939D0740341FFE7 462 DEFINE bne_t2,a3 4939C8740341FFE7 463 DEFINE bne_t2,t0 4D39D0740341FFE7 464 DEFINE blt_a0,a2 4839D77D0341FFE7 465 DEFINE blt_a1,a0 4839FE7D0341FFE7 466 DEFINE blt_a1,a2 4839D67D0341FFE7 467 DEFINE blt_a1,t2 4C39C67D0341FFE7 468 DEFINE blt_a2,a1 4839F27D0341FFE7 469 DEFINE blt_a2,a3 4839CA7D0341FFE7 470 DEFINE blt_a2,t0 4C39D27D0341FFE7 471 DEFINE blt_a2,t1 4C39DA7D0341FFE7 472 DEFINE blt_a2,t2 4C39C27D0341FFE7 473 DEFINE blt_a3,a2 4839D17D0341FFE7 474 DEFINE blt_a3,t2 4C39C17D0341FFE7 475 DEFINE blt_t0,t1 4D39DA7D0341FFE7 476 DEFINE blt_t0,t2 4D39C27D0341FFE7 477 DEFINE blt_t1,a1 4939F37D0341FFE7 478 DEFINE blt_t1,t0 4D39D37D0341FFE7 479 DEFINE blt_t2,a3 4939C87D0341FFE7 480 DEFINE blt_t2,t1 4D39D87D0341FFE7 481 DEFINE bltu_t0,t1 4D39DA730341FFE7 482 DEFINE beqz_a0 4885FF750341FFE7 483 DEFINE beqz_a1 4885F6750341FFE7 484 DEFINE beqz_a2 4885D2750341FFE7 485 DEFINE beqz_a3 4885C9750341FFE7 486 DEFINE beqz_t0 4D85D2750341FFE7 487 DEFINE beqz_t1 4D85DB750341FFE7 488 DEFINE beqz_t2 4D85C0750341FFE7 489 DEFINE bnez_a0 4885FF740341FFE7 490 DEFINE bnez_a1 4885F6740341FFE7 491 DEFINE bnez_a2 4885D2740341FFE7 492 DEFINE bnez_t0 4D85D2740341FFE7 493 DEFINE bnez_t1 4D85DB740341FFE7 494 DEFINE bnez_t2 4D85C0740341FFE7 495 DEFINE bltz_a0 4885FF7D0341FFE7 496 DEFINE bltz_t0 4D85D27D0341FFE7 497 498 ## ---- Calls And Returns 499 DEFINE call 41FFD7 500 DEFINE ret C3 501 DEFINE eret 4C8B4C2400488B4424084889C44151C3 502 DEFINE tail 4C8B4C2400488B4424084889C4415141FFE7 503 504 ## ---- Frame Management 505 DEFINE enter_0 41594889E04881EC100000004C894C24004889442408 506 DEFINE enter_8 41594889E04881EC200000004C894C24004889442408 507 DEFINE enter_16 41594889E04881EC200000004C894C24004889442408 508 DEFINE enter_40 41594889E04881EC400000004C894C24004889442408 509 DEFINE enter_56 41594889E04881EC500000004C894C24004889442408 510 511 ## ---- System 512 DEFINE syscall 565251415341504889F8488B7C2420488B742418488B5424104989D84D89E10F054158415B595A5E4889C7 513 DEFINE sys_close 0300000000000000 514 DEFINE sys_exit 3C00000000000000 515 DEFINE sys_openat 0101000000000000 516 DEFINE sys_read 0000000000000000 517 DEFINE sys_write 0100000000000000 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 '488B7C2400' 525 '4889E64883C608' 526 '41BF' 527 &p1_main 528 '41FFD7' 529 'B83C0000000F05'