aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2011-12-12 23:11:31 +0100
committerMike Pall <mike>2011-12-12 23:11:49 +0100
commit1b0d64600485c0fcf53b34c1cb263b720a27b5ea (patch)
tree923efeaae65de8aaa13d732b37b0afc816d79a1a
parent10474987bd58a2183d848cc7ef40aa2d4e9125ba (diff)
downloadluajit-1b0d64600485c0fcf53b34c1cb263b720a27b5ea.tar.gz
luajit-1b0d64600485c0fcf53b34c1cb263b720a27b5ea.tar.bz2
luajit-1b0d64600485c0fcf53b34c1cb263b720a27b5ea.zip
FFI: Add callback support for PPC.
-rw-r--r--src/buildvm_ppc.dasc92
-rw-r--r--src/buildvm_ppc.h2549
-rw-r--r--src/lj_ccallback.c58
-rw-r--r--src/lj_errmsg.h2
4 files changed, 1521 insertions, 1180 deletions
diff --git a/src/buildvm_ppc.dasc b/src/buildvm_ppc.dasc
index 1cbf3a74..c26f3924 100644
--- a/src/buildvm_ppc.dasc
+++ b/src/buildvm_ppc.dasc
@@ -98,11 +98,14 @@
98| 98|
99|.macro saveregs 99|.macro saveregs
100| stwu sp, -CFRAME_SPACE(sp) 100| stwu sp, -CFRAME_SPACE(sp)
101| save_ 14; save_ 15; save_ 16; save_ 17; save_ 18; save_ 19 101| save_ 14; save_ 15; save_ 16
102| mflr r0; mfcr r12 102| mflr r0
103| save_ 20; save_ 21; save_ 22; save_ 23; save_ 24; save_ 25 103| save_ 17; save_ 18; save_ 19; save_ 20; save_ 21; save_ 22
104| stw r0, SAVE_LR; stw r12, SAVE_CR 104| stw r0, SAVE_LR
105| save_ 23; save_ 24; save_ 25
106| mfcr r0
105| save_ 26; save_ 27; save_ 28; save_ 29; save_ 30; save_ 31 107| save_ 26; save_ 27; save_ 28; save_ 29; save_ 30; save_ 31
108| stw r0, SAVE_CR
106|.endmacro 109|.endmacro
107| 110|
108|.macro restoreregs 111|.macro restoreregs
@@ -610,21 +613,29 @@ static void build_subroutines(BuildCtx *ctx)
610 | mr RB, BASE 613 | mr RB, BASE
611 | mr BASE, TMP2 // Restore caller BASE. 614 | mr BASE, TMP2 // Restore caller BASE.
612 | lwz LFUNC:TMP1, FRAME_FUNC(TMP2) 615 | lwz LFUNC:TMP1, FRAME_FUNC(TMP2)
613 | cmplwi TMP0, 0 616#if LJ_HASFFI
617 | cmplwi TMP0, 1
618#endif
614 | lwz PC, -16(RB) // Restore PC from [cont|PC]. 619 | lwz PC, -16(RB) // Restore PC from [cont|PC].
615 | beq >1
616 | subi TMP2, RD, 8 620 | subi TMP2, RD, 8
617 | lwz TMP1, LFUNC:TMP1->pc 621 | lwz TMP1, LFUNC:TMP1->pc
618 | stwx TISNIL, RA, TMP2 // Ensure one valid arg. 622 | stwx TISNIL, RA, TMP2 // Ensure one valid arg.
623#if LJ_HASFFI
624 | ble >1
625#endif
619 | lwz KBASE, PC2PROTO(k)(TMP1) 626 | lwz KBASE, PC2PROTO(k)(TMP1)
620 | // BASE = base, RA = resultptr, RB = meta base 627 | // BASE = base, RA = resultptr, RB = meta base
621 | mtctr TMP0 628 | mtctr TMP0
622 | bctr // Jump to continuation. 629 | bctr // Jump to continuation.
623 | 630 |
624 |1: // Tail call from C function. 631#if LJ_HASFFI
632 |1:
633 | beq ->cont_ffi_callback // cont = 1: return from FFI callback.
634 | // cont = 0: tailcall from C function.
625 | subi TMP1, RB, 16 635 | subi TMP1, RB, 16
626 | sub RC, TMP1, BASE 636 | sub RC, TMP1, BASE
627 | b ->vm_call_tail 637 | b ->vm_call_tail
638#endif
628 | 639 |
629 |->cont_cat: // RA = resultptr, RB = meta base 640 |->cont_cat: // RA = resultptr, RB = meta base
630 | lwz INS, -4(PC) 641 | lwz INS, -4(PC)
@@ -2490,7 +2501,7 @@ static void build_subroutines(BuildCtx *ctx)
2490 | lwz r0, 36(sp) 2501 | lwz r0, 36(sp)
2491 | fmul FARG1, FARG1, f15 2502 | fmul FARG1, FARG1, f15
2492 | mtlr r0 2503 | mtlr r0
2493 | fsub FARG1, f14, FARG1; 2504 | fsub FARG1, f14, FARG1
2494 | lfd f14, 16(sp); lfd f15, 24(sp); addi sp, sp, 32; blr 2505 | lfd f14, 16(sp); lfd f15, 24(sp); addi sp, sp, 32; blr
2495 |1: 2506 |1:
2496 | b extern pow 2507 | b extern pow
@@ -2527,6 +2538,71 @@ static void build_subroutines(BuildCtx *ctx)
2527 |//-- FFI helper functions ----------------------------------------------- 2538 |//-- FFI helper functions -----------------------------------------------
2528 |//----------------------------------------------------------------------- 2539 |//-----------------------------------------------------------------------
2529 | 2540 |
2541 |// Handler for callback functions. Callback slot number in r11, g in r12.
2542 |->vm_ffi_callback:
2543#if LJ_HASFFI
2544 |.type CTSTATE, CTState, PC
2545 | saveregs
2546 | lwz CTSTATE, GL:r12->ctype_state
2547 | addi DISPATCH, r12, GG_G2DISP
2548 | stw r11, CTSTATE->cb.slot
2549 | stw r3, CTSTATE->cb.gpr[0]
2550 | stfd f1, CTSTATE->cb.fpr[0]
2551 | stw r4, CTSTATE->cb.gpr[1]
2552 | stfd f2, CTSTATE->cb.fpr[1]
2553 | stw r5, CTSTATE->cb.gpr[2]
2554 | stfd f3, CTSTATE->cb.fpr[2]
2555 | stw r6, CTSTATE->cb.gpr[3]
2556 | stfd f4, CTSTATE->cb.fpr[3]
2557 | stw r7, CTSTATE->cb.gpr[4]
2558 | stfd f5, CTSTATE->cb.fpr[4]
2559 | stw r8, CTSTATE->cb.gpr[5]
2560 | stfd f6, CTSTATE->cb.fpr[5]
2561 | stw r9, CTSTATE->cb.gpr[6]
2562 | stfd f7, CTSTATE->cb.fpr[6]
2563 | stw r10, CTSTATE->cb.gpr[7]
2564 | stfd f8, CTSTATE->cb.fpr[7]
2565 | addi TMP0, sp, CFRAME_SPACE+8
2566 | stw TMP0, CTSTATE->cb.stack
2567 | mr CARG1, CTSTATE
2568 | stw CTSTATE, SAVE_PC // Any value outside of bytecode is ok.
2569 | mr CARG2, sp
2570 | bl extern lj_ccallback_enter // (CTState *cts, void *cf)
2571 | // Returns lua_State *.
2572 | lwz BASE, L:CRET1->base
2573 | li TISNUM, LJ_TISNUM // Setup type comparison constants.
2574 | lwz RC, L:CRET1->top
2575 | lus TMP3, 0x59c0 // TOBIT = 2^52 + 2^51 (float).
2576 | li ZERO, 0
2577 | mr L, CRET1
2578 | stw TMP3, TMPD
2579 | lwz LFUNC:RB, FRAME_FUNC(BASE)
2580 | ori TMP3, TMP3, 0x0004 // TONUM = 2^52 + 2^51 + 2^31 (float).
2581 | li TISNIL, LJ_TNIL
2582 | li_vmstate INTERP
2583 | lfs TOBIT, TMPD
2584 | stw TMP3, TMPD
2585 | sub RC, RC, BASE
2586 | st_vmstate
2587 | lfs TONUM, TMPD
2588 | ins_callt
2589#endif
2590 |
2591 |->cont_ffi_callback: // Return from FFI callback.
2592#if LJ_HASFFI
2593 | lwz CTSTATE, DISPATCH_GL(ctype_state)(DISPATCH)
2594 | stw BASE, L->base
2595 | stw RB, L->top
2596 | stw L, CTSTATE->L
2597 | mr CARG1, CTSTATE
2598 | mr CARG2, RA
2599 | bl extern lj_ccallback_leave // (CTState *cts, TValue *o)
2600 | lwz CRET1, CTSTATE->cb.gpr[0]
2601 | lfd FARG1, CTSTATE->cb.fpr[0]
2602 | lwz CRET2, CTSTATE->cb.gpr[1]
2603 | b ->vm_leave_unw
2604#endif
2605 |
2530 |->vm_ffi_call: // Call C function via FFI. 2606 |->vm_ffi_call: // Call C function via FFI.
2531 | // Caveat: needs special frame unwinding, see below. 2607 | // Caveat: needs special frame unwinding, see below.
2532#if LJ_HASFFI 2608#if LJ_HASFFI
diff --git a/src/buildvm_ppc.h b/src/buildvm_ppc.h
index 80d713c9..b42b5faa 100644
--- a/src/buildvm_ppc.h
+++ b/src/buildvm_ppc.h
@@ -12,7 +12,7 @@
12#define DASM_SECTION_CODE_OP 0 12#define DASM_SECTION_CODE_OP 0
13#define DASM_SECTION_CODE_SUB 1 13#define DASM_SECTION_CODE_SUB 1
14#define DASM_MAXSECTION 2 14#define DASM_MAXSECTION 2
15static const unsigned int build_actionlist[7580] = { 15static const unsigned int build_actionlist[7771] = {
160x00010001, 160x00010001,
170x00060014, 170x00060014,
180x72000000, 180x72000000,
@@ -287,6 +287,7 @@ static const unsigned int build_actionlist[7580] = {
2870x00098200, 2870x00098200,
2880xda010000, 2880xda010000,
2890x00098200, 2890x00098200,
2900x7c0802a6,
2900x92210000, 2910x92210000,
2910x00098200, 2920x00098200,
2920x00000000, 2930x00000000,
@@ -300,8 +301,6 @@ static const unsigned int build_actionlist[7580] = {
3000x00098200, 3010x00098200,
3010xda610000, 3020xda610000,
3020x00098200, 3030x00098200,
3030x7c0802a6,
3040x7d800026,
3050x92810000, 3040x92810000,
3060x00098200, 3050x00098200,
3070xda810000, 3060xda810000,
@@ -314,6 +313,7 @@ static const unsigned int build_actionlist[7580] = {
3140x00098200, 3130x00098200,
3150xdac10000, 3140xdac10000,
3160x00098200, 3150x00098200,
3160x90010114,
3170x92e10000, 3170x92e10000,
3180x00098200, 3180x00098200,
3190xdae10000, 3190xdae10000,
@@ -326,8 +326,7 @@ static const unsigned int build_actionlist[7580] = {
3260x00098200, 3260x00098200,
3270xdb210000, 3270xdb210000,
3280x00098200, 3280x00098200,
3290x90010114, 3290x7c000026,
3300x91810034,
3310x93410000, 3300x93410000,
3320x00098200, 3310x00098200,
3330xdb410000, 3320xdb410000,
@@ -353,6 +352,7 @@ static const unsigned int build_actionlist[7580] = {
3530x00098200, 3520x00098200,
3540xdbe10000, 3530xdbe10000,
3550x00098200, 3540x00098200,
3550x90010034,
3560x7c721b78, 3560x7c721b78,
3570x82320000, 3570x82320000,
3580x00098200, 3580x00098200,
@@ -424,6 +424,7 @@ static const unsigned int build_actionlist[7580] = {
4240x00098200, 4240x00098200,
4250xda010000, 4250xda010000,
4260x00098200, 4260x00098200,
4270x7c0802a6,
4270x92210000, 4280x92210000,
4280x00098200, 4290x00098200,
4290xda210000, 4300xda210000,
@@ -436,8 +437,6 @@ static const unsigned int build_actionlist[7580] = {
4360x00098200, 4370x00098200,
4370xda610000, 4380xda610000,
4380x00098200, 4390x00098200,
4390x7c0802a6,
4400x7d800026,
4410x92810000, 4400x92810000,
4420x00098200, 4410x00098200,
4430xda810000, 4420xda810000,
@@ -450,6 +449,7 @@ static const unsigned int build_actionlist[7580] = {
4500x00098200, 4490x00098200,
4510xdac10000, 4500xdac10000,
4520x00098200, 4510x00098200,
4520x90010114,
4530x92e10000, 4530x92e10000,
4540x00098200, 4540x00098200,
4550x00000000, 4550x00000000,
@@ -463,8 +463,7 @@ static const unsigned int build_actionlist[7580] = {
4630x00098200, 4630x00098200,
4640xdb210000, 4640xdb210000,
4650x00098200, 4650x00098200,
4660x90010114, 4660x7c000026,
4670x91810034,
4680x93410000, 4670x93410000,
4690x00098200, 4680x00098200,
4700xdb410000, 4690xdb410000,
@@ -489,6 +488,7 @@ static const unsigned int build_actionlist[7580] = {
4890x00098200, 4880x00098200,
4900xdbe10000, 4890xdbe10000,
4910x00098200, 4900x00098200,
4910x90010034,
4920x3a000000, 4920x3a000000,
4930x00098200, 4930x00098200,
4940x90c10030, 4940x90c10030,
@@ -509,6 +509,7 @@ static const unsigned int build_actionlist[7580] = {
5090x00098200, 5090x00098200,
5100xda010000, 5100xda010000,
5110x00098200, 5110x00098200,
5120x7c0802a6,
5120x92210000, 5130x92210000,
5130x00098200, 5140x00098200,
5140xda210000, 5150xda210000,
@@ -521,8 +522,6 @@ static const unsigned int build_actionlist[7580] = {
5210x00098200, 5220x00098200,
5220xda610000, 5230xda610000,
5230x00098200, 5240x00098200,
5240x7c0802a6,
5250x7d800026,
5260x92810000, 5250x92810000,
5270x00098200, 5260x00098200,
5280xda810000, 5270xda810000,
@@ -535,6 +534,7 @@ static const unsigned int build_actionlist[7580] = {
5350x00098200, 5340x00098200,
5360xdac10000, 5350xdac10000,
5370x00098200, 5360x00098200,
5370x90010114,
5380x92e10000, 5380x92e10000,
5390x00098200, 5390x00098200,
5400xdae10000, 5400xdae10000,
@@ -548,8 +548,7 @@ static const unsigned int build_actionlist[7580] = {
5480xdb210000, 5480xdb210000,
5490x00098200, 5490x00098200,
5500x00000000, 5500x00000000,
5510x90010114, 5510x7c000026,
5520x91810034,
5530x93410000, 5520x93410000,
5540x00098200, 5530x00098200,
5550xdb410000, 5540xdb410000,
@@ -574,6 +573,7 @@ static const unsigned int build_actionlist[7580] = {
5740x00098200, 5730x00098200,
5750xdbe10000, 5740xdbe10000,
5760x00098200, 5750x00098200,
5760x90010034,
5770x3a000000, 5770x3a000000,
5780x00098200, 5780x00098200,
5790x0006000b, 5790x0006000b,
@@ -650,6 +650,7 @@ static const unsigned int build_actionlist[7580] = {
6500x00098200, 6500x00098200,
6510xda010000, 6510xda010000,
6520x00098200, 6520x00098200,
6530x7c0802a6,
6530x92210000, 6540x92210000,
6540x00098200, 6550x00098200,
6550xda210000, 6560xda210000,
@@ -662,8 +663,6 @@ static const unsigned int build_actionlist[7580] = {
6620x00098200, 6630x00098200,
6630xda610000, 6640xda610000,
6640x00098200, 6650x00098200,
6650x7c0802a6,
6660x7d800026,
6670x92810000, 6660x92810000,
6680x00098200, 6670x00098200,
6690x00000000, 6680x00000000,
@@ -677,6 +676,7 @@ static const unsigned int build_actionlist[7580] = {
6770x00098200, 6760x00098200,
6780xdac10000, 6770xdac10000,
6790x00098200, 6780x00098200,
6790x90010114,
6800x92e10000, 6800x92e10000,
6810x00098200, 6810x00098200,
6820xdae10000, 6820xdae10000,
@@ -689,8 +689,7 @@ static const unsigned int build_actionlist[7580] = {
6890x00098200, 6890x00098200,
6900xdb210000, 6900xdb210000,
6910x00098200, 6910x00098200,
6920x90010114, 6920x7c000026,
6930x91810034,
6940x93410000, 6930x93410000,
6950x00098200, 6940x00098200,
6960xdb410000, 6950xdb410000,
@@ -716,6 +715,7 @@ static const unsigned int build_actionlist[7580] = {
7160x00000000, 7150x00000000,
7170xdbe10000, 7160xdbe10000,
7180x00098200, 7170x00098200,
7180x90010034,
7190x7c721b78, 7190x7c721b78,
7200x80030000, 7200x80030000,
7210x00098200, 7210x00098200,
@@ -750,24 +750,32 @@ static const unsigned int build_actionlist[7580] = {
7500x7dca7378, 7500x7dca7378,
7510x7d2e4b78, 7510x7d2e4b78,
7520x8109fffc, 7520x8109fffc,
7530x28000000, 7530x00000000,
7540x28000001,
7550x00000000,
7540x820afff0, 7560x820afff0,
7550x41820000,
7560x00050801,
7570x392cfff8, 7570x392cfff8,
7580x81080000, 7580x81080000,
7590x00098200, 7590x00098200,
7600x7ef4492e, 7600x7ef4492e,
7610x00000000,
7620x40810000,
7630x00050801,
7640x00000000,
7610x81e80000, 7650x81e80000,
7620x00098200, 7660x00098200,
7630x7c0903a6, 7670x7c0903a6,
7640x4e800420, 7680x4e800420,
7690x00000000,
7650x0006000b, 7700x0006000b,
7710x41820000,
7720x00050828,
7660x390afff0, 7730x390afff0,
7670x7d6e4050, 7740x7d6e4050,
7680x48000000, 7750x48000000,
7690x00050028, 7760x00050029,
7700x00060029, 7770x00000000,
7780x0006002a,
7710x80f0fffc, 7790x80f0fffc,
7720x388afff0, 7800x388afff0,
7730x54f55d78, 7810x54f55d78,
@@ -780,14 +788,13 @@ static const unsigned int build_actionlist[7580] = {
7800x54f4dd78, 7880x54f4dd78,
7810xd8040000, 7890xd8040000,
7820x40a20000, 7900x40a20000,
7830x0005082a, 7910x0005082b,
7840x7c0ea5ae, 7920x7c0ea5ae,
7850x48000000, 7930x48000000,
7860x0005002b, 7940x0005002c,
7870x0006002c, 7950x0006002d,
7880x38b10000, 7960x38b10000,
7890x00098200, 7970x00098200,
7900x00000000,
7910x38000000, 7980x38000000,
7920x00098200, 7990x00098200,
7930x54ea5d78, 8000x54ea5d78,
@@ -796,7 +803,7 @@ static const unsigned int build_actionlist[7580] = {
7960x90050000, 8030x90050000,
7970x48000000, 8040x48000000,
7980x00050001, 8050x00050001,
7990x0006002d, 8060x0006002e,
8000x38910000, 8070x38910000,
8010x00098200, 8080x00098200,
8020x38000000, 8090x38000000,
@@ -811,7 +818,7 @@ static const unsigned int build_actionlist[7580] = {
8110x91050000, 8180x91050000,
8120x48000000, 8190x48000000,
8130x00050001, 8200x00050001,
8140x0006002e, 8210x0006002f,
8150x00000000, 8220x00000000,
8160x9001000c, 8230x9001000c,
8170xc8010008, 8240xc8010008,
@@ -829,7 +836,7 @@ static const unsigned int build_actionlist[7580] = {
8290x00000000, 8360x00000000,
8300x48000000, 8370x48000000,
8310x00050001, 8380x00050001,
8320x0006002f, 8390x00060030,
8330x54ea5d78, 8400x54ea5d78,
8340x54eb9d78, 8410x54eb9d78,
8350x7c8e5214, 8420x7c8e5214,
@@ -867,7 +874,7 @@ static const unsigned int build_actionlist[7580] = {
8670x39600010, 8740x39600010,
8680x48000000, 8750x48000000,
8690x00050026, 8760x00050026,
8700x00060030, 8770x00060031,
8710x38b10000, 8780x38b10000,
8720x00098200, 8790x00098200,
8730x38000000, 8800x38000000,
@@ -878,7 +885,7 @@ static const unsigned int build_actionlist[7580] = {
8780x90050000, 8850x90050000,
8790x48000000, 8860x48000000,
8800x00050001, 8870x00050001,
8810x00060031, 8880x00060032,
8820x38910000, 8890x38910000,
8830x00098200, 8900x00098200,
8840x38000000, 8910x38000000,
@@ -893,7 +900,7 @@ static const unsigned int build_actionlist[7580] = {
8930x91050000, 9000x91050000,
8940x48000000, 9010x48000000,
8950x00050001, 9020x00050001,
8960x00060032, 9030x00060033,
8970x00000000, 9040x00000000,
8980x9001000c, 9050x9001000c,
8990xc8010008, 9060xc8010008,
@@ -911,7 +918,7 @@ static const unsigned int build_actionlist[7580] = {
9110x00000000, 9180x00000000,
9120x48000000, 9190x48000000,
9130x00050001, 9200x00050001,
9140x00060033, 9210x00060034,
9150x54ea5d78, 9220x54ea5d78,
9160x54eb9d78, 9230x54eb9d78,
9170x7c8e5214, 9240x7c8e5214,
@@ -950,7 +957,7 @@ static const unsigned int build_actionlist[7580] = {
9500xd80e0010, 9570xd80e0010,
9510x48000000, 9580x48000000,
9520x00050026, 9590x00050026,
9530x00060034, 9600x00060035,
9540x7e439378, 9610x7e439378,
9550x3a10fffc, 9620x3a10fffc,
9560x00000000, 9630x00000000,
@@ -972,7 +979,7 @@ static const unsigned int build_actionlist[7580] = {
9720x0006000d, 9790x0006000d,
9730x28030001, 9800x28030001,
9740x41810000, 9810x41810000,
9750x00050835, 9820x00050836,
9760x20630000, 9830x20630000,
9770x0006000e, 9840x0006000e,
9780x80f00000, 9850x80f00000,
@@ -982,7 +989,7 @@ static const unsigned int build_actionlist[7580] = {
9820x00098200, 9890x00098200,
9830x7d291838, 9900x7d291838,
9840x7e104a14, 9910x7e104a14,
9850x0006002b, 9920x0006002c,
9860x80f00000, 9930x80f00000,
9870x3a100004, 9940x3a100004,
9880x54e815ba, 9950x54e815ba,
@@ -993,14 +1000,14 @@ static const unsigned int build_actionlist[7580] = {
9930x54f4dd78, 10000x54f4dd78,
9940x54eb9d78, 10010x54eb9d78,
9950x4e800420, 10020x4e800420,
9960x00060036, 10030x00060037,
9970x80f0fffc, 10040x80f0fffc,
9980xc8140000, 10050xc8140000,
9990x54e8dd78, 10060x54e8dd78,
10000x7c0e45ae, 10070x7c0e45ae,
10010x48000000, 10080x48000000,
10020x0005002b, 10090x0005002c,
10030x00060037, 10100x00060038,
10040x80140000, 10110x80140000,
10050x20000000, 10120x20000000,
10060x00098200, 10130x00098200,
@@ -1008,14 +1015,14 @@ static const unsigned int build_actionlist[7580] = {
10080x7c6318f8, 10150x7c6318f8,
10090x48000000, 10160x48000000,
10100x0005000e, 10170x0005000e,
10110x00060038, 10180x00060039,
10120x80140000, 10190x80140000,
10130x20000000, 10200x20000000,
10140x00098200, 10210x00098200,
10150x7c631910, 10220x7c631910,
10160x48000000, 10230x48000000,
10170x0005000e, 10240x0005000e,
10180x00060039, 10250x0006003a,
10190x3a10fffc, 10260x3a10fffc,
10200x91d20000, 10270x91d20000,
10210x00098200, 10280x00098200,
@@ -1025,7 +1032,7 @@ static const unsigned int build_actionlist[7580] = {
10250x00030004, 10320x00030004,
10260x48000000, 10330x48000000,
10270x0005000d, 10340x0005000d,
10280x0006003a, 10350x0006003b,
10290x00000000, 10360x00000000,
10300x7ce43b78, 10370x7ce43b78,
10310x3a10fffc, 10380x3a10fffc,
@@ -1038,37 +1045,37 @@ static const unsigned int build_actionlist[7580] = {
10380x48000000, 10450x48000000,
10390x0005000d, 10460x0005000d,
10400x00000000, 10470x00000000,
10410x0006003b, 10480x0006003c,
10420x7caf5a14, 10490x7caf5a14,
10430x7cce5214, 10500x7cce5214,
10440x48000000, 10510x48000000,
10450x00050001, 10520x00050001,
10460x0006003c, 10530x0006003d,
10470x00000000, 10540x00000000,
10480x7d655b78, 10550x7d655b78,
10490x7d465378, 10560x7d465378,
10500x48000000, 10570x48000000,
10510x00050001, 10580x00050001,
10520x00000000, 10590x00000000,
10530x0006003d, 10600x0006003e,
10540x7d856378, 10610x7d856378,
10550x7d866378, 10620x7d866378,
10560x48000000, 10630x48000000,
10570x00050001, 10640x00050001,
10580x0006003e, 10650x0006003f,
10590x7cae5214, 10660x7cae5214,
10600x7ccf5a14, 10670x7ccf5a14,
10610x48000000, 10680x48000000,
10620x00050001, 10690x00050001,
10630x0006003f, 10700x00060040,
10640x7cae5214, 10710x7cae5214,
10650x7cce5a14, 10720x7cce5a14,
10660x00000000, 10730x00000000,
10670x48000000, 10740x48000000,
10680x00050001, 10750x00050001,
10690x00000000, 10760x00000000,
10700x00060040,
10710x00060041, 10770x00060041,
10780x00060042,
10720x00000000, 10790x00000000,
10730x7d455378, 10800x7d455378,
10740x7d665b78, 10810x7d665b78,
@@ -1084,8 +1091,8 @@ static const unsigned int build_actionlist[7580] = {
10840x00030006, 10910x00030006,
10850x28030000, 10920x28030000,
10860x41820000, 10930x41820000,
10870x0005082b, 10940x0005082c,
10880x00060035, 10950x00060036,
10890x7d0e1850, 10960x7d0e1850,
10900x9203fff0, 10970x9203fff0,
10910x7dc97378, 10980x7dc97378,
@@ -1095,7 +1102,7 @@ static const unsigned int build_actionlist[7580] = {
10950x39600010, 11020x39600010,
10960x48000000, 11030x48000000,
10970x00050024, 11040x00050024,
10980x00060042, 11050x00060043,
10990x00000000, 11060x00000000,
11000x7c751b78, 11070x7c751b78,
11010x00000000, 11080x00000000,
@@ -1109,13 +1116,13 @@ static const unsigned int build_actionlist[7580] = {
11090x00000000, 11160x00000000,
11100x28030000, 11170x28030000,
11110x40820000, 11180x40820000,
11120x00050835, 11190x00050836,
11130x7ea3ab78, 11200x7ea3ab78,
11140x48000000, 11210x48000000,
11150x00050043, 11220x00050044,
11160x00000000, 11230x00000000,
11170x48000000, 11240x48000000,
11180x00050035, 11250x00050036,
11190x00000000, 11260x00000000,
11200x00060025, 11270x00060025,
11210x7e439378, 11280x7e439378,
@@ -1140,7 +1147,7 @@ static const unsigned int build_actionlist[7580] = {
11400x7e947214, 11470x7e947214,
11410x7c0903a6, 11480x7c0903a6,
11420x4e800420, 11490x4e800420,
11430x00060044, 11500x00060045,
11440x7e439378, 11510x7e439378,
11450x91d20000, 11520x91d20000,
11460x00098200, 11530x00098200,
@@ -1154,8 +1161,8 @@ static const unsigned int build_actionlist[7580] = {
11540x39750008, 11610x39750008,
11550x8154fffc, 11620x8154fffc,
11560x48000000, 11630x48000000,
11570x00050045, 11640x00050046,
11580x00060046, 11650x00060047,
11590x7e439378, 11660x7e439378,
11600x91d20000, 11670x91d20000,
11610x00098200, 11680x00098200,
@@ -1179,24 +1186,24 @@ static const unsigned int build_actionlist[7580] = {
11790x00000000, 11860x00000000,
11800x48000000, 11870x48000000,
11810x00070000, 11880x00070000,
11820x00060047, 11890x00060048,
11830x280b0008, 11900x280b0008,
11840x80ae0000, 11910x80ae0000,
11850x806e0004, 11920x806e0004,
11860x41800000, 11930x41800000,
11870x00050848, 11940x00050849,
11880x39000000, 11950x39000000,
11890x00098200, 11960x00098200,
11900x3a8efff8, 11970x3a8efff8,
11910x7c854040, 11980x7c854040,
11920x820efff8, 11990x820efff8,
11930x40840000, 12000x40840000,
11940x00050848, 12010x00050849,
11950x90b40000, 12020x90b40000,
11960x398b0008, 12030x398b0008,
11970x90740004, 12040x90740004,
11980x41820000, 12050x41820000,
11990x00050849, 12060x0005084a,
12000x39000008, 12070x39000008,
12010x396bfff8, 12080x396bfff8,
12020x0006000b, 12090x0006000b,
@@ -1207,12 +1214,12 @@ static const unsigned int build_actionlist[7580] = {
12070x40a20000, 12140x40a20000,
12080x0005080b, 12150x0005080b,
12090x48000000, 12160x48000000,
12100x00050049, 12170x0005004a,
12110x0006004a, 12180x0006004b,
12120x280b0008, 12190x280b0008,
12130x806e0000, 12200x806e0000,
12140x41800000, 12210x41800000,
12150x00050848, 12220x00050849,
12160x7c161810, 12230x7c161810,
12170x7d231910, 12240x7d231910,
12180x7d280338, 12250x7d280338,
@@ -1224,13 +1231,13 @@ static const unsigned int build_actionlist[7580] = {
12240x00098200, 12310x00098200,
12250x7c2944ae, 12320x7c2944ae,
12260x48000000, 12330x48000000,
12270x0005004b, 12340x0005004c,
12280x0006004c, 12350x0006004d,
12290x280b0008, 12360x280b0008,
12300x80ae0000, 12370x80ae0000,
12310x806e0004, 12380x806e0004,
12320x41800000, 12390x41800000,
12330x00050848, 12400x00050849,
12340x2c050000, 12410x2c050000,
12350x00098200, 12420x00098200,
12360x40820000, 12430x40820000,
@@ -1246,7 +1253,7 @@ static const unsigned int build_actionlist[7580] = {
12460x81710000, 12530x81710000,
12470x00098200, 12540x00098200,
12480x41820000, 12550x41820000,
12490x0005084d, 12560x0005084e,
12500x80030000, 12570x80030000,
12510x00098200, 12580x00098200,
12520x38a00000, 12590x38a00000,
@@ -1283,7 +1290,7 @@ static const unsigned int build_actionlist[7580] = {
12830x00098200, 12900x00098200,
12840x28090000, 12910x28090000,
12850x41820000, 12920x41820000,
12860x0005084d, 12930x0005084e,
12870x48000000, 12940x48000000,
12880x0005000d, 12950x0005000d,
12890x0006000f, 12960x0006000f,
@@ -1291,11 +1298,11 @@ static const unsigned int build_actionlist[7580] = {
12910x2c040000, 12980x2c040000,
12920x00098200, 12990x00098200,
12930x41820000, 13000x41820000,
12940x0005084d, 13010x0005084e,
12950x7c852378, 13020x7c852378,
12960x7d034378, 13030x7d034378,
12970x48000000, 13040x48000000,
12980x0005004d, 13050x0005004e,
12990x00060010, 13060x00060010,
13000x2c050000, 13070x2c050000,
13010x00098200, 13080x00098200,
@@ -1313,35 +1320,35 @@ static const unsigned int build_actionlist[7580] = {
13130x7c69402e, 13200x7c69402e,
13140x48000000, 13210x48000000,
13150x0005000c, 13220x0005000c,
13160x0006004e, 13230x0006004f,
13170x280b0010, 13240x280b0010,
13180x80ae0000, 13250x80ae0000,
13190x80ce0008, 13260x80ce0008,
13200x806e0004, 13270x806e0004,
13210x808e000c, 13280x808e000c,
13220x41800000, 13290x41800000,
13230x00050848, 13300x00050849,
13240x2c050000, 13310x2c050000,
13250x00098200, 13320x00098200,
13260x40820000, 13330x40820000,
13270x00050848, 13340x00050849,
13280x81030000, 13350x81030000,
13290x00098200, 13360x00098200,
13300x2c060000, 13370x2c060000,
13310x00098200, 13380x00098200,
13320x40820000, 13390x40820000,
13330x00050848, 13400x00050849,
13340x28080000, 13410x28080000,
13350x88c30000, 13420x88c30000,
13360x00098200, 13430x00098200,
13370x40820000, 13440x40820000,
13380x00050848, 13450x00050849,
13390x70c00000, 13460x70c00000,
13400x00090200, 13470x00090200,
13410x90830000, 13480x90830000,
13420x00098200, 13490x00098200,
13430x41820000, 13500x41820000,
13440x0005084d, 13510x0005084e,
13450x00000000, 13520x00000000,
13460x80110000, 13530x80110000,
13470x00098200, 13540x00098200,
@@ -1353,45 +1360,45 @@ static const unsigned int build_actionlist[7580] = {
13530x90030000, 13600x90030000,
13540x00098200, 13610x00098200,
13550x48000000, 13620x48000000,
13560x0005004d, 13630x0005004e,
13570x0006004f, 13640x00060050,
13580x280b0008, 13650x280b0008,
13590x80ce0000, 13660x80ce0000,
13600x808e0004, 13670x808e0004,
13610x41800000, 13680x41800000,
13620x00050848, 13690x00050849,
13630x2c060000, 13700x2c060000,
13640x00098200, 13710x00098200,
13650x40820000, 13720x40820000,
13660x00050848, 13730x00050849,
13670x38ae0008, 13740x38ae0008,
13680x7e439378, 13750x7e439378,
13690x48000001, 13760x48000001,
13700x0003000a, 13770x0003000a,
13710xc8230000, 13780xc8230000,
13720x48000000, 13790x48000000,
13730x0005004b, 13800x0005004c,
13740x00060050, 13810x00060051,
13750x280b0008, 13820x280b0008,
13760x806e0000, 13830x806e0000,
13770xc82e0000, 13840xc82e0000,
13780x40820000, 13850x40820000,
13790x00050848, 13860x00050849,
13800x7c03b040, 13870x7c03b040,
13810x41810000, 13880x41810000,
13820x00050848, 13890x00050849,
13830x48000000, 13900x48000000,
13840x0005004b, 13910x0005004c,
13850x00060051, 13920x00060052,
13860x280b0008, 13930x280b0008,
13870x80ae0000, 13940x80ae0000,
13880x806e0004, 13950x806e0004,
13890x41800000, 13960x41800000,
13900x00050848, 13970x00050849,
13910x2c050000, 13980x2c050000,
13920x00098200, 13990x00098200,
13930x41820000, 14000x41820000,
13940x0005084d, 14010x0005084e,
13950x80110000, 14020x80110000,
13960x00098200, 14030x00098200,
13970x7c05b040, 14040x7c05b040,
@@ -1401,7 +1408,7 @@ static const unsigned int build_actionlist[7580] = {
14010x4c413342, 14080x4c413342,
14020x92010020, 14090x92010020,
14030x41820000, 14100x41820000,
14040x00050848, 14110x00050849,
14050x00000000, 14120x00000000,
14060x80110000, 14130x80110000,
14070x00098200, 14140x00098200,
@@ -1409,7 +1416,7 @@ static const unsigned int build_actionlist[7580] = {
14090x00098200, 14160x00098200,
14100x7c004040, 14170x7c004040,
14110x40800001, 14180x40800001,
14120x00050852, 14190x00050853,
14130x7e439378, 14200x7e439378,
14140x7dc47378, 14210x7dc47378,
14150x00000000, 14220x00000000,
@@ -1422,19 +1429,19 @@ static const unsigned int build_actionlist[7580] = {
14220x38a00000, 14290x38a00000,
14230x00098200, 14300x00098200,
14240x48000000, 14310x48000000,
14250x0005004d, 14320x0005004e,
14260x00060053, 14330x00060054,
14270x280b0008, 14340x280b0008,
14280x806e0000, 14350x806e0000,
14290x808e0004, 14360x808e0004,
14300x41800000, 14370x41800000,
14310x00050848, 14380x00050849,
14320x7eee592e, 14390x7eee592e,
14330x2c030000, 14400x2c030000,
14340x00098200, 14410x00098200,
14350x820efff8, 14420x820efff8,
14360x40820000, 14430x40820000,
14370x00050848, 14440x00050849,
14380x91d20000, 14450x91d20000,
14390x00098200, 14460x00098200,
14400x7e439378, 14470x7e439378,
@@ -1448,7 +1455,7 @@ static const unsigned int build_actionlist[7580] = {
14480x38a00000, 14550x38a00000,
14490x00098200, 14560x00098200,
14500x41820000, 14570x41820000,
14510x0005084d, 14580x0005084e,
14520xc80e0008, 14590xc80e0008,
14530x3a8efff8, 14600x3a8efff8,
14540xc82e0010, 14610xc82e0010,
@@ -1457,18 +1464,18 @@ static const unsigned int build_actionlist[7580] = {
14570x00098200, 14640x00098200,
14580xd8340008, 14650xd8340008,
14590x48000000, 14660x48000000,
14600x00050049, 14670x0005004a,
14610x00060054, 14680x00060055,
14620x280b0008, 14690x280b0008,
14630x80ae0000, 14700x80ae0000,
14640x806e0004, 14710x806e0004,
14650x41800000, 14720x41800000,
14660x00050848, 14730x00050849,
14670x2c050000, 14740x2c050000,
14680x00098200, 14750x00098200,
14690x820efff8, 14760x820efff8,
14700x40820000, 14770x40820000,
14710x00050848, 14780x00050849,
14720x00000000, 14790x00000000,
14730x81230000, 14800x81230000,
14740x00098200, 14810x00098200,
@@ -1477,7 +1484,7 @@ static const unsigned int build_actionlist[7580] = {
14770x28090000, 14840x28090000,
14780x3a8efff8, 14850x3a8efff8,
14790x40820000, 14860x40820000,
14800x00050848, 14870x00050849,
14810x00000000, 14880x00000000,
14820xc80a0000, 14890xc80a0000,
14830x00098200, 14900x00098200,
@@ -1488,8 +1495,8 @@ static const unsigned int build_actionlist[7580] = {
14880x00098200, 14950x00098200,
14890xd8140000, 14960xd8140000,
14900x48000000, 14970x48000000,
14910x00050049, 14980x0005004a,
14920x00060055, 14990x00060056,
14930x280b0010, 15000x280b0010,
14940x80ae0000, 15010x80ae0000,
14950x806e0004, 15020x806e0004,
@@ -1500,24 +1507,24 @@ static const unsigned int build_actionlist[7580] = {
15000xc84e0008, 15070xc84e0008,
15010x00000000, 15080x00000000,
15020x41800000, 15090x41800000,
15030x00050848, 15100x00050849,
15040x2c050000, 15110x2c050000,
15050x00098200, 15120x00098200,
15060x7c86b040, 15130x7c86b040,
15070x820efff8, 15140x820efff8,
15080x00000000, 15150x00000000,
15090x40820000, 15160x40820000,
15100x00050848, 15170x00050849,
15110x40860000, 15180x40860000,
15120x00050848, 15190x00050849,
15130x00000000, 15200x00000000,
15140x3c003ff0, 15210x3c003ff0,
15150x93010014, 15220x93010014,
15160x40820000, 15230x40820000,
15170x00050848, 15240x00050849,
15180x90010010, 15250x90010010,
15190x40840000, 15260x40840000,
15200x00050848, 15270x00050849,
15210xc8210010, 15280xc8210010,
15220xfc00101e, 15290xfc00101e,
15230xd8010010, 15300xd8010010,
@@ -1553,12 +1560,12 @@ static const unsigned int build_actionlist[7580] = {
15530x39800000, 15600x39800000,
15540x00098200, 15610x00098200,
15550x41820000, 15620x41820000,
15560x00050849, 15630x0005084a,
15570x39800000, 15640x39800000,
15580x00098200, 15650x00098200,
15590xd8140008, 15660xd8140008,
15600x48000000, 15670x48000000,
15610x00050049, 15680x0005004a,
15620x0006000c, 15690x0006000c,
15630x80030000, 15700x80030000,
15640x00098200, 15710x00098200,
@@ -1566,7 +1573,7 @@ static const unsigned int build_actionlist[7580] = {
15660x39800000, 15730x39800000,
15670x00098200, 15740x00098200,
15680x41820000, 15750x41820000,
15690x00050849, 15760x0005084a,
15700x7d244b78, 15770x7d244b78,
15710x48000001, 15780x48000001,
15720x0003000e, 15790x0003000e,
@@ -1574,22 +1581,22 @@ static const unsigned int build_actionlist[7580] = {
15740x39800000, 15810x39800000,
15750x00098200, 15820x00098200,
15760x41820000, 15830x41820000,
15770x00050849, 15840x0005084a,
15780x81230000, 15850x81230000,
15790xc8030000, 15860xc8030000,
15800x48000000, 15870x48000000,
15810x0005000b, 15880x0005000b,
15820x00060056, 15890x00060057,
15830x280b0008, 15900x280b0008,
15840x80ae0000, 15910x80ae0000,
15850x806e0004, 15920x806e0004,
15860x41800000, 15930x41800000,
15870x00050848, 15940x00050849,
15880x2c050000, 15950x2c050000,
15890x00098200, 15960x00098200,
15900x820efff8, 15970x820efff8,
15910x40820000, 15980x40820000,
15920x00050848, 15990x00050849,
15930x00000000, 16000x00000000,
15940x81230000, 16010x81230000,
15950x00098200, 16020x00098200,
@@ -1598,7 +1605,7 @@ static const unsigned int build_actionlist[7580] = {
15980x28090000, 16050x28090000,
15990x3a8efff8, 16060x3a8efff8,
16000x40820000, 16070x40820000,
16010x00050848, 16080x00050849,
16020x00000000, 16090x00000000,
16030xc80a0000, 16100xc80a0000,
16040x00098200, 16110x00098200,
@@ -1613,13 +1620,13 @@ static const unsigned int build_actionlist[7580] = {
16130x00098200, 16200x00098200,
16140xd8140000, 16210xd8140000,
16150x48000000, 16220x48000000,
16160x00050049, 16230x0005004a,
16170x00060057, 16240x00060058,
16180x280b0008, 16250x280b0008,
16190x88d10000, 16260x88d10000,
16200x00098200, 16270x00098200,
16210x41800000, 16280x41800000,
16220x00050848, 16290x00050849,
16230x7dc97378, 16300x7dc97378,
16240x39ce0008, 16310x39ce0008,
16250x54c607fe, 16320x54c607fe,
@@ -1629,21 +1636,21 @@ static const unsigned int build_actionlist[7580] = {
16290x00098200, 16360x00098200,
16300x48000000, 16370x48000000,
16310x00050024, 16380x00050024,
16320x00060058, 16390x00060059,
16330x280b0010, 16400x280b0010,
16340x80ce0008, 16410x80ce0008,
16350xc84e0008, 16420xc84e0008,
16360x80ae0000, 16430x80ae0000,
16370xc82e0000, 16440xc82e0000,
16380x41800000, 16450x41800000,
16390x00050848, 16460x00050849,
16400x89110000, 16470x89110000,
16410x00098200, 16480x00098200,
16420x7dc97378, 16490x7dc97378,
16430x2c060000, 16500x2c060000,
16440x00098200, 16510x00098200,
16450x40820000, 16520x40820000,
16460x00050848, 16530x00050849,
16470x39ce0010, 16540x39ce0010,
16480x550807fe, 16550x550807fe,
16490x000900ab, 16560x000900ab,
@@ -1654,16 +1661,16 @@ static const unsigned int build_actionlist[7580] = {
16540x00098200, 16610x00098200,
16550x48000000, 16620x48000000,
16560x00050024, 16630x00050024,
16570x00060059, 16640x0006005a,
16580x280b0008, 16650x280b0008,
16590x80ae0000, 16660x80ae0000,
16600x806e0004, 16670x806e0004,
16610x41800000, 16680x41800000,
16620x00050848, 16690x00050849,
16630x2c050000, 16700x2c050000,
16640x00098200, 16710x00098200,
16650x40820000, 16720x40820000,
16660x00050848, 16730x00050849,
16670x88030000, 16740x88030000,
16680x00098200, 16750x00098200,
16690x81030000, 16760x81030000,
@@ -1690,7 +1697,7 @@ static const unsigned int build_actionlist[7580] = {
16900x91d20000, 16970x91d20000,
16910x00098200, 16980x00098200,
16920x41980000, 16990x41980000,
16930x00050848, 17000x00050849,
16940x0006000b, 17010x0006000b,
16950x39ce0008, 17020x39ce0008,
16960x396bfff8, 17030x396bfff8,
@@ -1792,7 +1799,7 @@ static const unsigned int build_actionlist[7580] = {
17920x38600000, 17990x38600000,
17930x48000000, 18000x48000000,
17940x0005000e, 18010x0005000e,
17950x0006005a, 18020x0006005b,
17960x00000000, 18030x00000000,
17970x806a0000, 18040x806a0000,
17980x00098200, 18050x00098200,
@@ -1821,7 +1828,7 @@ static const unsigned int build_actionlist[7580] = {
18210x91d20000, 18280x91d20000,
18220x00098200, 18290x00098200,
18230x41980000, 18300x41980000,
18240x00050848, 18310x00050849,
18250x0006000b, 18320x0006000b,
18260x91230000, 18330x91230000,
18270x00098200, 18340x00098200,
@@ -1906,7 +1913,7 @@ static const unsigned int build_actionlist[7580] = {
19060x38600000, 19130x38600000,
19070x48000000, 19140x48000000,
19080x0005000e, 19150x0005000e,
19090x0006005b, 19160x0006005c,
19100x80120000, 19170x80120000,
19110x00098200, 19180x00098200,
19120x00000000, 19190x00000000,
@@ -1920,19 +1927,19 @@ static const unsigned int build_actionlist[7580] = {
19200x38600000, 19270x38600000,
19210x00098200, 19280x00098200,
19220x41820000, 19290x41820000,
19230x00050848, 19300x00050849,
19240x93120000, 19310x93120000,
19250x00098200, 19320x00098200,
19260x98720000, 19330x98720000,
19270x00098200, 19340x00098200,
19280x48000000, 19350x48000000,
19290x0005001a, 19360x0005001a,
19300x0006005c, 19370x0006005d,
19310x280b0008, 19380x280b0008,
19320x80ae0000, 19390x80ae0000,
19330x806e0004, 19400x806e0004,
19340x41800000, 19410x41800000,
19350x00050848, 19420x00050849,
19360x7c05b040, 19430x7c05b040,
19370x00000000, 19440x00000000,
19380x40820000, 19450x40820000,
@@ -1942,32 +1949,32 @@ static const unsigned int build_actionlist[7580] = {
19420x7c684851, 19490x7c684851,
19430x41800000, 19500x41800000,
19440x00050801, 19510x00050801,
19450x0006005d, 19520x0006005e,
19460x820efff8, 19530x820efff8,
19470x3a8efff8, 19540x3a8efff8,
19480x92cefff8, 19550x92cefff8,
19490x906efffc, 19560x906efffc,
19500x48000000, 19570x48000000,
19510x0005005e, 19580x0005005f,
19520x0006000b, 19590x0006000b,
19530x3ca041e0, 19600x3ca041e0,
19540x38600000, 19610x38600000,
19550x48000000, 19620x48000000,
19560x0005004d, 19630x0005004e,
19570x0006000c, 19640x0006000c,
19580x00000000, 19650x00000000,
19590x40800000, 19660x40800000,
19600x00050848, 19670x00050849,
19610x54a5007e, 19680x54a5007e,
19620x0006004d, 19690x0006004e,
19630x820efff8, 19700x820efff8,
19640x90aefff8, 19710x90aefff8,
19650x3a8efff8, 19720x3a8efff8,
19660x906efffc, 19730x906efffc,
19670x0006005e, 19740x0006005f,
19680x39800000, 19750x39800000,
19690x00098200, 19760x00098200,
19700x00060049, 19770x0006004a,
19710x72000000, 19780x72000000,
19720x00090200, 19790x00090200,
19730x7d936378, 19800x7d936378,
@@ -1998,18 +2005,18 @@ static const unsigned int build_actionlist[7580] = {
19980x48000000, 20050x48000000,
19990x0005000f, 20060x0005000f,
20000x00000000, 20070x00000000,
20010x0006005f, 20080x00060060,
20020x280b0008, 20090x280b0008,
20030x80ae0000, 20100x80ae0000,
20040x806e0004, 20110x806e0004,
20050x41800000, 20120x41800000,
20060x00050848, 20130x00050849,
20070x7c05b040, 20140x7c05b040,
20080x41a20000, 20150x41a20000,
20090x0005084d, 20160x0005084e,
20100x54a9657e, 20170x54a9657e,
20110x40800000, 20180x40800000,
20120x00050848, 20190x00050849,
20130x3529fc01, 20200x3529fc01,
20140x2889001f, 20210x2889001f,
20150x2009001f, 20220x2009001f,
@@ -2037,7 +2044,7 @@ static const unsigned int build_actionlist[7580] = {
20370x7c634a78, 20440x7c634a78,
20380x7c691850, 20450x7c691850,
20390x48000000, 20460x48000000,
20400x0005005d, 20470x0005005e,
20410x0006000d, 20480x0006000d,
20420x7d252a14, 20490x7d252a14,
20430x7ca8fe70, 20500x7ca8fe70,
@@ -2046,7 +2053,7 @@ static const unsigned int build_actionlist[7580] = {
20460x21280000, 20530x21280000,
20470x7c631910, 20540x7c631910,
20480x48000000, 20550x48000000,
20490x0005005d, 20560x0005005e,
20500x0006000e, 20570x0006000e,
20510x6d088000, 20580x6d088000,
20520x7ca9fe70, 20590x7ca9fe70,
@@ -2055,25 +2062,25 @@ static const unsigned int build_actionlist[7580] = {
20550x4c423202, 20620x4c423202,
20560x3c608000, 20630x3c608000,
20570x41a20000, 20640x41a20000,
20580x0005085d, 20650x0005085e,
20590x0006000f, 20660x0006000f,
20600xc82e0000, 20670xc82e0000,
20610x48000001, 20680x48000001,
20620x00030010, 20690x00030010,
20630x48000000, 20700x48000000,
20640x0005004b, 20710x0005004c,
20650x00060060, 20720x00060061,
20660x280b0008, 20730x280b0008,
20670x80ae0000, 20740x80ae0000,
20680x806e0004, 20750x806e0004,
20690x41800000, 20760x41800000,
20700x00050848, 20770x00050849,
20710x7c05b040, 20780x7c05b040,
20720x41a20000, 20790x41a20000,
20730x0005084d, 20800x0005084e,
20740x54a9657e, 20810x54a9657e,
20750x40800000, 20820x40800000,
20760x00050848, 20830x00050849,
20770x3529fc01, 20840x3529fc01,
20780x2889001f, 20850x2889001f,
20790x2009001f, 20860x2009001f,
@@ -2102,14 +2109,14 @@ static const unsigned int build_actionlist[7580] = {
21020x7c634a78, 21090x7c634a78,
21030x7c691850, 21100x7c691850,
21040x40830000, 21110x40830000,
21050x0005085d, 21120x0005085e,
21060x7c000400, 21130x7c000400,
21070x40a10000, 21140x40a10000,
21080x0005085d, 21150x0005085e,
21090x3ca041e0, 21160x3ca041e0,
21100x38600000, 21170x38600000,
21110x48000000, 21180x48000000,
21120x0005004d, 21190x0005004e,
21130x0006000d, 21200x0006000d,
21140x7d252a14, 21210x7d252a14,
21150x7ca8fe70, 21220x7ca8fe70,
@@ -2118,7 +2125,7 @@ static const unsigned int build_actionlist[7580] = {
21180x3128ffff, 21250x3128ffff,
21190x7c694110, 21260x7c694110,
21200x48000000, 21270x48000000,
21210x0005005d, 21280x0005005e,
21220x0006000e, 21290x0006000e,
21230x6d088000, 21300x6d088000,
21240x7ca9fe70, 21310x7ca9fe70,
@@ -2126,213 +2133,213 @@ static const unsigned int build_actionlist[7580] = {
21260x4c423202, 21330x4c423202,
21270x3c608000, 21340x3c608000,
21280x41a20000, 21350x41a20000,
21290x0005085d, 21360x0005085e,
21300x0006000f, 21370x0006000f,
21310xc82e0000, 21380xc82e0000,
21320x48000001, 21390x48000001,
21330x00030011, 21400x00030011,
21340x48000000, 21410x48000000,
21350x0005004b, 21420x0005004c,
21360x00000000, 21430x00000000,
21370x0006005f, 21440x00060060,
21380x280b0008, 21450x280b0008,
21390x80ae0000, 21460x80ae0000,
21400xc82e0000, 21470xc82e0000,
21410x41800000, 21480x41800000,
21420x00050848, 21490x00050849,
21430x7c05b040, 21500x7c05b040,
21440x40800000, 21510x40800000,
21450x00050848, 21520x00050849,
21460x48000001, 21530x48000001,
21470x00030010, 21540x00030010,
21480x48000000, 21550x48000000,
21490x0005004b, 21560x0005004c,
21500x00060060, 21570x00060061,
21510x280b0008, 21580x280b0008,
21520x80ae0000, 21590x80ae0000,
21530xc82e0000, 21600xc82e0000,
21540x41800000, 21610x41800000,
21550x00050848, 21620x00050849,
21560x7c05b040, 21630x7c05b040,
21570x40800000, 21640x40800000,
21580x00050848, 21650x00050849,
21590x48000001, 21660x48000001,
21600x00030011, 21670x00030011,
21610x48000000, 21680x48000000,
21620x0005004b, 21690x0005004c,
21630x00000000, 21700x00000000,
21640x00060061, 21710x00060062,
21650x280b0008, 21720x280b0008,
21660x80ae0000, 21730x80ae0000,
21670xc82e0000, 21740xc82e0000,
21680x41800000, 21750x41800000,
21690x00050848, 21760x00050849,
21700x7c05b040, 21770x7c05b040,
21710x40800000, 21780x40800000,
21720x00050848, 21790x00050849,
21730x48000001, 21800x48000001,
21740x00030012, 21810x00030012,
21750x48000000, 21820x48000000,
21760x0005004b, 21830x0005004c,
21770x00060062, 21840x00060063,
21780x280b0008, 21850x280b0008,
21790x80ae0000, 21860x80ae0000,
21800xc82e0000, 21870xc82e0000,
21810x41800000, 21880x41800000,
21820x00050848, 21890x00050849,
21830x7c05b040, 21900x7c05b040,
21840x40800000, 21910x40800000,
21850x00050848, 21920x00050849,
21860x48000001, 21930x48000001,
21870x00030013, 21940x00030013,
21880x48000000, 21950x48000000,
21890x0005004b, 21960x0005004c,
21900x00060063, 21970x00060064,
21910x280b0008, 21980x280b0008,
21920x80ae0000, 21990x80ae0000,
21930xc82e0000, 22000xc82e0000,
21940x41800000, 22010x41800000,
21950x00050848, 22020x00050849,
21960x7c05b040, 22030x7c05b040,
21970x40800000, 22040x40800000,
21980x00050848, 22050x00050849,
21990x48000001, 22060x48000001,
22000x00030014, 22070x00030014,
22010x48000000, 22080x48000000,
22020x0005004b, 22090x0005004c,
22030x00060064, 22100x00060065,
22040x280b0008, 22110x280b0008,
22050x80ae0000, 22120x80ae0000,
22060xc82e0000, 22130xc82e0000,
22070x41800000, 22140x41800000,
22080x00050848, 22150x00050849,
22090x7c05b040, 22160x7c05b040,
22100x40800000, 22170x40800000,
22110x00050848, 22180x00050849,
22120x48000001, 22190x48000001,
22130x00030015, 22200x00030015,
22140x48000000, 22210x48000000,
22150x0005004b, 22220x0005004c,
22160x00060065, 22230x00060066,
22170x280b0008, 22240x280b0008,
22180x80ae0000, 22250x80ae0000,
22190xc82e0000, 22260xc82e0000,
22200x41800000, 22270x41800000,
22210x00050848, 22280x00050849,
22220x00000000, 22290x00000000,
22230x7c05b040, 22300x7c05b040,
22240x40800000, 22310x40800000,
22250x00050848, 22320x00050849,
22260x48000001, 22330x48000001,
22270x00030016, 22340x00030016,
22280x48000000, 22350x48000000,
22290x0005004b, 22360x0005004c,
22300x00060066, 22370x00060067,
22310x280b0008, 22380x280b0008,
22320x80ae0000, 22390x80ae0000,
22330xc82e0000, 22400xc82e0000,
22340x41800000, 22410x41800000,
22350x00050848, 22420x00050849,
22360x7c05b040, 22430x7c05b040,
22370x40800000, 22440x40800000,
22380x00050848, 22450x00050849,
22390x48000001, 22460x48000001,
22400x00030017, 22470x00030017,
22410x48000000, 22480x48000000,
22420x0005004b, 22490x0005004c,
22430x00060067, 22500x00060068,
22440x280b0008, 22510x280b0008,
22450x80ae0000, 22520x80ae0000,
22460xc82e0000, 22530xc82e0000,
22470x41800000, 22540x41800000,
22480x00050848, 22550x00050849,
22490x7c05b040, 22560x7c05b040,
22500x40800000, 22570x40800000,
22510x00050848, 22580x00050849,
22520x48000001, 22590x48000001,
22530x00030018, 22600x00030018,
22540x48000000, 22610x48000000,
22550x0005004b, 22620x0005004c,
22560x00060068, 22630x00060069,
22570x280b0008, 22640x280b0008,
22580x80ae0000, 22650x80ae0000,
22590xc82e0000, 22660xc82e0000,
22600x41800000, 22670x41800000,
22610x00050848, 22680x00050849,
22620x7c05b040, 22690x7c05b040,
22630x40800000, 22700x40800000,
22640x00050848, 22710x00050849,
22650x48000001, 22720x48000001,
22660x00030019, 22730x00030019,
22670x48000000, 22740x48000000,
22680x0005004b, 22750x0005004c,
22690x00060069, 22760x0006006a,
22700x280b0008, 22770x280b0008,
22710x80ae0000, 22780x80ae0000,
22720xc82e0000, 22790xc82e0000,
22730x41800000, 22800x41800000,
22740x00050848, 22810x00050849,
22750x7c05b040, 22820x7c05b040,
22760x40800000, 22830x40800000,
22770x00050848, 22840x00050849,
22780x48000001, 22850x48000001,
22790x0003001a, 22860x0003001a,
22800x00000000, 22870x00000000,
22810x48000000, 22880x48000000,
22820x0005004b, 22890x0005004c,
22830x0006006a, 22900x0006006b,
22840x280b0008, 22910x280b0008,
22850x80ae0000, 22920x80ae0000,
22860xc82e0000, 22930xc82e0000,
22870x41800000, 22940x41800000,
22880x00050848, 22950x00050849,
22890x7c05b040, 22960x7c05b040,
22900x40800000, 22970x40800000,
22910x00050848, 22980x00050849,
22920x48000001, 22990x48000001,
22930x0003001b, 23000x0003001b,
22940x48000000, 23010x48000000,
22950x0005004b, 23020x0005004c,
22960x0006006b, 23030x0006006c,
22970x280b0008, 23040x280b0008,
22980x80ae0000, 23050x80ae0000,
22990xc82e0000, 23060xc82e0000,
23000x41800000, 23070x41800000,
23010x00050848, 23080x00050849,
23020x7c05b040, 23090x7c05b040,
23030x40800000, 23100x40800000,
23040x00050848, 23110x00050849,
23050x48000001, 23120x48000001,
23060x0003001c, 23130x0003001c,
23070x48000000, 23140x48000000,
23080x0005004b, 23150x0005004c,
23090x0006006c, 23160x0006006d,
23100x280b0008, 23170x280b0008,
23110x80ae0000, 23180x80ae0000,
23120xc82e0000, 23190xc82e0000,
23130x41800000, 23200x41800000,
23140x00050848, 23210x00050849,
23150x7c05b040, 23220x7c05b040,
23160x40800000, 23230x40800000,
23170x00050848, 23240x00050849,
23180x48000001, 23250x48000001,
23190x0003001d, 23260x0003001d,
23200x48000000, 23270x48000000,
23210x0005004b, 23280x0005004c,
23220x0006006d, 23290x0006006e,
23230x280b0008, 23300x280b0008,
23240x80ae0000, 23310x80ae0000,
23250xc82e0000, 23320xc82e0000,
23260x41800000, 23330x41800000,
23270x00050848, 23340x00050849,
23280x7c05b040, 23350x7c05b040,
23290x40800000, 23360x40800000,
23300x00050848, 23370x00050849,
23310x48000001, 23380x48000001,
23320x0003001e, 23390x0003001e,
23330x48000000, 23400x48000000,
23340x0005004b, 23410x0005004c,
23350x0006006e, 23420x0006006f,
23360x00000000, 23430x00000000,
23370x280b0010, 23440x280b0010,
23380x80ae0000, 23450x80ae0000,
@@ -2340,99 +2347,99 @@ static const unsigned int build_actionlist[7580] = {
23400x80ce0008, 23470x80ce0008,
23410xc84e0008, 23480xc84e0008,
23420x41800000, 23490x41800000,
23430x00050848, 23500x00050849,
23440x7c05b040, 23510x7c05b040,
23450x40800000, 23520x40800000,
23460x00050848, 23530x00050849,
23470x7c06b040, 23540x7c06b040,
23480x40800000, 23550x40800000,
23490x00050848, 23560x00050849,
23500x48000001, 23570x48000001,
23510x0003001f, 23580x0003001f,
23520x48000000, 23590x48000000,
23530x0005004b, 23600x0005004c,
23540x0006006f, 23610x00060070,
23550x280b0010, 23620x280b0010,
23560x80ae0000, 23630x80ae0000,
23570xc82e0000, 23640xc82e0000,
23580x80ce0008, 23650x80ce0008,
23590xc84e0008, 23660xc84e0008,
23600x41800000, 23670x41800000,
23610x00050848, 23680x00050849,
23620x7c05b040, 23690x7c05b040,
23630x40800000, 23700x40800000,
23640x00050848, 23710x00050849,
23650x7c06b040, 23720x7c06b040,
23660x40800000, 23730x40800000,
23670x00050848, 23740x00050849,
23680x48000001, 23750x48000001,
23690x00030020, 23760x00030020,
23700x48000000, 23770x48000000,
23710x0005004b, 23780x0005004c,
23720x00060070, 23790x00060071,
23730x280b0010, 23800x280b0010,
23740x80ae0000, 23810x80ae0000,
23750xc82e0000, 23820xc82e0000,
23760x80ce0008, 23830x80ce0008,
23770xc84e0008, 23840xc84e0008,
23780x41800000, 23850x41800000,
23790x00050848, 23860x00050849,
23800x7c05b040, 23870x7c05b040,
23810x40800000, 23880x40800000,
23820x00050848, 23890x00050849,
23830x7c06b040, 23900x7c06b040,
23840x40800000, 23910x40800000,
23850x00050848, 23920x00050849,
23860x48000001, 23930x48000001,
23870x00030021, 23940x00030021,
23880x48000000, 23950x48000000,
23890x0005004b, 23960x0005004c,
23900x00060071,
23910x00060072, 23970x00060072,
23980x00060073,
23920x280b0008, 23990x280b0008,
23930x80ae0000, 24000x80ae0000,
23940xc82e0000, 24010xc82e0000,
23950x41800000, 24020x41800000,
23960x00050848, 24030x00050849,
23970x7c05b040, 24040x7c05b040,
23980x40800000, 24050x40800000,
23990x00050848, 24060x00050849,
24000xc84a0000, 24070xc84a0000,
24010x00098200, 24080x00098200,
24020x00000000, 24090x00000000,
24030xfc2100b2, 24100xfc2100b2,
24040x48000000, 24110x48000000,
24050x0005004b, 24120x0005004c,
24060x00000000, 24130x00000000,
24070x00060073, 24140x00060074,
24080x280b0010, 24150x280b0010,
24090x80ae0000, 24160x80ae0000,
24100xc82e0000, 24170xc82e0000,
24110x80ce0008, 24180x80ce0008,
24120x806e000c, 24190x806e000c,
24130x41800000, 24200x41800000,
24140x00050848, 24210x00050849,
24150x7c05b040, 24220x7c05b040,
24160x40800000, 24230x40800000,
24170x00050848, 24240x00050849,
24180x7c06b040, 24250x7c06b040,
24190x40820000, 24260x40820000,
24200x00050848, 24270x00050849,
24210x00000000, 24280x00000000,
24220x00060073, 24290x00060074,
24230x280b0010, 24300x280b0010,
24240x80ae0000, 24310x80ae0000,
24250xc82e0000, 24320xc82e0000,
24260x80ce0008, 24330x80ce0008,
24270xc84e0008, 24340xc84e0008,
24280x41800000, 24350x41800000,
24290x00050848, 24360x00050849,
24300x7c05b040, 24370x7c05b040,
24310x40800000, 24380x40800000,
24320x00050848, 24390x00050849,
24330x7c06b040, 24400x7c06b040,
24340x40800000, 24410x40800000,
24350x00050848, 24420x00050849,
24360xfc40101e, 24430xfc40101e,
24370xd8410010, 24440xd8410010,
24380x80610014, 24450x80610014,
@@ -2440,16 +2447,16 @@ static const unsigned int build_actionlist[7580] = {
24400x48000001, 24470x48000001,
24410x00030022, 24480x00030022,
24420x48000000, 24490x48000000,
24430x0005004b, 24500x0005004c,
24440x00060074, 24510x00060075,
24450x280b0008, 24520x280b0008,
24460x80ae0000, 24530x80ae0000,
24470xc82e0000, 24540xc82e0000,
24480x41800000, 24550x41800000,
24490x00050848, 24560x00050849,
24500x7c05b040, 24570x7c05b040,
24510x40800000, 24580x40800000,
24520x00050848, 24590x00050849,
24530x38710000, 24600x38710000,
24540x00098200, 24610x00098200,
24550x820efff8, 24620x820efff8,
@@ -2474,16 +2481,16 @@ static const unsigned int build_actionlist[7580] = {
24740xd8540008, 24810xd8540008,
24750x00000000, 24820x00000000,
24760x48000000, 24830x48000000,
24770x00050049, 24840x0005004a,
24780x00060075, 24850x00060076,
24790x280b0008, 24860x280b0008,
24800x80ae0000, 24870x80ae0000,
24810xc82e0000, 24880xc82e0000,
24820x41800000, 24890x41800000,
24830x00050848, 24900x00050849,
24840x7c05b040, 24910x7c05b040,
24850x40800000, 24920x40800000,
24860x00050848, 24930x00050849,
24870x386efff8, 24940x386efff8,
24880x820efff8, 24950x820efff8,
24890x48000001, 24960x48000001,
@@ -2493,14 +2500,14 @@ static const unsigned int build_actionlist[7580] = {
24930x39800000, 25000x39800000,
24940x00098200, 25010x00098200,
24950x48000000, 25020x48000000,
24960x00050049, 25030x0005004a,
24970x00000000, 25040x00000000,
24980x00060076, 25050x00060077,
24990x280b0008, 25060x280b0008,
25000x80ae0000, 25070x80ae0000,
25010x806e0004, 25080x806e0004,
25020x41800000, 25090x41800000,
25030x00050848, 25100x00050849,
25040x7c05b040, 25110x7c05b040,
25050x390e0008, 25120x390e0008,
25060x7d2e5a14, 25130x7d2e5a14,
@@ -2511,7 +2518,7 @@ static const unsigned int build_actionlist[7580] = {
25110x7c884840, 25180x7c884840,
25120x80880004, 25190x80880004,
25130x40840000, 25200x40840000,
25140x0005085d, 25210x0005085e,
25150x7c06b040, 25220x7c06b040,
25160x6c608000, 25230x6c608000,
25170x6c868000, 25240x6c868000,
@@ -2526,7 +2533,7 @@ static const unsigned int build_actionlist[7580] = {
25260x0005000b, 25330x0005000b,
25270x0006000d, 25340x0006000d,
25280x40800000, 25350x40800000,
25290x00050848, 25360x00050849,
25300x6c638000, 25370x6c638000,
25310x9061000c, 25380x9061000c,
25320xc8210008, 25390xc8210008,
@@ -2537,13 +2544,13 @@ static const unsigned int build_actionlist[7580] = {
25370x0006000e, 25440x0006000e,
25380xc82e0000, 25450xc82e0000,
25390x40800000, 25460x40800000,
25400x00050848, 25470x00050849,
25410x0006000f, 25480x0006000f,
25420x80c80000, 25490x80c80000,
25430x7c884840, 25500x7c884840,
25440xc8480000, 25510xc8480000,
25450x40840000, 25520x40840000,
25460x0005084b, 25530x0005084c,
25470x7c06b040, 25540x7c06b040,
25480x40800000, 25550x40800000,
25490x00050807, 25560x00050807,
@@ -2556,7 +2563,7 @@ static const unsigned int build_actionlist[7580] = {
25560x00060011, 25630x00060011,
25570x80880004, 25640x80880004,
25580x40820000, 25650x40820000,
25590x00050848, 25660x00050849,
25600x6c848000, 25670x6c848000,
25610x9081000c, 25680x9081000c,
25620xc8410008, 25690xc8410008,
@@ -2564,15 +2571,15 @@ static const unsigned int build_actionlist[7580] = {
25640x48000000, 25710x48000000,
25650x00050010, 25720x00050010,
25660x00000000, 25730x00000000,
25670x00060076, 25740x00060077,
25680x280b0008, 25750x280b0008,
25690x80ae0000, 25760x80ae0000,
25700xc82e0000, 25770xc82e0000,
25710x41800000, 25780x41800000,
25720x00050848, 25790x00050849,
25730x7c05b040, 25800x7c05b040,
25740x40800000, 25810x40800000,
25750x00050848, 25820x00050849,
25760x39000008, 25830x39000008,
25770x0006000b, 25840x0006000b,
25780x7c8e402e, 25850x7c8e402e,
@@ -2580,21 +2587,21 @@ static const unsigned int build_actionlist[7580] = {
25800x7c885840, 25870x7c885840,
25810x7c04b040, 25880x7c04b040,
25820x40840000, 25890x40840000,
25830x0005084b, 25900x0005084c,
25840x40800000, 25910x40800000,
25850x00050848, 25920x00050849,
25860xfc011028, 25930xfc011028,
25870x39080008, 25940x39080008,
25880xfc2008ae, 25950xfc2008ae,
25890x48000000, 25960x48000000,
25900x0005000b, 25970x0005000b,
25910x00000000, 25980x00000000,
25920x00060077, 25990x00060078,
25930x280b0008, 26000x280b0008,
25940x80ae0000, 26010x80ae0000,
25950x806e0004, 26020x806e0004,
25960x41800000, 26030x41800000,
25970x00050848, 26040x00050849,
25980x7c05b040, 26050x7c05b040,
25990x390e0008, 26060x390e0008,
26000x7d2e5a14, 26070x7d2e5a14,
@@ -2605,7 +2612,7 @@ static const unsigned int build_actionlist[7580] = {
26050x7c884840, 26120x7c884840,
26060x80880004, 26130x80880004,
26070x40840000, 26140x40840000,
26080x0005085d, 26150x0005085e,
26090x7c06b040, 26160x7c06b040,
26100x6c608000, 26170x6c608000,
26110x6c868000, 26180x6c868000,
@@ -2620,7 +2627,7 @@ static const unsigned int build_actionlist[7580] = {
26200x0005000b, 26270x0005000b,
26210x0006000d, 26280x0006000d,
26220x40800000, 26290x40800000,
26230x00050848, 26300x00050849,
26240x6c638000, 26310x6c638000,
26250x9061000c, 26320x9061000c,
26260xc8210008, 26330xc8210008,
@@ -2631,13 +2638,13 @@ static const unsigned int build_actionlist[7580] = {
26310x0006000e, 26380x0006000e,
26320xc82e0000, 26390xc82e0000,
26330x40800000, 26400x40800000,
26340x00050848, 26410x00050849,
26350x0006000f, 26420x0006000f,
26360x80c80000, 26430x80c80000,
26370x7c884840, 26440x7c884840,
26380xc8480000, 26450xc8480000,
26390x40840000, 26460x40840000,
26400x0005084b, 26470x0005084c,
26410x7c06b040, 26480x7c06b040,
26420x40800000, 26490x40800000,
26430x00050807, 26500x00050807,
@@ -2650,7 +2657,7 @@ static const unsigned int build_actionlist[7580] = {
26500x00060011, 26570x00060011,
26510x80880004, 26580x80880004,
26520x40820000, 26590x40820000,
26530x00050848, 26600x00050849,
26540x6c848000, 26610x6c848000,
26550x9081000c, 26620x9081000c,
26560xc8410008, 26630xc8410008,
@@ -2658,15 +2665,15 @@ static const unsigned int build_actionlist[7580] = {
26580x48000000, 26650x48000000,
26590x00050010, 26660x00050010,
26600x00000000, 26670x00000000,
26610x00060077, 26680x00060078,
26620x280b0008, 26690x280b0008,
26630x80ae0000, 26700x80ae0000,
26640xc82e0000, 26710xc82e0000,
26650x41800000, 26720x41800000,
26660x00050848, 26730x00050849,
26670x7c05b040, 26740x7c05b040,
26680x40800000, 26750x40800000,
26690x00050848, 26760x00050849,
26700x39000008, 26770x39000008,
26710x0006000b, 26780x0006000b,
26720x7c8e402e, 26790x7c8e402e,
@@ -2674,39 +2681,39 @@ static const unsigned int build_actionlist[7580] = {
26740x7c885840, 26810x7c885840,
26750x7c04b040, 26820x7c04b040,
26760x40840000, 26830x40840000,
26770x0005084b, 26840x0005084c,
26780x40800000, 26850x40800000,
26790x00050848, 26860x00050849,
26800xfc011028, 26870xfc011028,
26810x39080008, 26880x39080008,
26820xfc20106e, 26890xfc20106e,
26830x48000000, 26900x48000000,
26840x0005000b, 26910x0005000b,
26850x00000000, 26920x00000000,
26860x00060078, 26930x00060079,
26870x280b0008, 26940x280b0008,
26880x80ae0000, 26950x80ae0000,
26890x806e0004, 26960x806e0004,
26900x41800000, 26970x41800000,
26910x00050848, 26980x00050849,
26920x2c050000, 26990x2c050000,
26930x00098200, 27000x00098200,
26940x40820000, 27010x40820000,
26950x00050848, 27020x00050849,
26960x80630000, 27030x80630000,
26970x00098200, 27040x00098200,
26980x48000000, 27050x48000000,
26990x0005005d, 27060x0005005e,
27000x00060079, 27070x0006007a,
27010x280b0008, 27080x280b0008,
27020x80ae0000, 27090x80ae0000,
27030x806e0004, 27100x806e0004,
27040x40820000, 27110x40820000,
27050x00050848, 27120x00050849,
27060x2c050000, 27130x2c050000,
27070x00098200, 27140x00098200,
27080x40820000, 27150x40820000,
27090x00050848, 27160x00050849,
27100x80030000, 27170x80030000,
27110x00098200, 27180x00098200,
27120x00000000, 27190x00000000,
@@ -2718,9 +2725,9 @@ static const unsigned int build_actionlist[7580] = {
27180x28000000, 27250x28000000,
27190x3a8efff8, 27260x3a8efff8,
27200x41a20000, 27270x41a20000,
27210x00050849, 27280x0005084a,
27220x48000000, 27290x48000000,
27230x0005005d, 27300x0005005e,
27240x00000000, 27310x00000000,
27250x89030000, 27320x89030000,
27260x00098200, 27330x00098200,
@@ -2736,33 +2743,33 @@ static const unsigned int build_actionlist[7580] = {
27360x000900a1, 27430x000900a1,
27370xd8140000, 27440xd8140000,
27380x48000000, 27450x48000000,
27390x00050049, 27460x0005004a,
27400x00000000, 27470x00000000,
27410x0006007a, 27480x0006007b,
27420x80110000, 27490x80110000,
27430x00098200, 27500x00098200,
27440x81110000, 27510x81110000,
27450x00098200, 27520x00098200,
27460x7c004040, 27530x7c004040,
27470x40800001, 27540x40800001,
27480x00050852, 27550x00050853,
27490x280b0008, 27560x280b0008,
27500x80ae0000, 27570x80ae0000,
27510x00000000, 27580x00000000,
27520x800e0004, 27590x800e0004,
27530x40820000, 27600x40820000,
27540x00050848, 27610x00050849,
27550x7c05b040, 27620x7c05b040,
27560x40820000, 27630x40820000,
27570x00050848, 27640x00050849,
27580x388e0007, 27650x388e0007,
27590x00000000, 27660x00000000,
27600xc82e0000, 27670xc82e0000,
27610x40820000, 27680x40820000,
27620x00050848, 27690x00050849,
27630x7c05b040, 27700x7c05b040,
27640x40800000, 27710x40800000,
27650x00050848, 27720x00050849,
27660xfc20081e, 27730xfc20081e,
27670xd8210010, 27740xd8210010,
27680x80010014, 27750x80010014,
@@ -2771,8 +2778,8 @@ static const unsigned int build_actionlist[7580] = {
27710x38a00001, 27780x38a00001,
27720x280000ff, 27790x280000ff,
27730x41810000, 27800x41810000,
27740x00050848, 27810x00050849,
27750x0006007b, 27820x0006007c,
27760x7e439378, 27830x7e439378,
27770x91d20000, 27840x91d20000,
27780x00098200, 27850x00098200,
@@ -2784,15 +2791,15 @@ static const unsigned int build_actionlist[7580] = {
27840x38a00000, 27910x38a00000,
27850x00098200, 27920x00098200,
27860x48000000, 27930x48000000,
27870x0005004d, 27940x0005004e,
27880x0006007c, 27950x0006007d,
27890x80110000, 27960x80110000,
27900x00098200, 27970x00098200,
27910x81110000, 27980x81110000,
27920x00098200, 27990x00098200,
27930x7c004040, 28000x7c004040,
27940x40800001, 28010x40800001,
27950x00050852, 28020x00050853,
27960x280b0010, 28030x280b0010,
27970x80ae0010, 28040x80ae0010,
27980x00000000, 28050x00000000,
@@ -2801,7 +2808,7 @@ static const unsigned int build_actionlist[7580] = {
28010x800e0000, 28080x800e0000,
28020x806e0004, 28090x806e0004,
28030x41800000, 28100x41800000,
28040x00050848, 28110x00050849,
28050x808e0008, 28120x808e0008,
28060x00000000, 28130x00000000,
28070x810e000c, 28140x810e000c,
@@ -2815,27 +2822,27 @@ static const unsigned int build_actionlist[7580] = {
28150x7c05b040, 28220x7c05b040,
28160x812e0014, 28230x812e0014,
28170x40820000, 28240x40820000,
28180x00050848, 28250x00050849,
28190x0006000b, 28260x0006000b,
28200x7c04b040, 28270x7c04b040,
28210x40820000, 28280x40820000,
28220x00050848, 28290x00050849,
28230x00000000, 28300x00000000,
28240x7c05b040, 28310x7c05b040,
28250x40800000, 28320x40800000,
28260x00050848, 28330x00050849,
28270xfc00001e, 28340xfc00001e,
28280xd8010010, 28350xd8010010,
28290x81210014, 28360x81210014,
28300x0006000b, 28370x0006000b,
28310x7c04b040, 28380x7c04b040,
28320x40800000, 28390x40800000,
28330x00050848, 28400x00050849,
28340x00000000, 28410x00000000,
28350x2c000000, 28420x2c000000,
28360x00098200, 28430x00098200,
28370x40820000, 28440x40820000,
28380x00050848, 28450x00050849,
28390x00000000, 28460x00000000,
28400xfc20081e, 28470xfc20081e,
28410xd8210010, 28480xd8210010,
@@ -2861,7 +2868,7 @@ static const unsigned int build_actionlist[7580] = {
28610x7c844214, 28680x7c844214,
28620x7ca50078, 28690x7ca50078,
28630x48000000, 28700x48000000,
28640x0005007b, 28710x0005007c,
28650x0006000f, 28720x0006000f,
28660x7c890050, 28730x7c890050,
28670x7c84fe70, 28740x7c84fe70,
@@ -2878,14 +2885,14 @@ static const unsigned int build_actionlist[7580] = {
28780x39080001, 28850x39080001,
28790x48000000, 28860x48000000,
28800x0005000d, 28870x0005000d,
28810x0006007d, 28880x0006007e,
28820x80110000, 28890x80110000,
28830x00098200, 28900x00098200,
28840x81110000, 28910x81110000,
28850x00098200, 28920x00098200,
28860x7c004040, 28930x7c004040,
28870x40800001, 28940x40800001,
28880x00050852, 28950x00050853,
28890x280b0010, 28960x280b0010,
28900x800e0000, 28970x800e0000,
28910x806e0004, 28980x806e0004,
@@ -2896,19 +2903,19 @@ static const unsigned int build_actionlist[7580] = {
28960xc84e0008, 29030xc84e0008,
28970x00000000, 29040x00000000,
28980x41800000, 29050x41800000,
28990x00050848, 29060x00050849,
29000x2c000000, 29070x2c000000,
29010x00098200, 29080x00098200,
29020x40820000, 29090x40820000,
29030x00050848, 29100x00050849,
29040x00000000, 29110x00000000,
29050x7c06b040, 29120x7c06b040,
29060x40820000, 29130x40820000,
29070x00050848, 29140x00050849,
29080x00000000, 29150x00000000,
29090x7c06b040, 29160x7c06b040,
29100x40800000, 29170x40800000,
29110x00050848, 29180x00050849,
29120xfc40101e, 29190xfc40101e,
29130xd8410010, 29200xd8410010,
29140x80a10014, 29210x80a10014,
@@ -2926,13 +2933,13 @@ static const unsigned int build_actionlist[7580] = {
29260x00050802, 29330x00050802,
29270x7c882840, 29340x7c882840,
29280x40820000, 29350x40820000,
29290x00050848, 29360x00050849,
29300x88030000, 29370x88030000,
29310x00098200, 29380x00098200,
29320x80910000, 29390x80910000,
29330x00098200, 29400x00098200,
29340x41840000, 29410x41840000,
29350x00050848, 29420x00050849,
29360x0006000b, 29430x0006000b,
29370x28090000, 29440x28090000,
29380x7c0449ae, 29450x7c0449ae,
@@ -2940,34 +2947,34 @@ static const unsigned int build_actionlist[7580] = {
29400x40820000, 29470x40820000,
29410x0005080b, 29480x0005080b,
29420x48000000, 29490x48000000,
29430x0005007b, 29500x0005007c,
29440x0006000c, 29510x0006000c,
29450x38710000, 29520x38710000,
29460x00098200, 29530x00098200,
29470x38a00000, 29540x38a00000,
29480x00098200, 29550x00098200,
29490x48000000, 29560x48000000,
29500x0005004d, 29570x0005004e,
29510x0006007e, 29580x0006007f,
29520x80110000, 29590x80110000,
29530x00098200, 29600x00098200,
29540x81110000, 29610x81110000,
29550x00098200, 29620x00098200,
29560x7c004040, 29630x7c004040,
29570x40800001, 29640x40800001,
29580x00050852, 29650x00050853,
29590x280b0008, 29660x280b0008,
29600x80ae0000, 29670x80ae0000,
29610x806e0004, 29680x806e0004,
29620x41800000, 29690x41800000,
29630x00050848, 29700x00050849,
29640x2c050000, 29710x2c050000,
29650x00098200, 29720x00098200,
29660x81110000, 29730x81110000,
29670x00098200, 29740x00098200,
29680x00000000, 29750x00000000,
29690x40820000, 29760x40820000,
29700x00050848, 29770x00050849,
29710x80a30000, 29780x80a30000,
29720x00098200, 29790x00098200,
29730x38630000, 29800x38630000,
@@ -2978,36 +2985,36 @@ static const unsigned int build_actionlist[7580] = {
29780x7c082840, 29850x7c082840,
29790x38c5ffff, 29860x38c5ffff,
29800x41800000, 29870x41800000,
29810x00050848, 29880x00050849,
29820x0006000b, 29890x0006000b,
29830x2c060000, 29900x2c060000,
29840x7d0348ae, 29910x7d0348ae,
29850x41a00000, 29920x41a00000,
29860x0005087b, 29930x0005087c,
29870x7d0431ae, 29940x7d0431ae,
29880x38c6ffff, 29950x38c6ffff,
29890x39290001, 29960x39290001,
29900x48000000, 29970x48000000,
29910x0005000b, 29980x0005000b,
29920x0006007f, 29990x00060080,
29930x80110000, 30000x80110000,
29940x00098200, 30010x00098200,
29950x81110000, 30020x81110000,
29960x00098200, 30030x00098200,
29970x7c004040, 30040x7c004040,
29980x40800001, 30050x40800001,
29990x00050852, 30060x00050853,
30000x280b0008, 30070x280b0008,
30010x80ae0000, 30080x80ae0000,
30020x806e0004, 30090x806e0004,
30030x41800000, 30100x41800000,
30040x00050848, 30110x00050849,
30050x2c050000, 30120x2c050000,
30060x00098200, 30130x00098200,
30070x81110000, 30140x81110000,
30080x00098200, 30150x00098200,
30090x40820000, 30160x40820000,
30100x00050848, 30170x00050849,
30110x80a30000, 30180x80a30000,
30120x00098200, 30190x00098200,
30130x38630000, 30200x38630000,
@@ -3017,12 +3024,12 @@ static const unsigned int build_actionlist[7580] = {
30170x7c082840, 30240x7c082840,
30180x39200000, 30250x39200000,
30190x41800000, 30260x41800000,
30200x00050848, 30270x00050849,
30210x0006000b, 30280x0006000b,
30220x7c092840, 30290x7c092840,
30230x7d0348ae, 30300x7d0348ae,
30240x40a00000, 30310x40a00000,
30250x0005087b, 30320x0005087c,
30260x00000000, 30330x00000000,
30270x3808ffbf, 30340x3808ffbf,
30280x69060020, 30350x69060020,
@@ -3034,25 +3041,25 @@ static const unsigned int build_actionlist[7580] = {
30340x39290001, 30410x39290001,
30350x48000000, 30420x48000000,
30360x0005000b, 30430x0005000b,
30370x00060080, 30440x00060081,
30380x80110000, 30450x80110000,
30390x00098200, 30460x00098200,
30400x81110000, 30470x81110000,
30410x00098200, 30480x00098200,
30420x7c004040, 30490x7c004040,
30430x40800001, 30500x40800001,
30440x00050852, 30510x00050853,
30450x280b0008, 30520x280b0008,
30460x80ae0000, 30530x80ae0000,
30470x806e0004, 30540x806e0004,
30480x41800000, 30550x41800000,
30490x00050848, 30560x00050849,
30500x2c050000, 30570x2c050000,
30510x00098200, 30580x00098200,
30520x81110000, 30590x81110000,
30530x00098200, 30600x00098200,
30540x40820000, 30610x40820000,
30550x00050848, 30620x00050849,
30560x80a30000, 30630x80a30000,
30570x00098200, 30640x00098200,
30580x38630000, 30650x38630000,
@@ -3062,12 +3069,12 @@ static const unsigned int build_actionlist[7580] = {
30620x7c082840, 30690x7c082840,
30630x39200000, 30700x39200000,
30640x41800000, 30710x41800000,
30650x00050848, 30720x00050849,
30660x0006000b, 30730x0006000b,
30670x7c092840, 30740x7c092840,
30680x7d0348ae, 30750x7d0348ae,
30690x40a00000, 30760x40a00000,
30700x0005087b, 30770x0005087c,
30710x3808ff9f, 30780x3808ff9f,
30720x69060020, 30790x69060020,
30730x3000ffe6, 30800x3000ffe6,
@@ -3078,40 +3085,40 @@ static const unsigned int build_actionlist[7580] = {
30780x39290001, 30850x39290001,
30790x48000000, 30860x48000000,
30800x0005000b, 30870x0005000b,
30810x00060081, 30880x00060082,
30820x280b0008, 30890x280b0008,
30830x80ae0000, 30900x80ae0000,
30840x806e0004, 30910x806e0004,
30850x41800000, 30920x41800000,
30860x00050848, 30930x00050849,
30870x2c050000, 30940x2c050000,
30880x00098200, 30950x00098200,
30890x40820000, 30960x40820000,
30900x00050848, 30970x00050849,
30910x48000001, 30980x48000001,
30920x00030026, 30990x00030026,
30930x48000000, 31000x48000000,
30940x0005005d, 31010x0005005e,
30950x00000000, 31020x00000000,
30960x00060082, 31030x00060083,
30970x280b0008, 31040x280b0008,
30980x80ae0000, 31050x80ae0000,
30990x806e0004, 31060x806e0004,
31000x41800000, 31070x41800000,
31010x00050848, 31080x00050849,
31020x7c05b040, 31090x7c05b040,
31030x40820001, 31100x40820001,
31040x00050883, 31110x00050884,
31050x00000000, 31120x00000000,
31060x00060082, 31130x00060083,
31070x280b0008, 31140x280b0008,
31080x80ae0000, 31150x80ae0000,
31090xc82e0000, 31160xc82e0000,
31100x41800000, 31170x41800000,
31110x00050848, 31180x00050849,
31120x7c05b040, 31190x7c05b040,
31130x40800000, 31200x40800000,
31140x00050848, 31210x00050849,
31150xfc21f02a, 31220xfc21f02a,
31160xd8210010, 31230xd8210010,
31170x80610014, 31240x80610014,
@@ -3127,15 +3134,15 @@ static const unsigned int build_actionlist[7580] = {
31270xc8280000, 31340xc8280000,
31280x00000000, 31350x00000000,
31290x40a40000, 31360x40a40000,
31300x0005085d, 31370x0005085e,
31310x7c06b040, 31380x7c06b040,
31320x00000000, 31390x00000000,
31330x40820001, 31400x40820001,
31340x00050884, 31410x00050885,
31350x00000000, 31420x00000000,
31360xfc21f02a, 31430xfc21f02a,
31370x40800000, 31440x40800000,
31380x00050848, 31450x00050849,
31390xd8210010, 31460xd8210010,
31400x80810014, 31470x80810014,
31410x00000000, 31480x00000000,
@@ -3144,25 +3151,25 @@ static const unsigned int build_actionlist[7580] = {
31440x48000000, 31510x48000000,
31450x0005000b, 31520x0005000b,
31460x00000000, 31530x00000000,
31470x00060085, 31540x00060086,
31480x280b0008, 31550x280b0008,
31490x80ae0000, 31560x80ae0000,
31500x806e0004, 31570x806e0004,
31510x41800000, 31580x41800000,
31520x00050848, 31590x00050849,
31530x7c05b040, 31600x7c05b040,
31540x40820001, 31610x40820001,
31550x00050883, 31620x00050884,
31560x00000000, 31630x00000000,
31570x00060085, 31640x00060086,
31580x280b0008, 31650x280b0008,
31590x80ae0000, 31660x80ae0000,
31600xc82e0000, 31670xc82e0000,
31610x41800000, 31680x41800000,
31620x00050848, 31690x00050849,
31630x7c05b040, 31700x7c05b040,
31640x40800000, 31710x40800000,
31650x00050848, 31720x00050849,
31660xfc21f02a, 31730xfc21f02a,
31670xd8210010, 31740xd8210010,
31680x80610014, 31750x80610014,
@@ -3178,15 +3185,15 @@ static const unsigned int build_actionlist[7580] = {
31780xc8280000, 31850xc8280000,
31790x00000000, 31860x00000000,
31800x40a40000, 31870x40a40000,
31810x0005085d, 31880x0005085e,
31820x7c06b040, 31890x7c06b040,
31830x00000000, 31900x00000000,
31840x40820001, 31910x40820001,
31850x00050884, 31920x00050885,
31860x00000000, 31930x00000000,
31870xfc21f02a, 31940xfc21f02a,
31880x40800000, 31950x40800000,
31890x00050848, 31960x00050849,
31900xd8210010, 31970xd8210010,
31910x80810014, 31980x80810014,
31920x00000000, 31990x00000000,
@@ -3195,25 +3202,25 @@ static const unsigned int build_actionlist[7580] = {
31950x48000000, 32020x48000000,
31960x0005000b, 32030x0005000b,
31970x00000000, 32040x00000000,
31980x00060086, 32050x00060087,
31990x280b0008, 32060x280b0008,
32000x80ae0000, 32070x80ae0000,
32010x806e0004, 32080x806e0004,
32020x41800000, 32090x41800000,
32030x00050848, 32100x00050849,
32040x7c05b040, 32110x7c05b040,
32050x40820001, 32120x40820001,
32060x00050883, 32130x00050884,
32070x00000000, 32140x00000000,
32080x00060086, 32150x00060087,
32090x280b0008, 32160x280b0008,
32100x80ae0000, 32170x80ae0000,
32110xc82e0000, 32180xc82e0000,
32120x41800000, 32190x41800000,
32130x00050848, 32200x00050849,
32140x7c05b040, 32210x7c05b040,
32150x40800000, 32220x40800000,
32160x00050848, 32230x00050849,
32170xfc21f02a, 32240xfc21f02a,
32180xd8210010, 32250xd8210010,
32190x80610014, 32260x80610014,
@@ -3229,15 +3236,15 @@ static const unsigned int build_actionlist[7580] = {
32290xc8280000, 32360xc8280000,
32300x00000000, 32370x00000000,
32310x40a40000, 32380x40a40000,
32320x0005085d, 32390x0005085e,
32330x7c06b040, 32400x7c06b040,
32340x00000000, 32410x00000000,
32350x40820001, 32420x40820001,
32360x00050884, 32430x00050885,
32370x00000000, 32440x00000000,
32380xfc21f02a, 32450xfc21f02a,
32390x40800000, 32460x40800000,
32400x00050848, 32470x00050849,
32410xd8210010, 32480xd8210010,
32420x80810014, 32490x80810014,
32430x00000000, 32500x00000000,
@@ -3246,25 +3253,25 @@ static const unsigned int build_actionlist[7580] = {
32460x48000000, 32530x48000000,
32470x0005000b, 32540x0005000b,
32480x00000000, 32550x00000000,
32490x00060087, 32560x00060088,
32500x280b0008, 32570x280b0008,
32510x80ae0000, 32580x80ae0000,
32520x806e0004, 32590x806e0004,
32530x41800000, 32600x41800000,
32540x00050848, 32610x00050849,
32550x7c05b040, 32620x7c05b040,
32560x40820001, 32630x40820001,
32570x00050883, 32640x00050884,
32580x00000000, 32650x00000000,
32590x00060087, 32660x00060088,
32600x280b0008, 32670x280b0008,
32610x80ae0000, 32680x80ae0000,
32620xc82e0000, 32690xc82e0000,
32630x41800000, 32700x41800000,
32640x00050848, 32710x00050849,
32650x7c05b040, 32720x7c05b040,
32660x40800000, 32730x40800000,
32670x00050848, 32740x00050849,
32680xfc21f02a, 32750xfc21f02a,
32690xd8210010, 32760xd8210010,
32700x80610014, 32770x80610014,
@@ -3274,64 +3281,64 @@ static const unsigned int build_actionlist[7580] = {
32740x5060c42e, 32810x5060c42e,
32750x7c030378, 32820x7c030378,
32760x48000000, 32830x48000000,
32770x0005005d, 32840x0005005e,
32780x00000000, 32850x00000000,
32790x00060088, 32860x00060089,
32800x280b0008, 32870x280b0008,
32810x80ae0000, 32880x80ae0000,
32820x806e0004, 32890x806e0004,
32830x41800000, 32900x41800000,
32840x00050848, 32910x00050849,
32850x7c05b040, 32920x7c05b040,
32860x40820001, 32930x40820001,
32870x00050883, 32940x00050884,
32880x00000000, 32950x00000000,
32890x00060088, 32960x00060089,
32900x280b0008, 32970x280b0008,
32910x80ae0000, 32980x80ae0000,
32920xc82e0000, 32990xc82e0000,
32930x41800000, 33000x41800000,
32940x00050848, 33010x00050849,
32950x7c05b040, 33020x7c05b040,
32960x40800000, 33030x40800000,
32970x00050848, 33040x00050849,
32980xfc21f02a, 33050xfc21f02a,
32990xd8210010, 33060xd8210010,
33000x80610014, 33070x80610014,
33010x00000000, 33080x00000000,
33020x7c6318f8, 33090x7c6318f8,
33030x48000000, 33100x48000000,
33040x0005005d, 33110x0005005e,
33050x00000000, 33120x00000000,
33060x00060089, 33130x0006008a,
33070x280b0010, 33140x280b0010,
33080x80ae0000, 33150x80ae0000,
33090x80ce0008, 33160x80ce0008,
33100x806e0004, 33170x806e0004,
33110x808e000c, 33180x808e000c,
33120x41800000, 33190x41800000,
33130x00050848, 33200x00050849,
33140x7c05b040, 33210x7c05b040,
33150x40820001, 33220x40820001,
33160x00050883, 33230x00050884,
33170x7c06b040, 33240x7c06b040,
33180x40820000, 33250x40820000,
33190x00050848, 33260x00050849,
33200x00000000, 33270x00000000,
33210x00060089, 33280x0006008a,
33220x280b0010, 33290x280b0010,
33230x80ae0000, 33300x80ae0000,
33240xc82e0000, 33310xc82e0000,
33250x80ce0008, 33320x80ce0008,
33260xc84e0008, 33330xc84e0008,
33270x41800000, 33340x41800000,
33280x00050848, 33350x00050849,
33290x7c05b040, 33360x7c05b040,
33300x40800000, 33370x40800000,
33310x00050848, 33380x00050849,
33320x7c06b040, 33390x7c06b040,
33330x40800000, 33400x40800000,
33340x00050848, 33410x00050849,
33350xfc21f02a, 33420xfc21f02a,
33360xfc42f02a, 33430xfc42f02a,
33370xd8210010, 33440xd8210010,
@@ -3342,37 +3349,37 @@ static const unsigned int build_actionlist[7580] = {
33420x548406fe, 33490x548406fe,
33430x7c632030, 33500x7c632030,
33440x48000000, 33510x48000000,
33450x0005005d, 33520x0005005e,
33460x00000000, 33530x00000000,
33470x0006008a, 33540x0006008b,
33480x280b0010, 33550x280b0010,
33490x80ae0000, 33560x80ae0000,
33500x80ce0008, 33570x80ce0008,
33510x806e0004, 33580x806e0004,
33520x808e000c, 33590x808e000c,
33530x41800000, 33600x41800000,
33540x00050848, 33610x00050849,
33550x7c05b040, 33620x7c05b040,
33560x40820001, 33630x40820001,
33570x00050883, 33640x00050884,
33580x7c06b040, 33650x7c06b040,
33590x40820000, 33660x40820000,
33600x00050848, 33670x00050849,
33610x00000000, 33680x00000000,
33620x0006008a, 33690x0006008b,
33630x280b0010, 33700x280b0010,
33640x80ae0000, 33710x80ae0000,
33650xc82e0000, 33720xc82e0000,
33660x80ce0008, 33730x80ce0008,
33670xc84e0008, 33740xc84e0008,
33680x41800000, 33750x41800000,
33690x00050848, 33760x00050849,
33700x7c05b040, 33770x7c05b040,
33710x40800000, 33780x40800000,
33720x00050848, 33790x00050849,
33730x7c06b040, 33800x7c06b040,
33740x40800000, 33810x40800000,
33750x00050848, 33820x00050849,
33760xfc21f02a, 33830xfc21f02a,
33770xfc42f02a, 33840xfc42f02a,
33780xd8210010, 33850xd8210010,
@@ -3383,37 +3390,37 @@ static const unsigned int build_actionlist[7580] = {
33830x548406fe, 33900x548406fe,
33840x7c632430, 33910x7c632430,
33850x48000000, 33920x48000000,
33860x0005005d, 33930x0005005e,
33870x00000000, 33940x00000000,
33880x0006008b, 33950x0006008c,
33890x280b0010, 33960x280b0010,
33900x80ae0000, 33970x80ae0000,
33910x80ce0008, 33980x80ce0008,
33920x806e0004, 33990x806e0004,
33930x808e000c, 34000x808e000c,
33940x41800000, 34010x41800000,
33950x00050848, 34020x00050849,
33960x7c05b040, 34030x7c05b040,
33970x40820001, 34040x40820001,
33980x00050883, 34050x00050884,
33990x7c06b040, 34060x7c06b040,
34000x40820000, 34070x40820000,
34010x00050848, 34080x00050849,
34020x00000000, 34090x00000000,
34030x0006008b, 34100x0006008c,
34040x280b0010, 34110x280b0010,
34050x80ae0000, 34120x80ae0000,
34060xc82e0000, 34130xc82e0000,
34070x80ce0008, 34140x80ce0008,
34080xc84e0008, 34150xc84e0008,
34090x41800000, 34160x41800000,
34100x00050848, 34170x00050849,
34110x7c05b040, 34180x7c05b040,
34120x40800000, 34190x40800000,
34130x00050848, 34200x00050849,
34140x7c06b040, 34210x7c06b040,
34150x40800000, 34220x40800000,
34160x00050848, 34230x00050849,
34170xfc21f02a, 34240xfc21f02a,
34180xfc42f02a, 34250xfc42f02a,
34190xd8210010, 34260xd8210010,
@@ -3424,37 +3431,37 @@ static const unsigned int build_actionlist[7580] = {
34240x548406fe, 34310x548406fe,
34250x7c632630, 34320x7c632630,
34260x48000000, 34330x48000000,
34270x0005005d, 34340x0005005e,
34280x00000000, 34350x00000000,
34290x0006008c, 34360x0006008d,
34300x280b0010, 34370x280b0010,
34310x80ae0000, 34380x80ae0000,
34320x80ce0008, 34390x80ce0008,
34330x806e0004, 34400x806e0004,
34340x808e000c, 34410x808e000c,
34350x41800000, 34420x41800000,
34360x00050848, 34430x00050849,
34370x7c05b040, 34440x7c05b040,
34380x40820001, 34450x40820001,
34390x00050883, 34460x00050884,
34400x7c06b040, 34470x7c06b040,
34410x40820000, 34480x40820000,
34420x00050848, 34490x00050849,
34430x00000000, 34500x00000000,
34440x0006008c, 34510x0006008d,
34450x280b0010, 34520x280b0010,
34460x80ae0000, 34530x80ae0000,
34470xc82e0000, 34540xc82e0000,
34480x80ce0008, 34550x80ce0008,
34490xc84e0008, 34560xc84e0008,
34500x41800000, 34570x41800000,
34510x00050848, 34580x00050849,
34520x7c05b040, 34590x7c05b040,
34530x40800000, 34600x40800000,
34540x00050848, 34610x00050849,
34550x7c06b040, 34620x7c06b040,
34560x40800000, 34630x40800000,
34570x00050848, 34640x00050849,
34580xfc21f02a, 34650xfc21f02a,
34590xfc42f02a, 34660xfc42f02a,
34600xd8210010, 34670xd8210010,
@@ -3464,37 +3471,37 @@ static const unsigned int build_actionlist[7580] = {
34640x00000000, 34710x00000000,
34650x5c63203e, 34720x5c63203e,
34660x48000000, 34730x48000000,
34670x0005005d, 34740x0005005e,
34680x00000000, 34750x00000000,
34690x0006008d, 34760x0006008e,
34700x280b0010, 34770x280b0010,
34710x80ae0000, 34780x80ae0000,
34720x80ce0008, 34790x80ce0008,
34730x806e0004, 34800x806e0004,
34740x808e000c, 34810x808e000c,
34750x41800000, 34820x41800000,
34760x00050848, 34830x00050849,
34770x7c05b040, 34840x7c05b040,
34780x40820001, 34850x40820001,
34790x00050883, 34860x00050884,
34800x7c06b040, 34870x7c06b040,
34810x40820000, 34880x40820000,
34820x00050848, 34890x00050849,
34830x00000000, 34900x00000000,
34840x0006008d, 34910x0006008e,
34850x280b0010, 34920x280b0010,
34860x80ae0000, 34930x80ae0000,
34870xc82e0000, 34940xc82e0000,
34880x80ce0008, 34950x80ce0008,
34890xc84e0008, 34960xc84e0008,
34900x41800000, 34970x41800000,
34910x00050848, 34980x00050849,
34920x7c05b040, 34990x7c05b040,
34930x40800000, 35000x40800000,
34940x00050848, 35010x00050849,
34950x7c06b040, 35020x7c06b040,
34960x40800000, 35030x40800000,
34970x00050848, 35040x00050849,
34980xfc21f02a, 35050xfc21f02a,
34990xfc42f02a, 35060xfc42f02a,
35000xd8210010, 35070xd8210010,
@@ -3505,67 +3512,67 @@ static const unsigned int build_actionlist[7580] = {
35050x7c8400d0, 35120x7c8400d0,
35060x5c63203e, 35130x5c63203e,
35070x48000000, 35140x48000000,
35080x0005005d, 35150x0005005e,
35090x00000000, 35160x00000000,
35100x0006008e, 35170x0006008f,
35110x280b0008, 35180x280b0008,
35120x80ae0000, 35190x80ae0000,
35130x806e0004, 35200x806e0004,
35140x41800000, 35210x41800000,
35150x00050848, 35220x00050849,
35160x7c05b040, 35230x7c05b040,
35170x40820001, 35240x40820001,
35180x00050883, 35250x00050884,
35190x00000000, 35260x00000000,
35200x0006008e, 35270x0006008f,
35210x280b0008, 35280x280b0008,
35220x80ae0000, 35290x80ae0000,
35230xc82e0000, 35300xc82e0000,
35240x41800000, 35310x41800000,
35250x00050848, 35320x00050849,
35260x7c05b040, 35330x7c05b040,
35270x40800000, 35340x40800000,
35280x00050848, 35350x00050849,
35290xfc21f02a, 35360xfc21f02a,
35300xd8210010, 35370xd8210010,
35310x80610014, 35380x80610014,
35320x00000000, 35390x00000000,
35330x48000000, 35400x48000000,
35340x0005005d, 35410x0005005e,
35350x00000000, 35420x00000000,
35360x0006005d, 35430x0006005e,
35370x6c638000, 35440x6c638000,
35380x9061000c, 35450x9061000c,
35390xc8210008, 35460xc8210008,
35400xfc21f828, 35470xfc21f828,
35410x00000000, 35480x00000000,
35420x0006004b, 35490x0006004c,
35430x820efff8, 35500x820efff8,
35440x3a8efff8, 35510x3a8efff8,
35450xd82efff8, 35520xd82efff8,
35460x48000000, 35530x48000000,
35470x0005005e, 35540x0005005f,
35480x00060083, 35550x00060084,
35490x00000000, 35560x00000000,
35500xc82e0000, 35570xc82e0000,
35510x41810000, 35580x41810000,
35520x00050848, 35590x00050849,
35530xfc21f02a, 35600xfc21f02a,
35540xd8210010, 35610xd8210010,
35550x80610014, 35620x80610014,
35560x4e800020, 35630x4e800020,
35570x00000000, 35640x00000000,
35580x00060084, 35650x00060085,
35590x00000000, 35660x00000000,
35600xc8280000, 35670xc8280000,
35610x41810000, 35680x41810000,
35620x00050848, 35690x00050849,
35630xfc21f02a, 35700xfc21f02a,
35640xd8210010, 35710xd8210010,
35650x80810014, 35720x80810014,
35660x4e800020, 35730x4e800020,
35670x00000000, 35740x00000000,
35680x00060048, 35750x00060049,
35690x80ca0000, 35760x80ca0000,
35700x00098200, 35770x00098200,
35710x7d0e5a14, 35780x7d0e5a14,
@@ -3592,14 +3599,14 @@ static const unsigned int build_actionlist[7580] = {
35920x000900a1, 35990x000900a1,
35930x3a8efff8, 36000x3a8efff8,
35940x41810000, 36010x41810000,
35950x00050849, 36020x0005084a,
35960x0006000b, 36030x0006000b,
35970x80120000, 36040x80120000,
35980x00098200, 36050x00098200,
35990x814efffc, 36060x814efffc,
36000x7d6e0050, 36070x7d6e0050,
36010x40820000, 36080x40820000,
36020x00050828, 36090x00050829,
36030x820a0000, 36100x820a0000,
36040x00098200, 36110x00098200,
36050x80f00000, 36120x80f00000,
@@ -3610,7 +3617,7 @@ static const unsigned int build_actionlist[7580] = {
36100x7e947214, 36170x7e947214,
36110x7c0903a6, 36180x7c0903a6,
36120x4e800420, 36190x4e800420,
36130x00060028, 36200x00060029,
36140x72000000, 36210x72000000,
36150x00090200, 36220x00090200,
36160x56080038, 36230x56080038,
@@ -3633,7 +3640,7 @@ static const unsigned int build_actionlist[7580] = {
36330x7c000000, 36400x7c000000,
36340x48000000, 36410x48000000,
36350x0005000b, 36420x0005000b,
36360x00060052, 36430x00060053,
36370x7ea802a6, 36440x7ea802a6,
36380x91d20000, 36450x91d20000,
36390x00098200, 36460x00098200,
@@ -3652,7 +3659,7 @@ static const unsigned int build_actionlist[7580] = {
36520x7d6e0050, 36590x7d6e0050,
36530x814efffc, 36600x814efffc,
36540x4e800020, 36610x4e800020,
36550x0006008f, 36620x00060090,
36560x00000000, 36630x00000000,
36570x88d10000, 36640x88d10000,
36580x00098200, 36650x00098200,
@@ -3676,7 +3683,7 @@ static const unsigned int build_actionlist[7580] = {
36760x48000000, 36830x48000000,
36770x00050001, 36840x00050001,
36780x00000000, 36850x00000000,
36790x00060090, 36860x00060091,
36800x88d10000, 36870x88d10000,
36810x00098200, 36880x00098200,
36820x70c00000, 36890x70c00000,
@@ -3689,7 +3696,7 @@ static const unsigned int build_actionlist[7580] = {
36890x7c11402e, 36960x7c11402e,
36900x7c0903a6, 36970x7c0903a6,
36910x4e800420, 36980x4e800420,
36920x00060091, 36990x00060092,
36930x88d10000, 37000x88d10000,
36940x00098200, 37010x00098200,
36950x81310000, 37020x81310000,
@@ -3734,12 +3741,12 @@ static const unsigned int build_actionlist[7580] = {
37340x54eb9d78, 37410x54eb9d78,
37350x7c0903a6, 37420x7c0903a6,
37360x4e800420, 37430x4e800420,
37370x00060092, 37440x00060093,
37380x3a100004, 37450x3a100004,
37390x826affec, 37460x826affec,
37400x48000000, 37470x48000000,
37410x0005000e, 37480x0005000e,
37420x00060093, 37490x00060094,
37430x00000000, 37500x00000000,
37440x810efffc, 37510x810efffc,
37450x38710000, 37520x38710000,
@@ -3764,13 +3771,13 @@ static const unsigned int build_actionlist[7580] = {
37640x48000000, 37710x48000000,
37650x0005000d, 37720x0005000d,
37660x00000000, 37730x00000000,
37670x00060094, 37740x00060095,
37680x7e048378, 37750x7e048378,
37690x00000000, 37760x00000000,
37700x48000000, 37770x48000000,
37710x00050001, 37780x00050001,
37720x00000000, 37790x00000000,
37730x00060095, 37800x00060096,
37740x00000000, 37810x00000000,
37750x62040001, 37820x62040001,
37760x0006000b, 37830x0006000b,
@@ -3796,7 +3803,7 @@ static const unsigned int build_actionlist[7580] = {
37960x80f0fffc, 38030x80f0fffc,
37970x7c6903a6, 38040x7c6903a6,
37980x4e800420, 38050x4e800420,
37990x00060096, 38060x00060097,
38000x00000000, 38070x00000000,
38010x38210000, 38080x38210000,
38020x00098200, 38090x00098200,
@@ -3922,7 +3929,7 @@ static const unsigned int build_actionlist[7580] = {
39220x48000000, 39290x48000000,
39230x00050001, 39300x00050001,
39240x00000000, 39310x00000000,
39250x00060097, 39320x00060098,
39260x00000000, 39330x00000000,
39270x82410024, 39340x82410024,
39280x3a3f0000, 39350x3a3f0000,
@@ -3981,18 +3988,18 @@ static const unsigned int build_actionlist[7580] = {
39810x48000001, 39880x48000001,
39820x0003002c, 39890x0003002c,
39830x00000000, 39900x00000000,
39840x00060098, 39910x00060099,
39850x48000000, 39920x48000000,
39860x00030010, 39930x00030010,
39870x00060099, 39940x0006009a,
39880x48000000, 39950x48000000,
39890x00030011, 39960x00030011,
39900x0006009a, 39970x0006009b,
39910x00000000, 39980x00000000,
39920x48000000, 39990x48000000,
39930x0003002d, 40000x0003002d,
39940x00000000, 40010x00000000,
39950x0006009b, 40020x0006009c,
39960x7c0327d7, 40030x7c0327d7,
39970x41830000, 40040x41830000,
39980x00050801, 40050x00050801,
@@ -4010,7 +4017,7 @@ static const unsigned int build_actionlist[7580] = {
40100x4d820020, 40170x4d820020,
40110x7c000400, 40180x7c000400,
40120x4e800020, 40190x4e800020,
40130x0006009c, 40200x0006009d,
40140x28030001, 40210x28030001,
40150x41820000, 40220x41820000,
40160x00050801, 40230x00050801,
@@ -4096,7 +4103,191 @@ static const unsigned int build_actionlist[7580] = {
40960x00000000, 41030x00000000,
40970x7c810808, 41040x7c810808,
40980x00000000, 41050x00000000,
40990x0006009d, 41060x0006009e,
41070x00000000,
41080x9421fef0,
41090x91c10000,
41100x00098200,
41110xd9c10000,
41120x00098200,
41130x91e10000,
41140x00098200,
41150xd9e10000,
41160x00098200,
41170x92010000,
41180x00098200,
41190xda010000,
41200x00098200,
41210x7c0802a6,
41220x92210000,
41230x00098200,
41240xda210000,
41250x00098200,
41260x92410000,
41270x00098200,
41280xda410000,
41290x00098200,
41300x92610000,
41310x00098200,
41320xda610000,
41330x00098200,
41340x92810000,
41350x00098200,
41360xda810000,
41370x00098200,
41380x92a10000,
41390x00098200,
41400xdaa10000,
41410x00098200,
41420x92c10000,
41430x00098200,
41440xdac10000,
41450x00098200,
41460x90010114,
41470x92e10000,
41480x00098200,
41490xdae10000,
41500x00098200,
41510x93010000,
41520x00098200,
41530xdb010000,
41540x00098200,
41550x00000000,
41560x93210000,
41570x00098200,
41580xdb210000,
41590x00098200,
41600x7c000026,
41610x93410000,
41620x00098200,
41630xdb410000,
41640x00098200,
41650x93610000,
41660x00098200,
41670xdb610000,
41680x00098200,
41690x93810000,
41700x00098200,
41710xdb810000,
41720x00098200,
41730x93a10000,
41740x00098200,
41750xdba10000,
41760x00098200,
41770x93c10000,
41780x00098200,
41790xdbc10000,
41800x00098200,
41810x93e10000,
41820x00098200,
41830xdbe10000,
41840x00098200,
41850x90010034,
41860x820c0000,
41870x00098200,
41880x3a2c0000,
41890x00098200,
41900x91700000,
41910x00098200,
41920x90700000,
41930x00098200,
41940xd8300000,
41950x00098200,
41960x90900000,
41970x00098200,
41980xd8500000,
41990x00098200,
42000x90b00000,
42010x00098200,
42020x00000000,
42030xd8700000,
42040x00098200,
42050x90d00000,
42060x00098200,
42070xd8900000,
42080x00098200,
42090x90f00000,
42100x00098200,
42110xd8b00000,
42120x00098200,
42130x91100000,
42140x00098200,
42150xd8d00000,
42160x00098200,
42170x91300000,
42180x00098200,
42190xd8f00000,
42200x00098200,
42210x91500000,
42220x00098200,
42230xd9100000,
42240x00098200,
42250x38010000,
42260x00098200,
42270x90100000,
42280x00098200,
42290x7e038378,
42300x92010020,
42310x7c240b78,
42320x48000001,
42330x0003002e,
42340x81c30000,
42350x00098200,
42360x3ac00000,
42370x00098200,
42380x81630000,
42390x00098200,
42400x3cc059c0,
42410x3b000000,
42420x7c721b78,
42430x90c10010,
42440x814efffc,
42450x60c60004,
42460x3ae00000,
42470x00098200,
42480x38000000,
42490x00098200,
42500xc3c10010,
42510x90c10010,
42520x7d6e5850,
42530x90110000,
42540x00098200,
42550xc3e10010,
42560x820a0000,
42570x00098200,
42580x80f00000,
42590x3a100004,
42600x54e815ba,
42610x54f4dd78,
42620x7c11402e,
42630x7e947214,
42640x7c0903a6,
42650x4e800420,
42660x00000000,
42670x00060028,
42680x00000000,
42690x82110000,
42700x00098200,
42710x91d20000,
42720x00098200,
42730x91520000,
42740x00098200,
42750x92500000,
42760x00098200,
42770x7e038378,
42780x7e84a378,
42790x48000001,
42800x0003002f,
42810x80700000,
42820x00098200,
42830xc8300000,
42840x00098200,
42850x80900000,
42860x00098200,
42870x48000000,
42880x0005001a,
42890x00000000,
42900x0006009f,
41000x00000000, 42910x00000000,
41010x81030000, 42920x81030000,
41020x00098200, 42930x00098200,
@@ -4234,10 +4425,10 @@ static const unsigned int build_actionlist[7580] = {
42340x4e800420, 44250x4e800420,
42350x00060011, 44260x00060011,
42360x41810000, 44270x41810000,
42370x00050834, 44280x00050835,
42380xc8140000, 44290xc8140000,
42390x41850000, 44300x41850000,
42400x00050834, 44310x00050835,
42410x41840000, 44320x41840000,
42420x00050804, 44330x00050804,
42430x6ca58000, 44340x6ca58000,
@@ -4248,7 +4439,7 @@ static const unsigned int build_actionlist[7580] = {
42480x00050005, 44390x00050005,
42490x00060012, 44400x00060012,
42500x41850000, 44410x41850000,
42510x00050834, 44420x00050835,
42520x6c848000, 44430x6c848000,
42530x9081000c, 44440x9081000c,
42540xc8010008, 44450xc8010008,
@@ -4285,11 +4476,11 @@ static const unsigned int build_actionlist[7580] = {
42850x7c88b040, 44760x7c88b040,
42860x552993ba, 44770x552993ba,
42870x40800000, 44780x40800000,
42880x00050834, 44790x00050835,
42890x3d290000, 44800x3d290000,
42900x00098200, 44810x00098200,
42910x40840000, 44820x40840000,
42920x00050834, 44830x00050835,
42930xfc000800, 44840xfc000800,
42940x00000000, 44850x00000000,
42950x40800000, 44860x40800000,
@@ -4333,10 +4524,10 @@ static const unsigned int build_actionlist[7580] = {
43330x00098200, 45240x00098200,
43340x00000000, 45250x00000000,
43350x409d0000, 45260x409d0000,
43360x0005089e, 45270x000508a0,
43370x00000000, 45280x00000000,
43380x409d0000, 45290x409d0000,
43390x0005089f, 45300x000508a1,
43400x00000000, 45310x00000000,
43410x7c14706e, 45320x7c14706e,
43420x81300000, 45330x81300000,
@@ -4396,7 +4587,7 @@ static const unsigned int build_actionlist[7580] = {
43960x00090200, 45870x00090200,
43970x00000000, 45880x00000000,
43980x419e0000, 45890x419e0000,
43990x0005083a, 45900x0005083b,
44000x00000000, 45910x00000000,
44010x7e842840, 45920x7e842840,
44020x4c222902, 45930x4c222902,
@@ -4451,7 +4642,7 @@ static const unsigned int build_actionlist[7580] = {
44510x0005080b, 46420x0005080b,
44520x7eb0ab78, 46430x7eb0ab78,
44530x48000000, 46440x48000000,
44540x00050039, 46450x0005003a,
44550x00000000, 46460x00000000,
44560x7c14706e, 46470x7c14706e,
44570x558c007e, 46480x558c007e,
@@ -4469,7 +4660,7 @@ static const unsigned int build_actionlist[7580] = {
44690x00098200, 46600x00098200,
44700x00000000, 46610x00000000,
44710x41820000, 46620x41820000,
44720x0005083a, 46630x0005083b,
44730x00000000, 46640x00000000,
44740x7d064050, 46650x7d064050,
44750x7c004378, 46660x7c004378,
@@ -4507,9 +4698,9 @@ static const unsigned int build_actionlist[7580] = {
45070x3d290000, 46980x3d290000,
45080x00098200, 46990x00098200,
45090x00000000, 47000x00000000,
45100x0006009e, 47010x000600a0,
45110x00000000, 47020x00000000,
45120x0006009f, 47030x000600a1,
45130x00000000, 47040x00000000,
45140x40820000, 47050x40820000,
45150x00050807, 47060x00050807,
@@ -4518,9 +4709,9 @@ static const unsigned int build_actionlist[7580] = {
45180x7c042800, 47090x7c042800,
45190x0006000e, 47100x0006000e,
45200x00000000, 47110x00000000,
45210x0006009e, 47120x000600a0,
45220x00000000, 47130x00000000,
45230x0006009f, 47140x000600a1,
45240x00000000, 47150x00000000,
45250x7c0ea02e, 47160x7c0ea02e,
45260x3a100004, 47170x3a100004,
@@ -4566,7 +4757,7 @@ static const unsigned int build_actionlist[7580] = {
45660x2c000000, 47570x2c000000,
45670x00098200, 47580x00098200,
45680x41820000, 47590x41820000,
45690x0005083a, 47600x0005083b,
45700x48000000, 47610x48000000,
45710x0005000b, 47620x0005000b,
45720x00000000, 47630x00000000,
@@ -4607,7 +4798,7 @@ static const unsigned int build_actionlist[7580] = {
46070x7c080050, 47980x7c080050,
46080x00000000, 47990x00000000,
46090x41820000, 48000x41820000,
46100x0005083a, 48010x0005083b,
46110x00000000, 48020x00000000,
46120x552993ba, 48030x552993ba,
46130x3000ffff, 48040x3000ffff,
@@ -4740,7 +4931,7 @@ static const unsigned int build_actionlist[7580] = {
47400x00000000, 49310x00000000,
47410x0006000f, 49320x0006000f,
47420x40800000, 49330x40800000,
47430x0005083d, 49340x0005083e,
47440x6d088000, 49350x6d088000,
47450x00060011, 49360x00060011,
47460x80f00000, 49370x80f00000,
@@ -4794,7 +4985,7 @@ static const unsigned int build_actionlist[7580] = {
47940x2c000000, 49850x2c000000,
47950x00098200, 49860x00098200,
47960x40820000, 49870x40820000,
47970x00050842, 49880x00050843,
47980x00000000, 49890x00000000,
47990x81230000, 49900x81230000,
48000x00098200, 49910x00098200,
@@ -4803,7 +4994,7 @@ static const unsigned int build_actionlist[7580] = {
48030x00050809, 49940x00050809,
48040x0006000d, 49950x0006000d,
48050x00000000, 49960x00000000,
48060x00060043, 49970x00060044,
48070x48000001, 49980x48000001,
48080x00030026, 49990x00030026,
48090x48000000, 50000x48000000,
@@ -4817,7 +5008,7 @@ static const unsigned int build_actionlist[7580] = {
48170x40820000, 50080x40820000,
48180x0005080d, 50090x0005080d,
48190x48000000, 50100x48000000,
48200x00050042, 50110x00050043,
48210x00000000, 50120x00000000,
48220x7d0a706e, 50130x7d0a706e,
48230x7d2b786e, 50140x7d2b786e,
@@ -4865,13 +5056,13 @@ static const unsigned int build_actionlist[7580] = {
48650x0005080b, 50560x0005080b,
48660x00000000, 50570x00000000,
48670x48000000, 50580x48000000,
48680x00050040, 50590x00050041,
48690x00000000, 50600x00000000,
48700x48000000, 50610x48000000,
48710x0005003c, 50620x0005003d,
48720x00000000, 50630x00000000,
48730x48000000, 50640x48000000,
48740x00050041, 50650x00050042,
48750x00000000, 50660x00000000,
48760x0006000f, 50670x0006000f,
48770x00000000, 50680x00000000,
@@ -4884,13 +5075,13 @@ static const unsigned int build_actionlist[7580] = {
48840xc9eb0000, 50750xc9eb0000,
48850x00000000, 50760x00000000,
48860x40800000, 50770x40800000,
48870x00050840, 50780x00050841,
48880x00000000, 50790x00000000,
48890x40800000, 50800x40800000,
48900x0005083c, 50810x0005083d,
48910x00000000, 50820x00000000,
48920x40800000, 50830x40800000,
48930x00050841, 50840x00050842,
48940x00000000, 50850x00000000,
48950xfc0e782a, 50860xfc0e782a,
48960x80f00000, 50870x80f00000,
@@ -4910,11 +5101,11 @@ static const unsigned int build_actionlist[7580] = {
49100x7c89b040, 51010x7c89b040,
49110x4c002202, 51020x4c002202,
49120x40800000, 51030x40800000,
49130x0005083e, 51040x0005083f,
49140x00000000, 51050x00000000,
49150x7c08b040, 51060x7c08b040,
49160x40800000, 51070x40800000,
49170x0005083e, 51080x0005083f,
49180x00000000, 51090x00000000,
49190x7d0e502e, 51100x7d0e502e,
49200x00000000, 51110x00000000,
@@ -4927,11 +5118,11 @@ static const unsigned int build_actionlist[7580] = {
49270x7c89b040, 51180x7c89b040,
49280x4c002202, 51190x4c002202,
49290x40800000, 51200x40800000,
49300x0005083b, 51210x0005083c,
49310x00000000, 51220x00000000,
49320x7c08b040, 51230x7c08b040,
49330x40800000, 51240x40800000,
49340x0005083b, 51250x0005083c,
49350x00000000, 51260x00000000,
49360x7d0e502e, 51270x7d0e502e,
49370x7d2e582e, 51280x7d2e582e,
@@ -4941,7 +5132,7 @@ static const unsigned int build_actionlist[7580] = {
49410x7c89b040, 51320x7c89b040,
49420x4c002202, 51330x4c002202,
49430x40800000, 51340x40800000,
49440x0005083f, 51350x00050840,
49450x00000000, 51360x00000000,
49460xfc0e782a, 51370xfc0e782a,
49470x80f00000, 51380x80f00000,
@@ -5002,13 +5193,13 @@ static const unsigned int build_actionlist[7580] = {
50020x0005080b, 51930x0005080b,
50030x00000000, 51940x00000000,
50040x48000000, 51950x48000000,
50050x00050040, 51960x00050041,
50060x00000000, 51970x00000000,
50070x48000000, 51980x48000000,
50080x0005003c, 51990x0005003d,
50090x00000000, 52000x00000000,
50100x48000000, 52010x48000000,
50110x00050041, 52020x00050042,
50120x00000000, 52030x00000000,
50130x0006000f, 52040x0006000f,
50140x00000000, 52050x00000000,
@@ -5021,13 +5212,13 @@ static const unsigned int build_actionlist[7580] = {
50210xc9eb0000, 52120xc9eb0000,
50220x00000000, 52130x00000000,
50230x40800000, 52140x40800000,
50240x00050840, 52150x00050841,
50250x00000000, 52160x00000000,
50260x40800000, 52170x40800000,
50270x0005083c, 52180x0005083d,
50280x00000000, 52190x00000000,
50290x40800000, 52200x40800000,
50300x00050841, 52210x00050842,
50310x00000000, 52220x00000000,
50320xfc0e7828, 52230xfc0e7828,
50330x80f00000, 52240x80f00000,
@@ -5047,11 +5238,11 @@ static const unsigned int build_actionlist[7580] = {
50470x7c89b040, 52380x7c89b040,
50480x4c002202, 52390x4c002202,
50490x40800000, 52400x40800000,
50500x0005083e, 52410x0005083f,
50510x00000000, 52420x00000000,
50520x7c08b040, 52430x7c08b040,
50530x40800000, 52440x40800000,
50540x0005083e, 52450x0005083f,
50550x00000000, 52460x00000000,
50560x7d0e502e, 52470x7d0e502e,
50570x00000000, 52480x00000000,
@@ -5064,11 +5255,11 @@ static const unsigned int build_actionlist[7580] = {
50640x7c89b040, 52550x7c89b040,
50650x4c002202, 52560x4c002202,
50660x40800000, 52570x40800000,
50670x0005083b, 52580x0005083c,
50680x00000000, 52590x00000000,
50690x7c08b040, 52600x7c08b040,
50700x40800000, 52610x40800000,
50710x0005083b, 52620x0005083c,
50720x00000000, 52630x00000000,
50730x7d0e502e, 52640x7d0e502e,
50740x7d2e582e, 52650x7d2e582e,
@@ -5078,7 +5269,7 @@ static const unsigned int build_actionlist[7580] = {
50780x7c89b040, 52690x7c89b040,
50790x4c002202, 52700x4c002202,
50800x40800000, 52710x40800000,
50810x0005083f, 52720x00050840,
50820x00000000, 52730x00000000,
50830xfc0e7828, 52740xfc0e7828,
50840x80f00000, 52750x80f00000,
@@ -5139,13 +5330,13 @@ static const unsigned int build_actionlist[7580] = {
51390x0005080b, 53300x0005080b,
51400x00000000, 53310x00000000,
51410x48000000, 53320x48000000,
51420x00050040, 53330x00050041,
51430x00000000, 53340x00000000,
51440x48000000, 53350x48000000,
51450x0005003c, 53360x0005003d,
51460x00000000, 53370x00000000,
51470x48000000, 53380x48000000,
51480x00050041, 53390x00050042,
51490x00000000, 53400x00000000,
51500x0006000f, 53410x0006000f,
51510x00000000, 53420x00000000,
@@ -5158,13 +5349,13 @@ static const unsigned int build_actionlist[7580] = {
51580xc9eb0000, 53490xc9eb0000,
51590x00000000, 53500x00000000,
51600x40800000, 53510x40800000,
51610x00050840, 53520x00050841,
51620x00000000, 53530x00000000,
51630x40800000, 53540x40800000,
51640x0005083c, 53550x0005083d,
51650x00000000, 53560x00000000,
51660x40800000, 53570x40800000,
51670x00050841, 53580x00050842,
51680x00000000, 53590x00000000,
51690xfc0e03f2, 53600xfc0e03f2,
51700x80f00000, 53610x80f00000,
@@ -5184,11 +5375,11 @@ static const unsigned int build_actionlist[7580] = {
51840x7c89b040, 53750x7c89b040,
51850x4c002202, 53760x4c002202,
51860x40800000, 53770x40800000,
51870x0005083e, 53780x0005083f,
51880x00000000, 53790x00000000,
51890x7c08b040, 53800x7c08b040,
51900x40800000, 53810x40800000,
51910x0005083e, 53820x0005083f,
51920x00000000, 53830x00000000,
51930x7d0e502e, 53840x7d0e502e,
51940x00000000, 53850x00000000,
@@ -5201,11 +5392,11 @@ static const unsigned int build_actionlist[7580] = {
52010x7c89b040, 53920x7c89b040,
52020x4c002202, 53930x4c002202,
52030x40800000, 53940x40800000,
52040x0005083b, 53950x0005083c,
52050x00000000, 53960x00000000,
52060x7c08b040, 53970x7c08b040,
52070x40800000, 53980x40800000,
52080x0005083b, 53990x0005083c,
52090x00000000, 54000x00000000,
52100x7d0e502e, 54010x7d0e502e,
52110x7d2e582e, 54020x7d2e582e,
@@ -5215,7 +5406,7 @@ static const unsigned int build_actionlist[7580] = {
52150x7c89b040, 54060x7c89b040,
52160x4c002202, 54070x4c002202,
52170x40800000, 54080x40800000,
52180x0005083f, 54090x00050840,
52190x00000000, 54100x00000000,
52200xfc0e03f2, 54110xfc0e03f2,
52210x80f00000, 54120x80f00000,
@@ -5241,11 +5432,11 @@ static const unsigned int build_actionlist[7580] = {
52410x7c89b040, 54320x7c89b040,
52420x4c002202, 54330x4c002202,
52430x40800000, 54340x40800000,
52440x0005083e, 54350x0005083f,
52450x00000000, 54360x00000000,
52460x7c08b040, 54370x7c08b040,
52470x40800000, 54380x40800000,
52480x0005083e, 54390x0005083f,
52490x00000000, 54400x00000000,
52500x7d0e502e, 54410x7d0e502e,
52510x00000000, 54420x00000000,
@@ -5258,11 +5449,11 @@ static const unsigned int build_actionlist[7580] = {
52580x7c89b040, 54490x7c89b040,
52590x4c002202, 54500x4c002202,
52600x40800000, 54510x40800000,
52610x0005083b, 54520x0005083c,
52620x00000000, 54530x00000000,
52630x7c08b040, 54540x7c08b040,
52640x40800000, 54550x40800000,
52650x0005083b, 54560x0005083c,
52660x00000000, 54570x00000000,
52670x7d0e502e, 54580x7d0e502e,
52680x7d2e582e, 54590x7d2e582e,
@@ -5272,7 +5463,7 @@ static const unsigned int build_actionlist[7580] = {
52720x7c89b040, 54630x7c89b040,
52730x4c002202, 54640x4c002202,
52740x40800000, 54650x40800000,
52750x0005083f, 54660x00050840,
52760x00000000, 54670x00000000,
52770xfc0e7824, 54680xfc0e7824,
52780x80f00000, 54690x80f00000,
@@ -5311,7 +5502,7 @@ static const unsigned int build_actionlist[7580] = {
53110x40860000, 55020x40860000,
53120x00050805, 55030x00050805,
53130x48000001, 55040x48000001,
53140x0005009b, 55050x0005009c,
53150x41830000, 55060x41830000,
53160x00050804, 55070x00050804,
53170x0006000b, 55080x0006000b,
@@ -5334,13 +5525,13 @@ static const unsigned int build_actionlist[7580] = {
53340x0005080b, 55250x0005080b,
53350x00000000, 55260x00000000,
53360x48000000, 55270x48000000,
53370x00050040, 55280x00050041,
53380x00000000, 55290x00000000,
53390x48000000, 55300x48000000,
53400x0005003c, 55310x0005003d,
53410x00000000, 55320x00000000,
53420x48000000, 55330x48000000,
53430x00050041, 55340x00050042,
53440x00000000, 55350x00000000,
53450x0006000f, 55360x0006000f,
53460x00000000, 55370x00000000,
@@ -5353,15 +5544,15 @@ static const unsigned int build_actionlist[7580] = {
53530xc9eb0000, 55440xc9eb0000,
53540x00000000, 55450x00000000,
53550x40800000, 55460x40800000,
53560x00050840, 55470x00050841,
53570x00000000, 55480x00000000,
53580x40800000, 55490x40800000,
53590x0005083c, 55500x0005083d,
53600x00000000, 55510x00000000,
53610x40800000, 55520x40800000,
53620x00050841, 55530x00050842,
53630x00000000, 55540x00000000,
53640x000600a0, 55550x000600a2,
53650xfc2e7824, 55560xfc2e7824,
53660x48000001, 55570x48000001,
53670x00030010, 55580x00030010,
@@ -5384,11 +5575,11 @@ static const unsigned int build_actionlist[7580] = {
53840x7c89b040, 55750x7c89b040,
53850x4c002202, 55760x4c002202,
53860x40800000, 55770x40800000,
53870x0005083e, 55780x0005083f,
53880x00000000, 55790x00000000,
53890x7c08b040, 55800x7c08b040,
53900x40800000, 55810x40800000,
53910x0005083e, 55820x0005083f,
53920x00000000, 55830x00000000,
53930x7d0e502e, 55840x7d0e502e,
53940x00000000, 55850x00000000,
@@ -5401,11 +5592,11 @@ static const unsigned int build_actionlist[7580] = {
54010x7c89b040, 55920x7c89b040,
54020x4c002202, 55930x4c002202,
54030x40800000, 55940x40800000,
54040x0005083b, 55950x0005083c,
54050x00000000, 55960x00000000,
54060x7c08b040, 55970x7c08b040,
54070x40800000, 55980x40800000,
54080x0005083b, 55990x0005083c,
54090x00000000, 56000x00000000,
54100x7d0e502e, 56010x7d0e502e,
54110x7d2e582e, 56020x7d2e582e,
@@ -5415,9 +5606,9 @@ static const unsigned int build_actionlist[7580] = {
54150x7c89b040, 56060x7c89b040,
54160x4c002202, 56070x4c002202,
54170x40800000, 56080x40800000,
54180x0005083f, 56090x00050840,
54190x00000000, 56100x00000000,
54200x000600a0, 56110x000600a2,
54210xfc2e7824, 56120xfc2e7824,
54220x48000001, 56130x48000001,
54230x00030010, 56140x00030010,
@@ -5459,7 +5650,7 @@ static const unsigned int build_actionlist[7580] = {
54590x40860000, 56500x40860000,
54600x00050805, 56510x00050805,
54610x48000001, 56520x48000001,
54620x0005009b, 56530x0005009c,
54630x41830000, 56540x41830000,
54640x00050804, 56550x00050804,
54650x0006000b, 56560x0006000b,
@@ -5482,13 +5673,13 @@ static const unsigned int build_actionlist[7580] = {
54820x0005080b, 56730x0005080b,
54830x00000000, 56740x00000000,
54840x48000000, 56750x48000000,
54850x00050040, 56760x00050041,
54860x00000000, 56770x00000000,
54870x48000000, 56780x48000000,
54880x0005003c, 56790x0005003d,
54890x00000000, 56800x00000000,
54900x48000000, 56810x48000000,
54910x00050041, 56820x00050042,
54920x00000000, 56830x00000000,
54930x0006000f, 56840x0006000f,
54940x00000000, 56850x00000000,
@@ -5501,16 +5692,16 @@ static const unsigned int build_actionlist[7580] = {
55010xc9eb0000, 56920xc9eb0000,
55020x00000000, 56930x00000000,
55030x40800000, 56940x40800000,
55040x00050840, 56950x00050841,
55050x00000000, 56960x00000000,
55060x40800000, 56970x40800000,
55070x0005083c, 56980x0005083d,
55080x00000000, 56990x00000000,
55090x40800000, 57000x40800000,
55100x00050841, 57010x00050842,
55110x00000000, 57020x00000000,
55120x48000000, 57030x48000000,
55130x000500a0, 57040x000500a2,
55140x00000000, 57050x00000000,
55150x7d0e502e, 57060x7d0e502e,
55160x00000000, 57070x00000000,
@@ -5523,11 +5714,11 @@ static const unsigned int build_actionlist[7580] = {
55230x7c89b040, 57140x7c89b040,
55240x4c002202, 57150x4c002202,
55250x40800000, 57160x40800000,
55260x0005083e, 57170x0005083f,
55270x00000000, 57180x00000000,
55280x7c08b040, 57190x7c08b040,
55290x40800000, 57200x40800000,
55300x0005083e, 57210x0005083f,
55310x00000000, 57220x00000000,
55320x7d0e502e, 57230x7d0e502e,
55330x00000000, 57240x00000000,
@@ -5540,11 +5731,11 @@ static const unsigned int build_actionlist[7580] = {
55400x7c89b040, 57310x7c89b040,
55410x4c002202, 57320x4c002202,
55420x40800000, 57330x40800000,
55430x0005083b, 57340x0005083c,
55440x00000000, 57350x00000000,
55450x7c08b040, 57360x7c08b040,
55460x40800000, 57370x40800000,
55470x0005083b, 57380x0005083c,
55480x00000000, 57390x00000000,
55490x7d0e502e, 57400x7d0e502e,
55500x7d2e582e, 57410x7d2e582e,
@@ -5554,10 +5745,10 @@ static const unsigned int build_actionlist[7580] = {
55540x7c89b040, 57450x7c89b040,
55550x4c002202, 57460x4c002202,
55560x40800000, 57470x40800000,
55570x0005083f, 57480x00050840,
55580x00000000, 57490x00000000,
55590x48000000, 57500x48000000,
55600x000500a0, 57510x000500a2,
55610x00000000, 57520x00000000,
55620x7d0e502e, 57530x7d0e502e,
55630x7c2e54ae, 57540x7c2e54ae,
@@ -5567,7 +5758,7 @@ static const unsigned int build_actionlist[7580] = {
55670x7c89b040, 57580x7c89b040,
55680x4c002202, 57590x4c002202,
55690x40800000, 57600x40800000,
55700x0005083f, 57610x00050840,
55710x48000001, 57620x48000001,
55720x0003001f, 57630x0003001f,
55730x80f00000, 57640x80f00000,
@@ -5587,18 +5778,18 @@ static const unsigned int build_actionlist[7580] = {
55870x00098200, 57780x00098200,
55880x7c8e5a14, 57790x7c8e5a14,
55890x7d555378, 57800x7d555378,
55900x0006002a, 57810x0006002b,
55910x92010020, 57820x92010020,
55920x7e439378, 57830x7e439378,
55930x54a500fe, 57840x54a500fe,
55940x000900ab, 57850x000900ab,
55950x48000001, 57860x48000001,
55960x0003002e, 57870x00030030,
55970x28030000, 57880x28030000,
55980x81d20000, 57890x81d20000,
55990x00098200, 57900x00098200,
56000x40820000, 57910x40820000,
56010x00050835, 57920x00050836,
56020x80f00000, 57930x80f00000,
56030x3a100004, 57940x3a100004,
56040x7c0eacae, 57950x7c0eacae,
@@ -5811,7 +6002,7 @@ static const unsigned int build_actionlist[7580] = {
58110x41820000, 60020x41820000,
58120x0005080b, 60030x0005080b,
58130x48000001, 60040x48000001,
58140x0003002f, 60050x00030031,
58150x48000000, 60060x48000000,
58160x0005000b, 60070x0005000b,
58170x00000000, 60080x00000000,
@@ -5862,7 +6053,7 @@ static const unsigned int build_actionlist[7580] = {
58620x41820000, 60530x41820000,
58630x0005080b, 60540x0005080b,
58640x48000001, 60550x48000001,
58650x0003002f, 60560x00030031,
58660x48000000, 60570x48000000,
58670x0005000b, 60580x0005000b,
58680x00000000, 60590x00000000,
@@ -5925,7 +6116,7 @@ static const unsigned int build_actionlist[7580] = {
59250x00050801, 61160x00050801,
59260x7c8ea214, 61170x7c8ea214,
59270x48000001, 61180x48000001,
59280x00030030, 61190x00030032,
59290x81d20000, 61200x81d20000,
59300x00098200, 61210x00098200,
59310x0006000b, 61220x0006000b,
@@ -5950,7 +6141,7 @@ static const unsigned int build_actionlist[7580] = {
59500x7e439378, 61410x7e439378,
59510x80aefffc, 61420x80aefffc,
59520x48000001, 61430x48000001,
59530x00030031, 61440x00030033,
59540x81d20000, 61450x81d20000,
59550x00098200, 61460x00098200,
59560x38000000, 61470x38000000,
@@ -5988,14 +6179,14 @@ static const unsigned int build_actionlist[7580] = {
59880x00050803, 61790x00050803,
59890x0006000c, 61800x0006000c,
59900x48000001, 61810x48000001,
59910x00030032, 61820x00030034,
59920x00000000, 61830x00000000,
59930x5588007e, 61840x5588007e,
59940x000900ab, 61850x000900ab,
59950x2108fffc, 61860x2108fffc,
59960x7c8f402e, 61870x7c8f402e,
59970x48000001, 61880x48000001,
59980x00030033, 61890x00030035,
59990x00000000, 61900x00000000,
60000x81d20000, 61910x81d20000,
60010x00098200, 61920x00098200,
@@ -6022,7 +6213,7 @@ static const unsigned int build_actionlist[7580] = {
60220x0006000f, 62130x0006000f,
60230x7d956378, 62140x7d956378,
60240x48000001, 62150x48000001,
60250x00030034, 62160x00030036,
60260x7eacab78, 62170x7eacab78,
60270x7e439378, 62180x7e439378,
60280x48000000, 62190x48000000,
@@ -6037,10 +6228,10 @@ static const unsigned int build_actionlist[7580] = {
60370x7d6f402e, 62280x7d6f402e,
60380x00000000, 62290x00000000,
60390x48000000, 62300x48000000,
60400x000500a1, 62310x000500a3,
60410x00000000, 62320x00000000,
60420x48000000, 62330x48000000,
60430x000500a2, 62340x000500a4,
60440x00000000, 62350x00000000,
60450x7c6a706e, 62360x7c6a706e,
60460x7c8b706e, 62370x7c8b706e,
@@ -6054,7 +6245,7 @@ static const unsigned int build_actionlist[7580] = {
60540x00098200, 62450x00098200,
60550x7c84b040, 62460x7c84b040,
60560x40820000, 62470x40820000,
60570x0005082f, 62480x00050830,
60580x00000000, 62490x00000000,
60590x800a0000, 62500x800a0000,
60600x00098200, 62510x00098200,
@@ -6084,7 +6275,7 @@ static const unsigned int build_actionlist[7580] = {
60840x000900a1, 62750x000900a1,
60850x00000000, 62760x00000000,
60860x40810000, 62770x40810000,
60870x0005082f, 62780x00050830,
60880x7c08482e, 62790x7c08482e,
60890x7dc84cae, 62800x7dc84cae,
60900x2c000000, 62810x2c000000,
@@ -6116,17 +6307,17 @@ static const unsigned int build_actionlist[7580] = {
61160x40820000, 63070x40820000,
61170x0005080b, 63080x0005080b,
61180x48000000, 63090x48000000,
61190x0005002f, 63100x00050030,
61200x0006000f, 63110x0006000f,
61210x2c040000, 63120x2c040000,
61220x00098200, 63130x00098200,
61230x40820000, 63140x40820000,
61240x0005082f, 63150x00050830,
61250x00000000, 63160x00000000,
61260x816b0004, 63170x816b0004,
61270x00000000, 63180x00000000,
61280x48000000, 63190x48000000,
61290x000500a1, 63200x000500a3,
61300x00000000, 63210x00000000,
61310x7c6a706e, 63220x7c6a706e,
61320x5568007e, 63230x5568007e,
@@ -6137,8 +6328,8 @@ static const unsigned int build_actionlist[7580] = {
61370x00098200, 63280x00098200,
61380x7d6f402e, 63290x7d6f402e,
61390x40820000, 63300x40820000,
61400x0005082c, 63310x0005082d,
61410x000600a1, 63320x000600a3,
61420x800a0000, 63330x800a0000,
61430x00098200, 63340x00098200,
61440x810b0000, 63350x810b0000,
@@ -6207,7 +6398,7 @@ static const unsigned int build_actionlist[7580] = {
62070x40820000, 63980x40820000,
62080x0005080d, 63990x0005080d,
62090x48000000, 64000x48000000,
62100x0005002d, 64010x0005002e,
62110x00000000, 64020x00000000,
62120x7c6a706e, 64030x7c6a706e,
62130x556000fe, 64040x556000fe,
@@ -6216,14 +6407,14 @@ static const unsigned int build_actionlist[7580] = {
62160x2c030000, 64070x2c030000,
62170x00098200, 64080x00098200,
62180x40820000, 64090x40820000,
62190x0005082e, 64100x0005082f,
62200x810a0000, 64110x810a0000,
62210x00098200, 64120x00098200,
62220x812a0000, 64130x812a0000,
62230x00098200, 64140x00098200,
62240x7c004040, 64150x7c004040,
62250x40800000, 64160x40800000,
62260x0005082e, 64170x0005082f,
62270x7d09582e, 64180x7d09582e,
62280x7c095cae, 64190x7c095cae,
62290x2c080000, 64200x2c080000,
@@ -6255,7 +6446,7 @@ static const unsigned int build_actionlist[7580] = {
62550x40820000, 64460x40820000,
62560x0005080b, 64470x0005080b,
62570x48000000, 64480x48000000,
62580x0005002e, 64490x0005002f,
62590x00000000, 64500x00000000,
62600x7c6a706e, 64510x7c6a706e,
62610x7c8b706e, 64520x7c8b706e,
@@ -6269,7 +6460,7 @@ static const unsigned int build_actionlist[7580] = {
62690x00098200, 64600x00098200,
62700x7c84b040, 64610x7c84b040,
62710x40820000, 64620x40820000,
62720x00050833, 64630x00050834,
62730x00000000, 64640x00000000,
62740x800a0000, 64650x800a0000,
62750x00098200, 64660x00098200,
@@ -6299,7 +6490,7 @@ static const unsigned int build_actionlist[7580] = {
62990x000900a1, 64900x000900a1,
63000x00000000, 64910x00000000,
63010x40810000, 64920x40810000,
63020x00050833, 64930x00050834,
63030x7d28002e, 64940x7d28002e,
63040x88ca0000, 64950x88ca0000,
63050x00098200, 64960x00098200,
@@ -6338,17 +6529,17 @@ static const unsigned int build_actionlist[7580] = {
63380x40820000, 65290x40820000,
63390x0005080b, 65300x0005080b,
63400x48000000, 65310x48000000,
63410x00050033, 65320x00050034,
63420x0006000f, 65330x0006000f,
63430x2c040000, 65340x2c040000,
63440x00098200, 65350x00098200,
63450x40820000, 65360x40820000,
63460x00050833, 65370x00050834,
63470x00000000, 65380x00000000,
63480x816b0004, 65390x816b0004,
63490x00000000, 65400x00000000,
63500x48000000, 65410x48000000,
63510x000500a2, 65420x000500a4,
63520x00060011, 65430x00060011,
63530x80110000, 65440x80110000,
63540x00098200, 65450x00098200,
@@ -6397,8 +6588,8 @@ static const unsigned int build_actionlist[7580] = {
63970x00098200, 65880x00098200,
63980x7d6f402e, 65890x7d6f402e,
63990x40820000, 65900x40820000,
64000x00050830, 65910x00050831,
64010x000600a2, 65920x000600a4,
64020x800a0000, 65930x800a0000,
64030x00098200, 65940x00098200,
64040x810b0000, 65950x810b0000,
@@ -6469,7 +6660,7 @@ static const unsigned int build_actionlist[7580] = {
64690x40820000, 66600x40820000,
64700x0005080c, 66610x0005080c,
64710x48000000, 66620x48000000,
64720x00050031, 66630x00050032,
64730x0006000f, 66640x0006000f,
64740x81290000, 66650x81290000,
64750x00098200, 66660x00098200,
@@ -6492,7 +6683,7 @@ static const unsigned int build_actionlist[7580] = {
64920x70000000, 66830x70000000,
64930x00090200, 66840x00090200,
64940x41820000, 66850x41820000,
64950x00050831, 66860x00050832,
64960x00060010, 66870x00060010,
64970x00000000, 66880x00000000,
64980x38000000, 66890x38000000,
@@ -6501,7 +6692,7 @@ static const unsigned int build_actionlist[7580] = {
65010x7d445378, 66920x7d445378,
65020x90050000, 66930x90050000,
65030x48000001, 66940x48000001,
65040x00030035, 66950x00030037,
65050x81d20000, 66960x81d20000,
65060x00098200, 66970x00098200,
65070xd9c30000, 66980xd9c30000,
@@ -6527,7 +6718,7 @@ static const unsigned int build_actionlist[7580] = {
65270x2c030000, 67180x2c030000,
65280x00098200, 67190x00098200,
65290x40820000, 67200x40820000,
65300x00050832, 67210x00050833,
65310x810a0000, 67220x810a0000,
65320x00098200, 67230x00098200,
65330x812a0000, 67240x812a0000,
@@ -6537,7 +6728,7 @@ static const unsigned int build_actionlist[7580] = {
65370x7c004040, 67280x7c004040,
65380x7dcea4ae, 67290x7dcea4ae,
65390x40800000, 67300x40800000,
65400x00050832, 67310x00050833,
65410x7d09582e, 67320x7d09582e,
65420x2c080000, 67330x2c080000,
65430x00098200, 67340x00098200,
@@ -6573,7 +6764,7 @@ static const unsigned int build_actionlist[7580] = {
65730x40820000, 67640x40820000,
65740x0005080b, 67650x0005080b,
65750x48000000, 67660x48000000,
65760x00050032, 67670x00050033,
65770x00060011, 67680x00060011,
65780x80110000, 67690x80110000,
65790x00098200, 67700x00098200,
@@ -6642,7 +6833,7 @@ static const unsigned int build_actionlist[7580] = {
66420x92010020, 68330x92010020,
66430x7d956378, 68340x7d956378,
66440x48000001, 68350x48000001,
66450x00030036, 68360x00030038,
66460x7eacab78, 68370x7eacab78,
66470x48000000, 68380x48000000,
66480x0005000b, 68390x0005000b,
@@ -6693,8 +6884,8 @@ static const unsigned int build_actionlist[7580] = {
66930x00098200, 68840x00098200,
66940x3a940008, 68850x3a940008,
66950x40820000, 68860x40820000,
66960x00050844, 68870x00050845,
66970x00060045, 68880x00060046,
66980x71000000, 68890x71000000,
66990x00090200, 68900x00090200,
67000x88ca0000, 68910x88ca0000,
@@ -7027,7 +7218,7 @@ static const unsigned int build_actionlist[7580] = {
70270x6a080000, 72180x6a080000,
70280x00090200, 72190x00090200,
70290x40820000, 72200x40820000,
70300x000508a3, 72210x000508a5,
70310x00060017, 72220x00060017,
70320x80f0fffc, 72230x80f0fffc,
70330x2c0c0008, 72240x2c0c0008,
@@ -7078,7 +7269,7 @@ static const unsigned int build_actionlist[7580] = {
70780x7ee9412e, 72690x7ee9412e,
70790x48000000, 72700x48000000,
70800x0005000f, 72710x0005000f,
70810x000600a3, 72720x000600a5,
70820x71090000, 72730x71090000,
70830x00090200, 72740x00090200,
70840x40820000, 72750x40820000,
@@ -7096,7 +7287,7 @@ static const unsigned int build_actionlist[7580] = {
70960x6a080000, 72870x6a080000,
70970x00090200, 72880x00090200,
70980x40a20000, 72890x40a20000,
70990x000508a3, 72900x000508a5,
71000x80f0fffc, 72910x80f0fffc,
71010x392efff8, 72920x392efff8,
71020x54ea5d78, 72930x54ea5d78,
@@ -7140,7 +7331,7 @@ static const unsigned int build_actionlist[7580] = {
71400x00098200, 73310x00098200,
71410x7d31432e, 73320x7d31432e,
71420x41800000, 73330x41800000,
71430x00050893, 73340x00050894,
71440x00000000, 73350x00000000,
71450x7d14706e, 73360x7d14706e,
71460x80740000, 73370x80740000,
@@ -7267,7 +7458,7 @@ static const unsigned int build_actionlist[7580] = {
72670xc8540000, 74580xc8540000,
72680x00098200, 74590x00098200,
72690x40800000, 74600x40800000,
72700x00050846, 74610x00050847,
72710x00000000, 74620x00000000,
72720x2f060000, 74630x2f060000,
72730x00000000, 74640x00000000,
@@ -7355,7 +7546,7 @@ static const unsigned int build_actionlist[7580] = {
73550x00098200, 75460x00098200,
73560x7d31432e, 75470x7d31432e,
73570x41800000, 75480x41800000,
73580x00050893, 75490x00050894,
73590x00000000, 75500x00000000,
73600x7d14706e, 75510x7d14706e,
73610x81340004, 75520x81340004,
@@ -7397,7 +7588,7 @@ static const unsigned int build_actionlist[7580] = {
73970x00098200, 75880x00098200,
73980x7d31432e, 75890x7d31432e,
73990x41800000, 75900x41800000,
74000x00050893, 75910x00050894,
74010x00000000, 75920x00000000,
74020x80f00000, 75930x80f00000,
74030x3a100004, 75940x3a100004,
@@ -7453,7 +7644,7 @@ static const unsigned int build_actionlist[7580] = {
74530x00098200, 76440x00098200,
74540x7d31432e, 76450x7d31432e,
74550x41800000, 76460x41800000,
74560x00050895, 76470x00050896,
74570x00000000, 76480x00000000,
74580x81320000, 76490x81320000,
74590x00098200, 76500x00098200,
@@ -7616,6 +7807,7 @@ enum {
7616 GLOB_vmeta_call, 7807 GLOB_vmeta_call,
7617 GLOB_vm_call_dispatch_f, 7808 GLOB_vm_call_dispatch_f,
7618 GLOB_vm_cpcall, 7809 GLOB_vm_cpcall,
7810 GLOB_cont_ffi_callback,
7619 GLOB_vm_call_tail, 7811 GLOB_vm_call_tail,
7620 GLOB_cont_cat, 7812 GLOB_cont_cat,
7621 GLOB_BC_CAT_Z, 7813 GLOB_BC_CAT_Z,
@@ -7733,6 +7925,7 @@ enum {
7733 GLOB_vm_trunc, 7925 GLOB_vm_trunc,
7734 GLOB_vm_modi, 7926 GLOB_vm_modi,
7735 GLOB_vm_foldarith, 7927 GLOB_vm_foldarith,
7928 GLOB_vm_ffi_callback,
7736 GLOB_vm_ffi_call, 7929 GLOB_vm_ffi_call,
7737 GLOB_BC_ISEQN_Z, 7930 GLOB_BC_ISEQN_Z,
7738 GLOB_BC_ISNEN_Z, 7931 GLOB_BC_ISNEN_Z,
@@ -7763,6 +7956,7 @@ static const char *const globnames[] = {
7763 "vmeta_call", 7956 "vmeta_call",
7764 "vm_call_dispatch_f", 7957 "vm_call_dispatch_f",
7765 "vm_cpcall", 7958 "vm_cpcall",
7959 "cont_ffi_callback",
7766 "vm_call_tail", 7960 "vm_call_tail",
7767 "cont_cat", 7961 "cont_cat",
7768 "BC_CAT_Z", 7962 "BC_CAT_Z",
@@ -7880,6 +8074,7 @@ static const char *const globnames[] = {
7880 "vm_trunc", 8074 "vm_trunc",
7881 "vm_modi", 8075 "vm_modi",
7882 "vm_foldarith", 8076 "vm_foldarith",
8077 "vm_ffi_callback",
7883 "vm_ffi_call", 8078 "vm_ffi_call",
7884 "BC_ISEQN_Z", 8079 "BC_ISEQN_Z",
7885 "BC_ISNEN_Z", 8080 "BC_ISNEN_Z",
@@ -7936,6 +8131,8 @@ static const char *const extnames[] = {
7936 "lj_trace_exit", 8131 "lj_trace_exit",
7937 "lj_err_throw", 8132 "lj_err_throw",
7938 "trunc", 8133 "trunc",
8134 "lj_ccallback_enter",
8135 "lj_ccallback_leave",
7939 "lj_meta_cat", 8136 "lj_meta_cat",
7940 "lj_gc_barrieruv", 8137 "lj_gc_barrieruv",
7941 "lj_func_closeuv", 8138 "lj_func_closeuv",
@@ -7974,385 +8171,407 @@ static void build_subroutines(BuildCtx *ctx)
7974 dasm_put(Dst, 105, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, Dt1(->maxstack)); 8171 dasm_put(Dst, 105, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, Dt1(->maxstack));
7975 dasm_put(Dst, 154, Dt1(->top), 31-3, Dt1(->top), ~LJ_VMST_C, Dt1(->glref), Dt2(->vmstate), LJ_TISNUM, Dt1(->base), Dt1(->glref), LJ_TFALSE, LJ_TNIL, ~LJ_VMST_INTERP, GG_G2DISP); 8172 dasm_put(Dst, 154, Dt1(->top), 31-3, Dt1(->top), ~LJ_VMST_C, Dt1(->glref), Dt2(->vmstate), LJ_TISNUM, Dt1(->base), Dt1(->glref), LJ_TFALSE, LJ_TNIL, ~LJ_VMST_INTERP, GG_G2DISP);
7976 dasm_put(Dst, 217, DISPATCH_GL(vmstate), LUA_MINSTACK, Dt1(->base), Dt1(->top), 32-3, Dt1(->base), Dt1(->top), Dt7(->pc), 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4); 8173 dasm_put(Dst, 217, DISPATCH_GL(vmstate), LUA_MINSTACK, Dt1(->base), Dt1(->top), 32-3, Dt1(->base), Dt1(->top), Dt7(->pc), 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4);
7977 dasm_put(Dst, 277, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4); 8174 dasm_put(Dst, 278, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4);
7978 dasm_put(Dst, 326, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, Dt1(->glref), Dt1(->status), FRAME_CP, CFRAME_RESUME, GG_G2DISP, Dt1(->cframe), Dt1(->base), LJ_TISNUM, Dt1(->top), Dt1(->status), FRAME_TYPE, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate)); 8175 dasm_put(Dst, 325, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, Dt1(->glref), Dt1(->status), FRAME_CP, CFRAME_RESUME, GG_G2DISP, Dt1(->cframe), Dt1(->base), LJ_TISNUM, Dt1(->top), Dt1(->status), FRAME_TYPE, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate));
7979 dasm_put(Dst, 393, 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4); 8176 dasm_put(Dst, 393, 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4);
7980 dasm_put(Dst, 440, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, FRAME_CP, 56+(14-14)*4, 128+(14-14)*8); 8177 dasm_put(Dst, 440, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, FRAME_CP, 56+(14-14)*4, 128+(14-14)*8);
7981 dasm_put(Dst, 488, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8); 8178 dasm_put(Dst, 488, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8);
7982 dasm_put(Dst, 535, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, Dt1(->base), LJ_TISNUM, Dt1(->top)); 8179 dasm_put(Dst, 535, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, Dt1(->base), LJ_TISNUM, Dt1(->top));
7983 dasm_put(Dst, 586, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate), LJ_TFUNC, Dt7(->pc), 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4); 8180 dasm_put(Dst, 586, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate), LJ_TFUNC, Dt7(->pc), 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4);
7984 dasm_put(Dst, 654, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4); 8181 dasm_put(Dst, 653, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4);
7985 dasm_put(Dst, 701, 128+(31-14)*8, Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), Dt1(->glref), FRAME_CP, GG_G2DISP, Dt7(->pc), PC2PROTO(k), Dt1(->base), DISPATCH_GL(tmptv)); 8182 dasm_put(Dst, 700, 128+(31-14)*8, Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), Dt1(->glref), FRAME_CP, GG_G2DISP);
7986 dasm_put(Dst, 775, LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR); 8183#if LJ_HASFFI
8184 dasm_put(Dst, 738);
8185#endif
8186 dasm_put(Dst, 740, Dt7(->pc));
8187#if LJ_HASFFI
8188 dasm_put(Dst, 746);
8189#endif
8190 dasm_put(Dst, 749, PC2PROTO(k));
8191#if LJ_HASFFI
8192 dasm_put(Dst, 754);
8193#endif
8194 dasm_put(Dst, 762, Dt1(->base), DISPATCH_GL(tmptv), LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR);
7987 if (!LJ_DUALNUM) { 8195 if (!LJ_DUALNUM) {
7988 dasm_put(Dst, 800); 8196 dasm_put(Dst, 807);
7989 } 8197 }
7990 dasm_put(Dst, 804, DISPATCH_GL(tmptv)); 8198 dasm_put(Dst, 811, DISPATCH_GL(tmptv));
7991 if (LJ_DUALNUM) { 8199 if (LJ_DUALNUM) {
7992 dasm_put(Dst, 809); 8200 dasm_put(Dst, 816);
7993 } else { 8201 } else {
7994 dasm_put(Dst, 812); 8202 dasm_put(Dst, 819);
7995 } 8203 }
7996 dasm_put(Dst, 814, Dt1(->base), FRAME_CONT, Dt1(->top), DISPATCH_GL(tmptv), LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR); 8204 dasm_put(Dst, 821, Dt1(->base), FRAME_CONT, Dt1(->top), DISPATCH_GL(tmptv), LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR);
7997 if (!LJ_DUALNUM) { 8205 if (!LJ_DUALNUM) {
7998 dasm_put(Dst, 882); 8206 dasm_put(Dst, 889);
7999 } 8207 }
8000 dasm_put(Dst, 886, DISPATCH_GL(tmptv)); 8208 dasm_put(Dst, 893, DISPATCH_GL(tmptv));
8001 if (LJ_DUALNUM) { 8209 if (LJ_DUALNUM) {
8002 dasm_put(Dst, 891); 8210 dasm_put(Dst, 898);
8003 } else { 8211 } else {
8004 dasm_put(Dst, 894); 8212 dasm_put(Dst, 901);
8005 } 8213 }
8006 dasm_put(Dst, 896, Dt1(->base), FRAME_CONT, Dt1(->top)); 8214 dasm_put(Dst, 903, Dt1(->base), FRAME_CONT, Dt1(->top));
8007 if (LJ_DUALNUM) { 8215 if (LJ_DUALNUM) {
8008 dasm_put(Dst, 941); 8216 dasm_put(Dst, 948);
8009 } else { 8217 } else {
8010 dasm_put(Dst, 943); 8218 dasm_put(Dst, 950);
8011 } 8219 }
8012 dasm_put(Dst, 945); 8220 dasm_put(Dst, 952);
8013 if (LJ_DUALNUM) { 8221 if (LJ_DUALNUM) {
8014 dasm_put(Dst, 947); 8222 dasm_put(Dst, 954);
8015 } else { 8223 } else {
8016 dasm_put(Dst, 949); 8224 dasm_put(Dst, 956);
8017 } 8225 }
8018 dasm_put(Dst, 951, Dt1(->base), -(BCBIAS_J*4 >> 16), LJ_TTRUE, LJ_TTRUE, Dt1(->base)); 8226 dasm_put(Dst, 958, Dt1(->base), -(BCBIAS_J*4 >> 16), LJ_TTRUE, LJ_TTRUE, Dt1(->base));
8019#if LJ_HASFFI 8227#if LJ_HASFFI
8020 dasm_put(Dst, 1014, Dt1(->base)); 8228 dasm_put(Dst, 1021, Dt1(->base));
8021#endif 8229#endif
8022 dasm_put(Dst, 1025); 8230 dasm_put(Dst, 1032);
8023 if (LJ_DUALNUM) { 8231 if (LJ_DUALNUM) {
8024 dasm_put(Dst, 1032); 8232 dasm_put(Dst, 1039);
8025 } 8233 }
8026 dasm_put(Dst, 1037); 8234 dasm_put(Dst, 1044);
8027 if (LJ_DUALNUM) { 8235 if (LJ_DUALNUM) {
8028 dasm_put(Dst, 1051); 8236 dasm_put(Dst, 1058);
8029 } 8237 }
8030 dasm_put(Dst, 1054); 8238 dasm_put(Dst, 1061);
8031 if (LJ_DUALNUM) { 8239 if (LJ_DUALNUM) {
8032 dasm_put(Dst, 1057); 8240 dasm_put(Dst, 1064);
8033 } 8241 }
8034 dasm_put(Dst, 1060, Dt1(->base), FRAME_CONT); 8242 dasm_put(Dst, 1067, Dt1(->base), FRAME_CONT);
8035#ifdef LUAJIT_ENABLE_LUA52COMPAT 8243#ifdef LUAJIT_ENABLE_LUA52COMPAT
8036 dasm_put(Dst, 1084); 8244 dasm_put(Dst, 1091);
8037#endif 8245#endif
8038 dasm_put(Dst, 1086, Dt1(->base)); 8246 dasm_put(Dst, 1093, Dt1(->base));
8039#ifdef LUAJIT_ENABLE_LUA52COMPAT 8247#ifdef LUAJIT_ENABLE_LUA52COMPAT
8040 dasm_put(Dst, 1094);
8041#else
8042 dasm_put(Dst, 1101); 8248 dasm_put(Dst, 1101);
8249#else
8250 dasm_put(Dst, 1108);
8043#endif 8251#endif
8044 dasm_put(Dst, 1104, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base)); 8252 dasm_put(Dst, 1111, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base));
8045#if LJ_HASJIT 8253#if LJ_HASJIT
8046 dasm_put(Dst, 1152); 8254 dasm_put(Dst, 1159);
8047#endif 8255#endif
8048 dasm_put(Dst, 1154); 8256 dasm_put(Dst, 1161);
8049#if LJ_HASJIT 8257#if LJ_HASJIT
8050 dasm_put(Dst, 1156, BC_JFORI); 8258 dasm_put(Dst, 1163, BC_JFORI);
8051#endif 8259#endif
8052 dasm_put(Dst, 1159); 8260 dasm_put(Dst, 1166);
8053#if LJ_HASJIT 8261#if LJ_HASJIT
8054 dasm_put(Dst, 1161, BC_JFORI); 8262 dasm_put(Dst, 1168, BC_JFORI);
8055#endif 8263#endif
8056 dasm_put(Dst, 1164, BC_FORI, LJ_TFALSE, ~LJ_TISNUM+1, 31-3, Dt8(->upvalue), LJ_TTAB, Dt6(->metatable)); 8264 dasm_put(Dst, 1171, BC_FORI, LJ_TFALSE, ~LJ_TISNUM+1, 31-3, Dt8(->upvalue), LJ_TTAB, Dt6(->metatable));
8057 dasm_put(Dst, 1227, LJ_TNIL, DISPATCH_GL(gcroot[GCROOT_MMNAME+MM_metatable]), Dt6(->hmask), LJ_TTAB, Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), 4+offsetof(Node, key), DtB(->val), 4+offsetof(Node, val), LJ_TSTR, DtB(->next)); 8265 dasm_put(Dst, 1234, LJ_TNIL, DISPATCH_GL(gcroot[GCROOT_MMNAME+MM_metatable]), Dt6(->hmask), LJ_TTAB, Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), 4+offsetof(Node, key), DtB(->val), 4+offsetof(Node, val), LJ_TSTR, DtB(->next));
8058 dasm_put(Dst, 1275, LJ_TNIL, LJ_TUDATA, ~LJ_TISNUM+1, 31-2, DISPATCH_GL(gcroot[GCROOT_BASEMT]), LJ_TTAB, Dt6(->metatable), LJ_TTAB, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 8266 dasm_put(Dst, 1282, LJ_TNIL, LJ_TUDATA, ~LJ_TISNUM+1, 31-2, DISPATCH_GL(gcroot[GCROOT_BASEMT]), LJ_TTAB, Dt6(->metatable), LJ_TTAB, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
8059 dasm_put(Dst, 1330, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist), LJ_TTAB, LJ_TSTR, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), Dt1(->base)); 8267 dasm_put(Dst, 1337, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist), LJ_TTAB, LJ_TSTR, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), Dt1(->base));
8060 dasm_put(Dst, 1390, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 8268 dasm_put(Dst, 1397, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
8061 if (LJ_DUALNUM) { 8269 if (LJ_DUALNUM) {
8062 dasm_put(Dst, 1400); 8270 dasm_put(Dst, 1407);
8063 } else { 8271 } else {
8064 dasm_put(Dst, 1403); 8272 dasm_put(Dst, 1410);
8065 } 8273 }
8066 dasm_put(Dst, 1406, LJ_TSTR, LJ_TTAB, Dt1(->base), Dt1(->top), LJ_TNIL, (2+1)*8, LJ_TTAB); 8274 dasm_put(Dst, 1413, LJ_TSTR, LJ_TTAB, Dt1(->base), Dt1(->top), LJ_TNIL, (2+1)*8, LJ_TTAB);
8067#ifdef LUAJIT_ENABLE_LUA52COMPAT 8275#ifdef LUAJIT_ENABLE_LUA52COMPAT
8068 dasm_put(Dst, 1457, Dt6(->metatable), Dt8(->upvalue[0])); 8276 dasm_put(Dst, 1464, Dt6(->metatable), Dt8(->upvalue[0]));
8069#else 8277#else
8070 dasm_put(Dst, 1466, Dt8(->upvalue[0])); 8278 dasm_put(Dst, 1473, Dt8(->upvalue[0]));
8071#endif 8279#endif
8072 dasm_put(Dst, 1470, (3+1)*8); 8280 dasm_put(Dst, 1477, (3+1)*8);
8073 if (LJ_DUALNUM) { 8281 if (LJ_DUALNUM) {
8074 dasm_put(Dst, 1482); 8282 dasm_put(Dst, 1489);
8075 } else { 8283 } else {
8076 dasm_put(Dst, 1484); 8284 dasm_put(Dst, 1491);
8077 } 8285 }
8078 dasm_put(Dst, 1486, LJ_TTAB); 8286 dasm_put(Dst, 1493, LJ_TTAB);
8079 if (LJ_DUALNUM) { 8287 if (LJ_DUALNUM) {
8080 dasm_put(Dst, 1493); 8288 dasm_put(Dst, 1500);
8081 } else { 8289 } else {
8082 dasm_put(Dst, 1498); 8290 dasm_put(Dst, 1505);
8083 } 8291 }
8084 dasm_put(Dst, 1510, Dt6(->asize), Dt6(->array)); 8292 dasm_put(Dst, 1517, Dt6(->asize), Dt6(->array));
8085 if (!LJ_DUALNUM) { 8293 if (!LJ_DUALNUM) {
8086 dasm_put(Dst, 1515); 8294 dasm_put(Dst, 1522);
8087 } 8295 }
8088 dasm_put(Dst, 1517); 8296 dasm_put(Dst, 1524);
8089 if (LJ_DUALNUM) { 8297 if (LJ_DUALNUM) {
8090 dasm_put(Dst, 1521, 31-3); 8298 dasm_put(Dst, 1528, 31-3);
8091 } else { 8299 } else {
8092 dasm_put(Dst, 1526, 31-3); 8300 dasm_put(Dst, 1533, 31-3);
8093 } 8301 }
8094 dasm_put(Dst, 1530, LJ_TNIL, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8, LJ_TTAB); 8302 dasm_put(Dst, 1537, LJ_TNIL, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8, LJ_TTAB);
8095#ifdef LUAJIT_ENABLE_LUA52COMPAT 8303#ifdef LUAJIT_ENABLE_LUA52COMPAT
8096 dasm_put(Dst, 1578, Dt6(->metatable), Dt8(->upvalue[0])); 8304 dasm_put(Dst, 1585, Dt6(->metatable), Dt8(->upvalue[0]));
8097#else 8305#else
8098 dasm_put(Dst, 1587, Dt8(->upvalue[0])); 8306 dasm_put(Dst, 1594, Dt8(->upvalue[0]));
8099#endif 8307#endif
8100 if (LJ_DUALNUM) { 8308 if (LJ_DUALNUM) {
8101 dasm_put(Dst, 1591); 8309 dasm_put(Dst, 1598);
8102 } else { 8310 } else {
8103 dasm_put(Dst, 1593); 8311 dasm_put(Dst, 1600);
8104 } 8312 }
8105 dasm_put(Dst, 1595, (3+1)*8, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 8+FRAME_PCALL, DISPATCH_GL(hookmask), LJ_TFUNC, 32-HOOK_ACTIVE_SHIFT, 16+FRAME_PCALL, LJ_TTHREAD, Dt1(->status), Dt1(->cframe)); 8313 dasm_put(Dst, 1602, (3+1)*8, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 8+FRAME_PCALL, DISPATCH_GL(hookmask), LJ_TFUNC, 32-HOOK_ACTIVE_SHIFT, 16+FRAME_PCALL, LJ_TTHREAD, Dt1(->status), Dt1(->cframe));
8106 dasm_put(Dst, 1656, Dt1(->top), LUA_YIELD, Dt1(->base), Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->base), LUA_YIELD, Dt1(->top), ~LJ_VMST_INTERP, Dt1(->base), DISPATCH_GL(vmstate)); 8314 dasm_put(Dst, 1663, Dt1(->top), LUA_YIELD, Dt1(->base), Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->base), LUA_YIELD, Dt1(->top), ~LJ_VMST_INTERP, Dt1(->base), DISPATCH_GL(vmstate));
8107 dasm_put(Dst, 1718, Dt1(->maxstack), Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8, 32-3); 8315 dasm_put(Dst, 1725, Dt1(->maxstack), Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8, 32-3);
8108 dasm_put(Dst, 1781, Dt8(->upvalue[0].gcr), Dt1(->status), Dt1(->cframe), Dt1(->top), LUA_YIELD, Dt1(->base), Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->base), LUA_YIELD, Dt1(->top), ~LJ_VMST_INTERP); 8316 dasm_put(Dst, 1788, Dt8(->upvalue[0].gcr), Dt1(->status), Dt1(->cframe), Dt1(->top), LUA_YIELD, Dt1(->base), Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->base), LUA_YIELD, Dt1(->top), ~LJ_VMST_INTERP);
8109 dasm_put(Dst, 1840, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, 32-3, Dt1(->cframe)); 8317 dasm_put(Dst, 1847, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, 32-3, Dt1(->cframe));
8110 dasm_put(Dst, 1897, Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status)); 8318 dasm_put(Dst, 1904, Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status));
8111 if (LJ_DUALNUM) { 8319 if (LJ_DUALNUM) {
8112 dasm_put(Dst, 1922); 8320 dasm_put(Dst, 1929);
8113 } 8321 }
8114 dasm_put(Dst, 1943, (1+1)*8, FRAME_TYPE); 8322 dasm_put(Dst, 1950, (1+1)*8, FRAME_TYPE);
8115 if (LJ_DUALNUM) { 8323 if (LJ_DUALNUM) {
8116 dasm_put(Dst, 1985, 31-11, 32-21, 31-11); 8324 dasm_put(Dst, 1992, 31-11, 32-21, 31-11);
8117 dasm_put(Dst, 2067, 31-11, 32-21, 31-11); 8325 dasm_put(Dst, 2074, 31-11, 32-21, 31-11);
8118 } else { 8326 } else {
8119 dasm_put(Dst, 2121); 8327 dasm_put(Dst, 2128);
8120 } 8328 }
8121 dasm_put(Dst, 2148); 8329 dasm_put(Dst, 2155);
8122 dasm_put(Dst, 2207); 8330 dasm_put(Dst, 2214);
8123 dasm_put(Dst, 2265); 8331 dasm_put(Dst, 2272);
8124 dasm_put(Dst, 2321, Dt8(->upvalue[0])); 8332 dasm_put(Dst, 2328, Dt8(->upvalue[0]));
8125 dasm_put(Dst, 2387); 8333 dasm_put(Dst, 2394);
8126 if (LJ_DUALNUM) { 8334 if (LJ_DUALNUM) {
8127 dasm_put(Dst, 2391); 8335 dasm_put(Dst, 2398);
8128 } else { 8336 } else {
8129 dasm_put(Dst, 2406); 8337 dasm_put(Dst, 2413);
8130 } 8338 }
8131 dasm_put(Dst, 2424, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv)); 8339 dasm_put(Dst, 2431, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv));
8132 if (!LJ_DUALNUM) { 8340 if (!LJ_DUALNUM) {
8133 dasm_put(Dst, 2446); 8341 dasm_put(Dst, 2453);
8134 } 8342 }
8135 dasm_put(Dst, 2451, (2+1)*8); 8343 dasm_put(Dst, 2458, (2+1)*8);
8136 if (LJ_DUALNUM) { 8344 if (LJ_DUALNUM) {
8137 dasm_put(Dst, 2455); 8345 dasm_put(Dst, 2462);
8138 } else { 8346 } else {
8139 dasm_put(Dst, 2458); 8347 dasm_put(Dst, 2465);
8140 } 8348 }
8141 dasm_put(Dst, 2460, (2+1)*8); 8349 dasm_put(Dst, 2467, (2+1)*8);
8142 if (LJ_DUALNUM) { 8350 if (LJ_DUALNUM) {
8143 dasm_put(Dst, 2482); 8351 dasm_put(Dst, 2489);
8144 } else { 8352 } else {
8145 dasm_put(Dst, 2551); 8353 dasm_put(Dst, 2558);
8146 } 8354 }
8147 if (LJ_DUALNUM) { 8355 if (LJ_DUALNUM) {
8148 dasm_put(Dst, 2576); 8356 dasm_put(Dst, 2583);
8149 } else { 8357 } else {
8150 dasm_put(Dst, 2645); 8358 dasm_put(Dst, 2652);
8151 } 8359 }
8152 dasm_put(Dst, 2670, LJ_TSTR, Dt5(->len), LJ_TSTR, Dt5(->len)); 8360 dasm_put(Dst, 2677, LJ_TSTR, Dt5(->len), LJ_TSTR, Dt5(->len));
8153 if (LJ_DUALNUM) { 8361 if (LJ_DUALNUM) {
8154 dasm_put(Dst, 2697, Dt5([1]), (0+1)*8); 8362 dasm_put(Dst, 2704, Dt5([1]), (0+1)*8);
8155 } else { 8363 } else {
8156 dasm_put(Dst, 2709, Dt5([1]), 31-3); 8364 dasm_put(Dst, 2716, Dt5([1]), 31-3);
8157 } 8365 }
8158 dasm_put(Dst, 2725, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 8366 dasm_put(Dst, 2732, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
8159 if (LJ_DUALNUM) { 8367 if (LJ_DUALNUM) {
8160 dasm_put(Dst, 2736); 8368 dasm_put(Dst, 2743);
8161 } else { 8369 } else {
8162 dasm_put(Dst, 2744); 8370 dasm_put(Dst, 2751);
8163 } 8371 }
8164 dasm_put(Dst, 2755, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 8372 dasm_put(Dst, 2762, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
8165 if (!LJ_DUALNUM) { 8373 if (!LJ_DUALNUM) {
8166 dasm_put(Dst, 2783); 8374 dasm_put(Dst, 2790);
8167 } 8375 }
8168 dasm_put(Dst, 2785); 8376 dasm_put(Dst, 2792);
8169 if (LJ_DUALNUM) { 8377 if (LJ_DUALNUM) {
8170 dasm_put(Dst, 2791); 8378 dasm_put(Dst, 2798);
8171 } else { 8379 } else {
8172 dasm_put(Dst, 2793); 8380 dasm_put(Dst, 2800);
8173 } 8381 }
8174 dasm_put(Dst, 2795); 8382 dasm_put(Dst, 2802);
8175 if (LJ_DUALNUM) { 8383 if (LJ_DUALNUM) {
8176 dasm_put(Dst, 2799); 8384 dasm_put(Dst, 2806);
8177 } else { 8385 } else {
8178 dasm_put(Dst, 2808); 8386 dasm_put(Dst, 2815);
8179 } 8387 }
8180 dasm_put(Dst, 2819, LJ_TSTR); 8388 dasm_put(Dst, 2826, LJ_TSTR);
8181 if (!LJ_DUALNUM) { 8389 if (!LJ_DUALNUM) {
8182 dasm_put(Dst, 2824); 8390 dasm_put(Dst, 2831);
8183 } 8391 }
8184 dasm_put(Dst, 2828, Dt5(->len), sizeof(GCstr)-1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 8392 dasm_put(Dst, 2835, Dt5(->len), sizeof(GCstr)-1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
8185 if (LJ_DUALNUM) { 8393 if (LJ_DUALNUM) {
8186 dasm_put(Dst, 2878); 8394 dasm_put(Dst, 2885);
8187 } else { 8395 } else {
8188 dasm_put(Dst, 2880); 8396 dasm_put(Dst, 2887);
8189 } 8397 }
8190 dasm_put(Dst, 2882, LJ_TSTR); 8398 dasm_put(Dst, 2889, LJ_TSTR);
8191 if (LJ_DUALNUM) { 8399 if (LJ_DUALNUM) {
8192 dasm_put(Dst, 2889); 8400 dasm_put(Dst, 2896);
8193 } else { 8401 } else {
8194 dasm_put(Dst, 2893); 8402 dasm_put(Dst, 2900);
8195 } 8403 }
8196 dasm_put(Dst, 2900, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(strempty), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz)); 8404 dasm_put(Dst, 2907, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(strempty), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz));
8197 dasm_put(Dst, 2953, Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 8405 dasm_put(Dst, 2960, Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
8198 dasm_put(Dst, 3011, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), LJ_TTAB); 8406 dasm_put(Dst, 3018, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), LJ_TTAB);
8199 if (LJ_DUALNUM) { 8407 if (LJ_DUALNUM) {
8200 dasm_put(Dst, 3080); 8408 dasm_put(Dst, 3087);
8201 } else { 8409 } else {
8202 dasm_put(Dst, 3090); 8410 dasm_put(Dst, 3097);
8203 } 8411 }
8204 dasm_put(Dst, 3103); 8412 dasm_put(Dst, 3110);
8205 if (LJ_DUALNUM) { 8413 if (LJ_DUALNUM) {
8206 dasm_put(Dst, 3109); 8414 dasm_put(Dst, 3116);
8207 } else { 8415 } else {
8208 dasm_put(Dst, 3111); 8416 dasm_put(Dst, 3118);
8209 } 8417 }
8210 dasm_put(Dst, 3113); 8418 dasm_put(Dst, 3120);
8211 if (LJ_DUALNUM) { 8419 if (LJ_DUALNUM) {
8212 dasm_put(Dst, 3117); 8420 dasm_put(Dst, 3124);
8213 } else { 8421 } else {
8214 dasm_put(Dst, 3120); 8422 dasm_put(Dst, 3127);
8215 } 8423 }
8216 dasm_put(Dst, 3126); 8424 dasm_put(Dst, 3133);
8217 if (LJ_DUALNUM) { 8425 if (LJ_DUALNUM) {
8218 dasm_put(Dst, 3131); 8426 dasm_put(Dst, 3138);
8219 } else { 8427 } else {
8220 dasm_put(Dst, 3141); 8428 dasm_put(Dst, 3148);
8221 } 8429 }
8222 dasm_put(Dst, 3154); 8430 dasm_put(Dst, 3161);
8223 if (LJ_DUALNUM) { 8431 if (LJ_DUALNUM) {
8224 dasm_put(Dst, 3160); 8432 dasm_put(Dst, 3167);
8225 } else { 8433 } else {
8226 dasm_put(Dst, 3162); 8434 dasm_put(Dst, 3169);
8227 } 8435 }
8228 dasm_put(Dst, 3164); 8436 dasm_put(Dst, 3171);
8229 if (LJ_DUALNUM) { 8437 if (LJ_DUALNUM) {
8230 dasm_put(Dst, 3168); 8438 dasm_put(Dst, 3175);
8231 } else { 8439 } else {
8232 dasm_put(Dst, 3171); 8440 dasm_put(Dst, 3178);
8233 } 8441 }
8234 dasm_put(Dst, 3177); 8442 dasm_put(Dst, 3184);
8235 if (LJ_DUALNUM) { 8443 if (LJ_DUALNUM) {
8236 dasm_put(Dst, 3182); 8444 dasm_put(Dst, 3189);
8237 } else { 8445 } else {
8238 dasm_put(Dst, 3192); 8446 dasm_put(Dst, 3199);
8239 } 8447 }
8240 dasm_put(Dst, 3205); 8448 dasm_put(Dst, 3212);
8241 if (LJ_DUALNUM) { 8449 if (LJ_DUALNUM) {
8242 dasm_put(Dst, 3211); 8450 dasm_put(Dst, 3218);
8243 } else { 8451 } else {
8244 dasm_put(Dst, 3213); 8452 dasm_put(Dst, 3220);
8245 } 8453 }
8246 dasm_put(Dst, 3215); 8454 dasm_put(Dst, 3222);
8247 if (LJ_DUALNUM) { 8455 if (LJ_DUALNUM) {
8248 dasm_put(Dst, 3219); 8456 dasm_put(Dst, 3226);
8249 } else { 8457 } else {
8250 dasm_put(Dst, 3222); 8458 dasm_put(Dst, 3229);
8251 } 8459 }
8252 dasm_put(Dst, 3228); 8460 dasm_put(Dst, 3235);
8253 if (LJ_DUALNUM) { 8461 if (LJ_DUALNUM) {
8254 dasm_put(Dst, 3233); 8462 dasm_put(Dst, 3240);
8255 } else { 8463 } else {
8256 dasm_put(Dst, 3243); 8464 dasm_put(Dst, 3250);
8257 } 8465 }
8258 dasm_put(Dst, 3256);
8259 if (LJ_DUALNUM) {
8260 dasm_put(Dst, 3263); 8466 dasm_put(Dst, 3263);
8467 if (LJ_DUALNUM) {
8468 dasm_put(Dst, 3270);
8261 } else { 8469 } else {
8262 dasm_put(Dst, 3273); 8470 dasm_put(Dst, 3280);
8263 } 8471 }
8264 dasm_put(Dst, 3286); 8472 dasm_put(Dst, 3293);
8265 if (LJ_DUALNUM) { 8473 if (LJ_DUALNUM) {
8266 dasm_put(Dst, 3290); 8474 dasm_put(Dst, 3297);
8267 } else { 8475 } else {
8268 dasm_put(Dst, 3305); 8476 dasm_put(Dst, 3312);
8269 } 8477 }
8270 dasm_put(Dst, 3326); 8478 dasm_put(Dst, 3333);
8271 if (LJ_DUALNUM) { 8479 if (LJ_DUALNUM) {
8272 dasm_put(Dst, 3331); 8480 dasm_put(Dst, 3338);
8273 } else { 8481 } else {
8274 dasm_put(Dst, 3346); 8482 dasm_put(Dst, 3353);
8275 } 8483 }
8276 dasm_put(Dst, 3367); 8484 dasm_put(Dst, 3374);
8277 if (LJ_DUALNUM) { 8485 if (LJ_DUALNUM) {
8278 dasm_put(Dst, 3372); 8486 dasm_put(Dst, 3379);
8279 } else { 8487 } else {
8280 dasm_put(Dst, 3387); 8488 dasm_put(Dst, 3394);
8281 } 8489 }
8282 dasm_put(Dst, 3408); 8490 dasm_put(Dst, 3415);
8283 if (LJ_DUALNUM) { 8491 if (LJ_DUALNUM) {
8284 dasm_put(Dst, 3413); 8492 dasm_put(Dst, 3420);
8285 } else { 8493 } else {
8286 dasm_put(Dst, 3428); 8494 dasm_put(Dst, 3435);
8287 } 8495 }
8288 dasm_put(Dst, 3449); 8496 dasm_put(Dst, 3456);
8289 if (LJ_DUALNUM) { 8497 if (LJ_DUALNUM) {
8290 dasm_put(Dst, 3453); 8498 dasm_put(Dst, 3460);
8291 } else { 8499 } else {
8292 dasm_put(Dst, 3468); 8500 dasm_put(Dst, 3475);
8293 } 8501 }
8294 dasm_put(Dst, 3489); 8502 dasm_put(Dst, 3496);
8295 if (LJ_DUALNUM) { 8503 if (LJ_DUALNUM) {
8296 dasm_put(Dst, 3494); 8504 dasm_put(Dst, 3501);
8297 } else { 8505 } else {
8298 dasm_put(Dst, 3504); 8506 dasm_put(Dst, 3511);
8299 } 8507 }
8300 if (LJ_DUALNUM) { 8508 if (LJ_DUALNUM) {
8301 dasm_put(Dst, 3517); 8509 dasm_put(Dst, 3524);
8302 } else { 8510 } else {
8303 dasm_put(Dst, 3520); 8511 dasm_put(Dst, 3527);
8304 } 8512 }
8305 dasm_put(Dst, 3526); 8513 dasm_put(Dst, 3533);
8306 if (LJ_DUALNUM) { 8514 if (LJ_DUALNUM) {
8307 dasm_put(Dst, 3534); 8515 dasm_put(Dst, 3541);
8308 } 8516 }
8309 dasm_put(Dst, 3542); 8517 dasm_put(Dst, 3549);
8310 if (LJ_DUALNUM) { 8518 if (LJ_DUALNUM) {
8311 dasm_put(Dst, 3544); 8519 dasm_put(Dst, 3551);
8312 } 8520 }
8313 dasm_put(Dst, 3552, Dt8(->f), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), 31-3, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK); 8521 dasm_put(Dst, 3559, Dt8(->f), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), 31-3, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK);
8314 dasm_put(Dst, 3615, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 8522 dasm_put(Dst, 3622, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
8315#if LJ_HASJIT 8523#if LJ_HASJIT
8316 dasm_put(Dst, 3641, DISPATCH_GL(hookmask), HOOK_VMEVENT, DISPATCH_GL(hookcount), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount)); 8524 dasm_put(Dst, 3648, DISPATCH_GL(hookmask), HOOK_VMEVENT, DISPATCH_GL(hookcount), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount));
8317#endif 8525#endif
8318 dasm_put(Dst, 3663, DISPATCH_GL(hookmask), HOOK_ACTIVE, GG_DISP2STATIC, DISPATCH_GL(hookmask), DISPATCH_GL(hookcount), HOOK_ACTIVE, 31-LUA_HOOKLINE, DISPATCH_GL(hookcount), Dt1(->base), Dt1(->base)); 8526 dasm_put(Dst, 3670, DISPATCH_GL(hookmask), HOOK_ACTIVE, GG_DISP2STATIC, DISPATCH_GL(hookmask), DISPATCH_GL(hookcount), HOOK_ACTIVE, 31-LUA_HOOKLINE, DISPATCH_GL(hookcount), Dt1(->base), Dt1(->base));
8319 dasm_put(Dst, 3710, GG_DISP2STATIC); 8527 dasm_put(Dst, 3717, GG_DISP2STATIC);
8320#if LJ_HASJIT 8528#if LJ_HASJIT
8321 dasm_put(Dst, 3728, GG_DISP2J, Dt7(->pc), DISPATCH_J(L), PC2PROTO(framesize), Dt1(->base), 31-3, Dt1(->top)); 8529 dasm_put(Dst, 3735, GG_DISP2J, Dt7(->pc), DISPATCH_J(L), PC2PROTO(framesize), Dt1(->base), 31-3, Dt1(->top));
8322#endif 8530#endif
8323 dasm_put(Dst, 3751); 8531 dasm_put(Dst, 3758);
8324#if LJ_HASJIT 8532#if LJ_HASJIT
8325 dasm_put(Dst, 3754); 8533 dasm_put(Dst, 3761);
8326#endif 8534#endif
8327 dasm_put(Dst, 3757); 8535 dasm_put(Dst, 3764);
8328#if LJ_HASJIT 8536#if LJ_HASJIT
8329 dasm_put(Dst, 3759); 8537 dasm_put(Dst, 3766);
8330#endif 8538#endif
8331 dasm_put(Dst, 3762, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 8539 dasm_put(Dst, 3769, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
8332#if LJ_HASJIT 8540#if LJ_HASJIT
8333 dasm_put(Dst, 3785, -(16+32*8+32*4), 16+32*8+2*4, -GG_DISP2G-32768, ~LJ_VMST_EXIT, 16+32*8+32*4, DISPATCH_GL(vmstate), 16+0*8, 16+1*8, 16+2*8, 16+3*8, 16+4*8, 16+5*8, 16+6*8, 16+7*8, 16+32*8+32*4, 16+8*8, 16+9*8, 16+10*8, 16+11*8, 16+32*8+1*4, 16+12*8, 16+13*8); 8541 dasm_put(Dst, 3792, -(16+32*8+32*4), 16+32*8+2*4, -GG_DISP2G-32768, ~LJ_VMST_EXIT, 16+32*8+32*4, DISPATCH_GL(vmstate), 16+0*8, 16+1*8, 16+2*8, 16+3*8, 16+4*8, 16+5*8, 16+6*8, 16+7*8, 16+32*8+32*4, 16+8*8, 16+9*8, 16+10*8, 16+11*8, 16+32*8+1*4, 16+12*8, 16+13*8);
8334 dasm_put(Dst, 3832, 16+14*8, 16+15*8, 16+16*8, 16+17*8, 16+18*8, 16+19*8, 16+32*8+0*4, 16+20*8, 16+21*8, 16+22*8, 16+23*8, 16+24*8, 16+25*8, 16+26*8, 16+27*8, DISPATCH_GL(jit_L), 16+28*8, 16+29*8, 16+30*8, 16+31*8, DISPATCH_GL(jit_base), 32-2); 8542 dasm_put(Dst, 3839, 16+14*8, 16+15*8, 16+16*8, 16+17*8, 16+18*8, 16+19*8, 16+32*8+0*4, 16+20*8, 16+21*8, 16+22*8, 16+23*8, 16+24*8, 16+25*8, 16+26*8, 16+27*8, DISPATCH_GL(jit_L), 16+28*8, 16+29*8, 16+30*8, 16+31*8, DISPATCH_GL(jit_base), 32-2);
8335 dasm_put(Dst, 3881, DISPATCH_J(L), DISPATCH_GL(jit_L), DISPATCH_J(parent), Dt1(->base), GG_DISP2J, DISPATCH_J(exitno), Dt1(->cframe), Dt1(->base)); 8543 dasm_put(Dst, 3888, DISPATCH_J(L), DISPATCH_GL(jit_L), DISPATCH_J(parent), Dt1(->base), GG_DISP2J, DISPATCH_J(exitno), Dt1(->cframe), Dt1(->base));
8336#endif 8544#endif
8337 dasm_put(Dst, 3909); 8545 dasm_put(Dst, 3916);
8338#if LJ_HASJIT 8546#if LJ_HASJIT
8339 dasm_put(Dst, 3911, -GG_DISP2G-32768, 31-3, Dt7(->pc), DISPATCH_GL(jit_L), PC2PROTO(k), LJ_TISNUM, LJ_TNIL, DISPATCH_GL(vmstate), BC_FUNCF*4); 8547 dasm_put(Dst, 3918, -GG_DISP2G-32768, 31-3, Dt7(->pc), DISPATCH_GL(jit_L), PC2PROTO(k), LJ_TISNUM, LJ_TNIL, DISPATCH_GL(vmstate), BC_FUNCF*4);
8340#endif 8548#endif
8341 dasm_put(Dst, 3968); 8549 dasm_put(Dst, 3975);
8342#if LJ_HASJIT 8550#if LJ_HASJIT
8343 dasm_put(Dst, 3976); 8551 dasm_put(Dst, 3983);
8344#endif 8552#endif
8345 dasm_put(Dst, 3979); 8553 dasm_put(Dst, 3986);
8346#if LJ_HASJIT 8554#if LJ_HASJIT
8347 dasm_put(Dst, 4059); 8555 dasm_put(Dst, 4066);
8348#else 8556#else
8349 dasm_put(Dst, 4081); 8557 dasm_put(Dst, 4088);
8350#endif 8558#endif
8351 dasm_put(Dst, 4083); 8559 dasm_put(Dst, 4090);
8352#if LJ_HASFFI 8560#if LJ_HASFFI
8353#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V) 8561#define DtE(_V) (int)(ptrdiff_t)&(((CTState *)0)_V)
8354 dasm_put(Dst, 4085, DtE(->spadj), DtE(->nsp), DtE(->nfpr), DtE(->stack), 31-2, DtE(->fpr[0]), DtE(->fpr[1]), DtE(->fpr[2]), DtE(->fpr[3]), DtE(->fpr[4]), DtE(->fpr[5]), DtE(->fpr[6]), DtE(->fpr[7]), DtE(->func), DtE(->gpr[1]), DtE(->gpr[2])); 8562 dasm_put(Dst, 4092, 56+(14-14)*4, 128+(14-14)*8, 56+(15-14)*4, 128+(15-14)*8, 56+(16-14)*4, 128+(16-14)*8, 56+(17-14)*4, 128+(17-14)*8, 56+(18-14)*4, 128+(18-14)*8, 56+(19-14)*4, 128+(19-14)*8, 56+(20-14)*4, 128+(20-14)*8, 56+(21-14)*4, 128+(21-14)*8, 56+(22-14)*4, 128+(22-14)*8, 56+(23-14)*4, 128+(23-14)*8, 56+(24-14)*4, 128+(24-14)*8);
8355 dasm_put(Dst, 4143, DtE(->gpr[3]), DtE(->gpr[4]), DtE(->gpr[5]), DtE(->gpr[6]), DtE(->gpr[7]), DtE(->gpr[0]), DtE(->gpr[0]), DtE(->fpr[0]), DtE(->gpr[1]), DtE(->gpr[2]), DtE(->gpr[3])); 8563 dasm_put(Dst, 4140, 56+(25-14)*4, 128+(25-14)*8, 56+(26-14)*4, 128+(26-14)*8, 56+(27-14)*4, 128+(27-14)*8, 56+(28-14)*4, 128+(28-14)*8, 56+(29-14)*4, 128+(29-14)*8, 56+(30-14)*4, 128+(30-14)*8, 56+(31-14)*4, 128+(31-14)*8, Dt2(->ctype_state), GG_G2DISP, DtE(->cb.slot), DtE(->cb.gpr[0]), DtE(->cb.fpr[0]), DtE(->cb.gpr[1]), DtE(->cb.fpr[1]), DtE(->cb.gpr[2]));
8564 dasm_put(Dst, 4187, DtE(->cb.fpr[2]), DtE(->cb.gpr[3]), DtE(->cb.fpr[3]), DtE(->cb.gpr[4]), DtE(->cb.fpr[4]), DtE(->cb.gpr[5]), DtE(->cb.fpr[5]), DtE(->cb.gpr[6]), DtE(->cb.fpr[6]), DtE(->cb.gpr[7]), DtE(->cb.fpr[7]), 272+8, DtE(->cb.stack), Dt1(->base), LJ_TISNUM, Dt1(->top), LJ_TNIL, ~LJ_VMST_INTERP, DISPATCH_GL(vmstate), Dt7(->pc));
8565#endif
8566 dasm_put(Dst, 4251);
8567#if LJ_HASFFI
8568 dasm_put(Dst, 4253, DISPATCH_GL(ctype_state), Dt1(->base), Dt1(->top), DtE(->L), DtE(->cb.gpr[0]), DtE(->cb.fpr[0]), DtE(->cb.gpr[1]));
8569#endif
8570 dasm_put(Dst, 4274);
8571#if LJ_HASFFI
8572#define DtF(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V)
8573 dasm_put(Dst, 4276, DtF(->spadj), DtF(->nsp), DtF(->nfpr), DtF(->stack), 31-2, DtF(->fpr[0]), DtF(->fpr[1]), DtF(->fpr[2]), DtF(->fpr[3]), DtF(->fpr[4]), DtF(->fpr[5]), DtF(->fpr[6]), DtF(->fpr[7]), DtF(->func), DtF(->gpr[1]), DtF(->gpr[2]));
8574 dasm_put(Dst, 4334, DtF(->gpr[3]), DtF(->gpr[4]), DtF(->gpr[5]), DtF(->gpr[6]), DtF(->gpr[7]), DtF(->gpr[0]), DtF(->gpr[0]), DtF(->fpr[0]), DtF(->gpr[1]), DtF(->gpr[2]), DtF(->gpr[3]));
8356#endif 8575#endif
8357} 8576}
8358 8577
@@ -8360,7 +8579,7 @@ static void build_subroutines(BuildCtx *ctx)
8360static void build_ins(BuildCtx *ctx, BCOp op, int defop) 8579static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8361{ 8580{
8362 int vk = 0; 8581 int vk = 0;
8363 dasm_put(Dst, 4175, defop); 8582 dasm_put(Dst, 4366, defop);
8364 8583
8365 switch (op) { 8584 switch (op) {
8366 8585
@@ -8370,224 +8589,224 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8370 8589
8371 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 8590 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
8372 if (LJ_DUALNUM) { 8591 if (LJ_DUALNUM) {
8373 dasm_put(Dst, 4177, -(BCBIAS_J*4 >> 16)); 8592 dasm_put(Dst, 4368, -(BCBIAS_J*4 >> 16));
8374 if (op == BC_ISLT) { 8593 if (op == BC_ISLT) {
8375 dasm_put(Dst, 4194); 8594 dasm_put(Dst, 4385);
8376 } else if (op == BC_ISGE) { 8595 } else if (op == BC_ISGE) {
8377 dasm_put(Dst, 4197); 8596 dasm_put(Dst, 4388);
8378 } else if (op == BC_ISLE) { 8597 } else if (op == BC_ISLE) {
8379 dasm_put(Dst, 4200); 8598 dasm_put(Dst, 4391);
8380 } else { 8599 } else {
8381 dasm_put(Dst, 4203); 8600 dasm_put(Dst, 4394);
8382 } 8601 }
8383 dasm_put(Dst, 4206); 8602 dasm_put(Dst, 4397);
8384 if (op == BC_ISLT) { 8603 if (op == BC_ISLT) {
8385 dasm_put(Dst, 4245); 8604 dasm_put(Dst, 4436);
8386 } else if (op == BC_ISGE) { 8605 } else if (op == BC_ISGE) {
8387 dasm_put(Dst, 4248); 8606 dasm_put(Dst, 4439);
8388 } else if (op == BC_ISLE) { 8607 } else if (op == BC_ISLE) {
8389 dasm_put(Dst, 4251); 8608 dasm_put(Dst, 4442);
8390 } else { 8609 } else {
8391 dasm_put(Dst, 4255); 8610 dasm_put(Dst, 4446);
8392 } 8611 }
8393 dasm_put(Dst, 4259); 8612 dasm_put(Dst, 4450);
8394 } else { 8613 } else {
8395 dasm_put(Dst, 4262, -(BCBIAS_J*4 >> 16)); 8614 dasm_put(Dst, 4453, -(BCBIAS_J*4 >> 16));
8396 if (op == BC_ISLT) { 8615 if (op == BC_ISLT) {
8397 dasm_put(Dst, 4279); 8616 dasm_put(Dst, 4470);
8398 } else if (op == BC_ISGE) { 8617 } else if (op == BC_ISGE) {
8399 dasm_put(Dst, 4282); 8618 dasm_put(Dst, 4473);
8400 } else if (op == BC_ISLE) { 8619 } else if (op == BC_ISLE) {
8401 dasm_put(Dst, 4285); 8620 dasm_put(Dst, 4476);
8402 } else { 8621 } else {
8403 dasm_put(Dst, 4289); 8622 dasm_put(Dst, 4480);
8404 } 8623 }
8405 dasm_put(Dst, 4293); 8624 dasm_put(Dst, 4484);
8406 } 8625 }
8407 break; 8626 break;
8408 8627
8409 case BC_ISEQV: case BC_ISNEV: 8628 case BC_ISEQV: case BC_ISNEV:
8410 vk = op == BC_ISEQV; 8629 vk = op == BC_ISEQV;
8411 if (LJ_DUALNUM) { 8630 if (LJ_DUALNUM) {
8412 dasm_put(Dst, 4306, -(BCBIAS_J*4 >> 16)); 8631 dasm_put(Dst, 4497, -(BCBIAS_J*4 >> 16));
8413 if (vk) { 8632 if (vk) {
8414 dasm_put(Dst, 4319); 8633 dasm_put(Dst, 4510);
8415 } else { 8634 } else {
8416 dasm_put(Dst, 4322); 8635 dasm_put(Dst, 4513);
8417 } 8636 }
8418 } else { 8637 } else {
8419 dasm_put(Dst, 4325, -(BCBIAS_J*4 >> 16)); 8638 dasm_put(Dst, 4516, -(BCBIAS_J*4 >> 16));
8420 if (vk) { 8639 if (vk) {
8421 dasm_put(Dst, 4342); 8640 dasm_put(Dst, 4533);
8422 } else { 8641 } else {
8423 dasm_put(Dst, 4346); 8642 dasm_put(Dst, 4537);
8424 } 8643 }
8425 dasm_put(Dst, 4350); 8644 dasm_put(Dst, 4541);
8426 } 8645 }
8427 dasm_put(Dst, 4362); 8646 dasm_put(Dst, 4553);
8428 if (!LJ_DUALNUM) { 8647 if (!LJ_DUALNUM) {
8429 dasm_put(Dst, 4364); 8648 dasm_put(Dst, 4555);
8430 } 8649 }
8431 if (LJ_HASFFI) { 8650 if (LJ_HASFFI) {
8432 dasm_put(Dst, 4367, LJ_TCDATA, LJ_TCDATA); 8651 dasm_put(Dst, 4558, LJ_TCDATA, LJ_TCDATA);
8433 } 8652 }
8434 dasm_put(Dst, 4372, ~LJ_TISPRI); 8653 dasm_put(Dst, 4563, ~LJ_TISPRI);
8435 if (LJ_HASFFI) { 8654 if (LJ_HASFFI) {
8436 dasm_put(Dst, 4377); 8655 dasm_put(Dst, 4568);
8437 } 8656 }
8438 dasm_put(Dst, 4379, ~LJ_TISTABUD); 8657 dasm_put(Dst, 4570, ~LJ_TISTABUD);
8439 if (LJ_HASFFI) { 8658 if (LJ_HASFFI) {
8440 dasm_put(Dst, 4382); 8659 dasm_put(Dst, 4573);
8441 } 8660 }
8442 dasm_put(Dst, 4385); 8661 dasm_put(Dst, 4576);
8443 if (vk) { 8662 if (vk) {
8444 dasm_put(Dst, 4393); 8663 dasm_put(Dst, 4584);
8445 } else { 8664 } else {
8446 dasm_put(Dst, 4398); 8665 dasm_put(Dst, 4589);
8447 } 8666 }
8448 if (LJ_DUALNUM) { 8667 if (LJ_DUALNUM) {
8449 dasm_put(Dst, 4403); 8668 dasm_put(Dst, 4594);
8450 } else { 8669 } else {
8451 dasm_put(Dst, 4418); 8670 dasm_put(Dst, 4609);
8452 } 8671 }
8453 dasm_put(Dst, 4421, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<<MM_eq); 8672 dasm_put(Dst, 4612, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<<MM_eq);
8454 break; 8673 break;
8455 8674
8456 case BC_ISEQS: case BC_ISNES: 8675 case BC_ISEQS: case BC_ISNES:
8457 vk = op == BC_ISEQS; 8676 vk = op == BC_ISEQS;
8458 dasm_put(Dst, 4440, 32-1); 8677 dasm_put(Dst, 4631, 32-1);
8459 if (LJ_HASFFI) { 8678 if (LJ_HASFFI) {
8460 dasm_put(Dst, 4448, LJ_TCDATA); 8679 dasm_put(Dst, 4639, LJ_TCDATA);
8461 } 8680 }
8462 dasm_put(Dst, 4451, LJ_TSTR); 8681 dasm_put(Dst, 4642, LJ_TSTR);
8463 if (LJ_HASFFI) { 8682 if (LJ_HASFFI) {
8464 dasm_put(Dst, 4455); 8683 dasm_put(Dst, 4646);
8465 } 8684 }
8466 dasm_put(Dst, 4458, -(BCBIAS_J*4 >> 16)); 8685 dasm_put(Dst, 4649, -(BCBIAS_J*4 >> 16));
8467 if (vk) { 8686 if (vk) {
8468 dasm_put(Dst, 4466); 8687 dasm_put(Dst, 4657);
8469 } else { 8688 } else {
8470 dasm_put(Dst, 4468); 8689 dasm_put(Dst, 4659);
8471 } 8690 }
8472 dasm_put(Dst, 4470); 8691 dasm_put(Dst, 4661);
8473 break; 8692 break;
8474 8693
8475 case BC_ISEQN: case BC_ISNEN: 8694 case BC_ISEQN: case BC_ISNEN:
8476 vk = op == BC_ISEQN; 8695 vk = op == BC_ISEQN;
8477 if (LJ_DUALNUM) { 8696 if (LJ_DUALNUM) {
8478 dasm_put(Dst, 4482, -(BCBIAS_J*4 >> 16)); 8697 dasm_put(Dst, 4673, -(BCBIAS_J*4 >> 16));
8479 if (vk) { 8698 if (vk) {
8480 dasm_put(Dst, 4494); 8699 dasm_put(Dst, 4685);
8481 } else { 8700 } else {
8482 dasm_put(Dst, 4496); 8701 dasm_put(Dst, 4687);
8483 } 8702 }
8484 dasm_put(Dst, 4498); 8703 dasm_put(Dst, 4689);
8485 } else { 8704 } else {
8486 if (vk) { 8705 if (vk) {
8487 dasm_put(Dst, 4505); 8706 dasm_put(Dst, 4696);
8488 } else { 8707 } else {
8489 dasm_put(Dst, 4507); 8708 dasm_put(Dst, 4698);
8490 } 8709 }
8491 dasm_put(Dst, 4509, -(BCBIAS_J*4 >> 16)); 8710 dasm_put(Dst, 4700, -(BCBIAS_J*4 >> 16));
8492 } 8711 }
8493 if (vk) { 8712 if (vk) {
8494 dasm_put(Dst, 4522); 8713 dasm_put(Dst, 4713);
8495 if (!LJ_HASFFI) { 8714 if (!LJ_HASFFI) {
8496 dasm_put(Dst, 4527); 8715 dasm_put(Dst, 4718);
8497 } 8716 }
8498 } else { 8717 } else {
8499 dasm_put(Dst, 4529); 8718 dasm_put(Dst, 4720);
8500 if (!LJ_HASFFI) { 8719 if (!LJ_HASFFI) {
8501 dasm_put(Dst, 4533); 8720 dasm_put(Dst, 4724);
8502 } 8721 }
8503 dasm_put(Dst, 4535); 8722 dasm_put(Dst, 4726);
8504 } 8723 }
8505 dasm_put(Dst, 4538); 8724 dasm_put(Dst, 4729);
8506 if (LJ_HASFFI) { 8725 if (LJ_HASFFI) {
8507 dasm_put(Dst, 4549, LJ_TCDATA); 8726 dasm_put(Dst, 4740, LJ_TCDATA);
8508 } 8727 }
8509 if (LJ_DUALNUM) { 8728 if (LJ_DUALNUM) {
8510 dasm_put(Dst, 4557); 8729 dasm_put(Dst, 4748);
8511 } 8730 }
8512 break; 8731 break;
8513 8732
8514 case BC_ISEQP: case BC_ISNEP: 8733 case BC_ISEQP: case BC_ISNEP:
8515 vk = op == BC_ISEQP; 8734 vk = op == BC_ISEQP;
8516 dasm_put(Dst, 4581, 32-3); 8735 dasm_put(Dst, 4772, 32-3);
8517 if (LJ_HASFFI) { 8736 if (LJ_HASFFI) {
8518 dasm_put(Dst, 4588, LJ_TCDATA); 8737 dasm_put(Dst, 4779, LJ_TCDATA);
8519 } 8738 }
8520 dasm_put(Dst, 4591); 8739 dasm_put(Dst, 4782);
8521 if (LJ_HASFFI) { 8740 if (LJ_HASFFI) {
8522 dasm_put(Dst, 4593); 8741 dasm_put(Dst, 4784);
8523 } 8742 }
8524 dasm_put(Dst, 4596, -(BCBIAS_J*4 >> 16)); 8743 dasm_put(Dst, 4787, -(BCBIAS_J*4 >> 16));
8525 if (vk) { 8744 if (vk) {
8526 dasm_put(Dst, 4602); 8745 dasm_put(Dst, 4793);
8527 } else { 8746 } else {
8528 dasm_put(Dst, 4604); 8747 dasm_put(Dst, 4795);
8529 } 8748 }
8530 dasm_put(Dst, 4606); 8749 dasm_put(Dst, 4797);
8531 break; 8750 break;
8532 8751
8533 /* -- Unary test and copy ops ------------------------------------------- */ 8752 /* -- Unary test and copy ops ------------------------------------------- */
8534 8753
8535 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 8754 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
8536 dasm_put(Dst, 4618); 8755 dasm_put(Dst, 4809);
8537 if (op == BC_IST || op == BC_ISF) { 8756 if (op == BC_IST || op == BC_ISF) {
8538 dasm_put(Dst, 4622, LJ_TTRUE, -(BCBIAS_J*4 >> 16)); 8757 dasm_put(Dst, 4813, LJ_TTRUE, -(BCBIAS_J*4 >> 16));
8539 if (op == BC_IST) { 8758 if (op == BC_IST) {
8540 dasm_put(Dst, 4629); 8759 dasm_put(Dst, 4820);
8541 } else { 8760 } else {
8542 dasm_put(Dst, 4631); 8761 dasm_put(Dst, 4822);
8543 } 8762 }
8544 dasm_put(Dst, 4633); 8763 dasm_put(Dst, 4824);
8545 } else { 8764 } else {
8546 dasm_put(Dst, 4635, LJ_TFALSE); 8765 dasm_put(Dst, 4826, LJ_TFALSE);
8547 if (op == BC_ISTC) { 8766 if (op == BC_ISTC) {
8548 dasm_put(Dst, 4640); 8767 dasm_put(Dst, 4831);
8549 } else { 8768 } else {
8550 dasm_put(Dst, 4643); 8769 dasm_put(Dst, 4834);
8551 } 8770 }
8552 dasm_put(Dst, 4646, -(BCBIAS_J*4 >> 16)); 8771 dasm_put(Dst, 4837, -(BCBIAS_J*4 >> 16));
8553 } 8772 }
8554 dasm_put(Dst, 4653); 8773 dasm_put(Dst, 4844);
8555 break; 8774 break;
8556 8775
8557 /* -- Unary ops --------------------------------------------------------- */ 8776 /* -- Unary ops --------------------------------------------------------- */
8558 8777
8559 case BC_MOV: 8778 case BC_MOV:
8560 dasm_put(Dst, 4664); 8779 dasm_put(Dst, 4855);
8561 break; 8780 break;
8562 case BC_NOT: 8781 case BC_NOT:
8563 dasm_put(Dst, 4677, LJ_TTRUE); 8782 dasm_put(Dst, 4868, LJ_TTRUE);
8564 break; 8783 break;
8565 case BC_UNM: 8784 case BC_UNM:
8566 dasm_put(Dst, 4693); 8785 dasm_put(Dst, 4884);
8567 if (LJ_DUALNUM) { 8786 if (LJ_DUALNUM) {
8568 dasm_put(Dst, 4697); 8787 dasm_put(Dst, 4888);
8569 } 8788 }
8570 dasm_put(Dst, 4725); 8789 dasm_put(Dst, 4916);
8571 if (LJ_DUALNUM) { 8790 if (LJ_DUALNUM) {
8572 dasm_put(Dst, 4735); 8791 dasm_put(Dst, 4926);
8573 } else { 8792 } else {
8574 dasm_put(Dst, 4738); 8793 dasm_put(Dst, 4929);
8575 } 8794 }
8576 break; 8795 break;
8577 case BC_LEN: 8796 case BC_LEN:
8578 dasm_put(Dst, 4747, LJ_TSTR, Dt5(->len)); 8797 dasm_put(Dst, 4938, LJ_TSTR, Dt5(->len));
8579 if (LJ_DUALNUM) { 8798 if (LJ_DUALNUM) {
8580 dasm_put(Dst, 4757); 8799 dasm_put(Dst, 4948);
8581 } else { 8800 } else {
8582 dasm_put(Dst, 4762); 8801 dasm_put(Dst, 4953);
8583 } 8802 }
8584 dasm_put(Dst, 4769, LJ_TTAB); 8803 dasm_put(Dst, 4960, LJ_TTAB);
8585#ifdef LUAJIT_ENABLE_LUA52COMPAT 8804#ifdef LUAJIT_ENABLE_LUA52COMPAT
8586 dasm_put(Dst, 4783, Dt6(->metatable)); 8805 dasm_put(Dst, 4974, Dt6(->metatable));
8587#endif 8806#endif
8588 dasm_put(Dst, 4790); 8807 dasm_put(Dst, 4981);
8589#ifdef LUAJIT_ENABLE_LUA52COMPAT 8808#ifdef LUAJIT_ENABLE_LUA52COMPAT
8590 dasm_put(Dst, 4796, Dt6(->nomm), 1<<MM_len); 8809 dasm_put(Dst, 4987, Dt6(->nomm), 1<<MM_len);
8591#endif 8810#endif
8592 break; 8811 break;
8593 8812
@@ -8599,77 +8818,77 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8599 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8818 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8600 switch (vk) { 8819 switch (vk) {
8601 case 0: 8820 case 0:
8602 dasm_put(Dst, 4806); 8821 dasm_put(Dst, 4997);
8603 break; 8822 break;
8604 case 1: 8823 case 1:
8605 dasm_put(Dst, 4812); 8824 dasm_put(Dst, 5003);
8606 break; 8825 break;
8607 default: 8826 default:
8608 dasm_put(Dst, 4818); 8827 dasm_put(Dst, 5009);
8609 break; 8828 break;
8610 } 8829 }
8611 dasm_put(Dst, 4824); 8830 dasm_put(Dst, 5015);
8612 switch (vk) { 8831 switch (vk) {
8613 case 0: 8832 case 0:
8614 dasm_put(Dst, 4851); 8833 dasm_put(Dst, 5042);
8615 break; 8834 break;
8616 case 1: 8835 case 1:
8617 dasm_put(Dst, 4854); 8836 dasm_put(Dst, 5045);
8618 break; 8837 break;
8619 default: 8838 default:
8620 dasm_put(Dst, 4857); 8839 dasm_put(Dst, 5048);
8621 break; 8840 break;
8622 } 8841 }
8623 dasm_put(Dst, 4860); 8842 dasm_put(Dst, 5051);
8624 if (vk == 1) { 8843 if (vk == 1) {
8625 dasm_put(Dst, 4862); 8844 dasm_put(Dst, 5053);
8626 } else { 8845 } else {
8627 dasm_put(Dst, 4866); 8846 dasm_put(Dst, 5057);
8628 } 8847 }
8629 switch (vk) { 8848 switch (vk) {
8630 case 0: 8849 case 0:
8631 dasm_put(Dst, 4870); 8850 dasm_put(Dst, 5061);
8632 break; 8851 break;
8633 case 1: 8852 case 1:
8634 dasm_put(Dst, 4873); 8853 dasm_put(Dst, 5064);
8635 break; 8854 break;
8636 default: 8855 default:
8637 dasm_put(Dst, 4876); 8856 dasm_put(Dst, 5067);
8638 break; 8857 break;
8639 } 8858 }
8640 dasm_put(Dst, 4879); 8859 dasm_put(Dst, 5070);
8641 } else { 8860 } else {
8642 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8861 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8643 switch (vk) { 8862 switch (vk) {
8644 case 0: 8863 case 0:
8645 dasm_put(Dst, 4886); 8864 dasm_put(Dst, 5077);
8646 if (LJ_DUALNUM) { 8865 if (LJ_DUALNUM) {
8647 dasm_put(Dst, 4888); 8866 dasm_put(Dst, 5079);
8648 } 8867 }
8649 dasm_put(Dst, 4890); 8868 dasm_put(Dst, 5081);
8650 if (LJ_DUALNUM) { 8869 if (LJ_DUALNUM) {
8651 dasm_put(Dst, 4893); 8870 dasm_put(Dst, 5084);
8652 } else { 8871 } else {
8653 dasm_put(Dst, 4899); 8872 dasm_put(Dst, 5090);
8654 } 8873 }
8655 break; 8874 break;
8656 case 1: 8875 case 1:
8657 dasm_put(Dst, 4903); 8876 dasm_put(Dst, 5094);
8658 if (LJ_DUALNUM) { 8877 if (LJ_DUALNUM) {
8659 dasm_put(Dst, 4905); 8878 dasm_put(Dst, 5096);
8660 } 8879 }
8661 dasm_put(Dst, 4907); 8880 dasm_put(Dst, 5098);
8662 if (LJ_DUALNUM) { 8881 if (LJ_DUALNUM) {
8663 dasm_put(Dst, 4910); 8882 dasm_put(Dst, 5101);
8664 } else { 8883 } else {
8665 dasm_put(Dst, 4916); 8884 dasm_put(Dst, 5107);
8666 } 8885 }
8667 break; 8886 break;
8668 default: 8887 default:
8669 dasm_put(Dst, 4920); 8888 dasm_put(Dst, 5111);
8670 break; 8889 break;
8671 } 8890 }
8672 dasm_put(Dst, 4930); 8891 dasm_put(Dst, 5121);
8673 } 8892 }
8674 break; 8893 break;
8675 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 8894 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
@@ -8677,77 +8896,77 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8677 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8896 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8678 switch (vk) { 8897 switch (vk) {
8679 case 0: 8898 case 0:
8680 dasm_put(Dst, 4943); 8899 dasm_put(Dst, 5134);
8681 break; 8900 break;
8682 case 1: 8901 case 1:
8683 dasm_put(Dst, 4949); 8902 dasm_put(Dst, 5140);
8684 break; 8903 break;
8685 default: 8904 default:
8686 dasm_put(Dst, 4955); 8905 dasm_put(Dst, 5146);
8687 break; 8906 break;
8688 } 8907 }
8689 dasm_put(Dst, 4961); 8908 dasm_put(Dst, 5152);
8690 switch (vk) { 8909 switch (vk) {
8691 case 0: 8910 case 0:
8692 dasm_put(Dst, 4988); 8911 dasm_put(Dst, 5179);
8693 break; 8912 break;
8694 case 1: 8913 case 1:
8695 dasm_put(Dst, 4991); 8914 dasm_put(Dst, 5182);
8696 break; 8915 break;
8697 default: 8916 default:
8698 dasm_put(Dst, 4994); 8917 dasm_put(Dst, 5185);
8699 break; 8918 break;
8700 } 8919 }
8701 dasm_put(Dst, 4997); 8920 dasm_put(Dst, 5188);
8702 if (vk == 1) { 8921 if (vk == 1) {
8703 dasm_put(Dst, 4999); 8922 dasm_put(Dst, 5190);
8704 } else { 8923 } else {
8705 dasm_put(Dst, 5003); 8924 dasm_put(Dst, 5194);
8706 } 8925 }
8707 switch (vk) { 8926 switch (vk) {
8708 case 0: 8927 case 0:
8709 dasm_put(Dst, 5007); 8928 dasm_put(Dst, 5198);
8710 break; 8929 break;
8711 case 1: 8930 case 1:
8712 dasm_put(Dst, 5010); 8931 dasm_put(Dst, 5201);
8713 break; 8932 break;
8714 default: 8933 default:
8715 dasm_put(Dst, 5013); 8934 dasm_put(Dst, 5204);
8716 break; 8935 break;
8717 } 8936 }
8718 dasm_put(Dst, 5016); 8937 dasm_put(Dst, 5207);
8719 } else { 8938 } else {
8720 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8939 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8721 switch (vk) { 8940 switch (vk) {
8722 case 0: 8941 case 0:
8723 dasm_put(Dst, 5023); 8942 dasm_put(Dst, 5214);
8724 if (LJ_DUALNUM) { 8943 if (LJ_DUALNUM) {
8725 dasm_put(Dst, 5025); 8944 dasm_put(Dst, 5216);
8726 } 8945 }
8727 dasm_put(Dst, 5027); 8946 dasm_put(Dst, 5218);
8728 if (LJ_DUALNUM) { 8947 if (LJ_DUALNUM) {
8729 dasm_put(Dst, 5030); 8948 dasm_put(Dst, 5221);
8730 } else { 8949 } else {
8731 dasm_put(Dst, 5036); 8950 dasm_put(Dst, 5227);
8732 } 8951 }
8733 break; 8952 break;
8734 case 1: 8953 case 1:
8735 dasm_put(Dst, 5040); 8954 dasm_put(Dst, 5231);
8736 if (LJ_DUALNUM) { 8955 if (LJ_DUALNUM) {
8737 dasm_put(Dst, 5042); 8956 dasm_put(Dst, 5233);
8738 } 8957 }
8739 dasm_put(Dst, 5044); 8958 dasm_put(Dst, 5235);
8740 if (LJ_DUALNUM) { 8959 if (LJ_DUALNUM) {
8741 dasm_put(Dst, 5047); 8960 dasm_put(Dst, 5238);
8742 } else { 8961 } else {
8743 dasm_put(Dst, 5053); 8962 dasm_put(Dst, 5244);
8744 } 8963 }
8745 break; 8964 break;
8746 default: 8965 default:
8747 dasm_put(Dst, 5057); 8966 dasm_put(Dst, 5248);
8748 break; 8967 break;
8749 } 8968 }
8750 dasm_put(Dst, 5067); 8969 dasm_put(Dst, 5258);
8751 } 8970 }
8752 break; 8971 break;
8753 case BC_MULVN: case BC_MULNV: case BC_MULVV: 8972 case BC_MULVN: case BC_MULNV: case BC_MULVV:
@@ -8755,188 +8974,188 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8755 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8974 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8756 switch (vk) { 8975 switch (vk) {
8757 case 0: 8976 case 0:
8758 dasm_put(Dst, 5080); 8977 dasm_put(Dst, 5271);
8759 break; 8978 break;
8760 case 1: 8979 case 1:
8761 dasm_put(Dst, 5086); 8980 dasm_put(Dst, 5277);
8762 break; 8981 break;
8763 default: 8982 default:
8764 dasm_put(Dst, 5092); 8983 dasm_put(Dst, 5283);
8765 break; 8984 break;
8766 } 8985 }
8767 dasm_put(Dst, 5098); 8986 dasm_put(Dst, 5289);
8768 switch (vk) { 8987 switch (vk) {
8769 case 0: 8988 case 0:
8770 dasm_put(Dst, 5125); 8989 dasm_put(Dst, 5316);
8771 break; 8990 break;
8772 case 1: 8991 case 1:
8773 dasm_put(Dst, 5128); 8992 dasm_put(Dst, 5319);
8774 break; 8993 break;
8775 default: 8994 default:
8776 dasm_put(Dst, 5131); 8995 dasm_put(Dst, 5322);
8777 break; 8996 break;
8778 } 8997 }
8779 dasm_put(Dst, 5134); 8998 dasm_put(Dst, 5325);
8780 if (vk == 1) { 8999 if (vk == 1) {
8781 dasm_put(Dst, 5136); 9000 dasm_put(Dst, 5327);
8782 } else { 9001 } else {
8783 dasm_put(Dst, 5140); 9002 dasm_put(Dst, 5331);
8784 } 9003 }
8785 switch (vk) { 9004 switch (vk) {
8786 case 0: 9005 case 0:
8787 dasm_put(Dst, 5144); 9006 dasm_put(Dst, 5335);
8788 break; 9007 break;
8789 case 1: 9008 case 1:
8790 dasm_put(Dst, 5147); 9009 dasm_put(Dst, 5338);
8791 break; 9010 break;
8792 default: 9011 default:
8793 dasm_put(Dst, 5150); 9012 dasm_put(Dst, 5341);
8794 break; 9013 break;
8795 } 9014 }
8796 dasm_put(Dst, 5153); 9015 dasm_put(Dst, 5344);
8797 } else { 9016 } else {
8798 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 9017 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8799 switch (vk) { 9018 switch (vk) {
8800 case 0: 9019 case 0:
8801 dasm_put(Dst, 5160); 9020 dasm_put(Dst, 5351);
8802 if (LJ_DUALNUM) { 9021 if (LJ_DUALNUM) {
8803 dasm_put(Dst, 5162); 9022 dasm_put(Dst, 5353);
8804 } 9023 }
8805 dasm_put(Dst, 5164); 9024 dasm_put(Dst, 5355);
8806 if (LJ_DUALNUM) { 9025 if (LJ_DUALNUM) {
8807 dasm_put(Dst, 5167); 9026 dasm_put(Dst, 5358);
8808 } else { 9027 } else {
8809 dasm_put(Dst, 5173); 9028 dasm_put(Dst, 5364);
8810 } 9029 }
8811 break; 9030 break;
8812 case 1: 9031 case 1:
8813 dasm_put(Dst, 5177); 9032 dasm_put(Dst, 5368);
8814 if (LJ_DUALNUM) { 9033 if (LJ_DUALNUM) {
8815 dasm_put(Dst, 5179); 9034 dasm_put(Dst, 5370);
8816 } 9035 }
8817 dasm_put(Dst, 5181); 9036 dasm_put(Dst, 5372);
8818 if (LJ_DUALNUM) { 9037 if (LJ_DUALNUM) {
8819 dasm_put(Dst, 5184); 9038 dasm_put(Dst, 5375);
8820 } else { 9039 } else {
8821 dasm_put(Dst, 5190); 9040 dasm_put(Dst, 5381);
8822 } 9041 }
8823 break; 9042 break;
8824 default: 9043 default:
8825 dasm_put(Dst, 5194); 9044 dasm_put(Dst, 5385);
8826 break; 9045 break;
8827 } 9046 }
8828 dasm_put(Dst, 5204); 9047 dasm_put(Dst, 5395);
8829 } 9048 }
8830 break; 9049 break;
8831 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 9050 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
8832 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 9051 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8833 switch (vk) { 9052 switch (vk) {
8834 case 0: 9053 case 0:
8835 dasm_put(Dst, 5217); 9054 dasm_put(Dst, 5408);
8836 if (LJ_DUALNUM) { 9055 if (LJ_DUALNUM) {
8837 dasm_put(Dst, 5219); 9056 dasm_put(Dst, 5410);
8838 } 9057 }
8839 dasm_put(Dst, 5221); 9058 dasm_put(Dst, 5412);
8840 if (LJ_DUALNUM) { 9059 if (LJ_DUALNUM) {
8841 dasm_put(Dst, 5224); 9060 dasm_put(Dst, 5415);
8842 } else { 9061 } else {
8843 dasm_put(Dst, 5230); 9062 dasm_put(Dst, 5421);
8844 } 9063 }
8845 break; 9064 break;
8846 case 1: 9065 case 1:
8847 dasm_put(Dst, 5234); 9066 dasm_put(Dst, 5425);
8848 if (LJ_DUALNUM) { 9067 if (LJ_DUALNUM) {
8849 dasm_put(Dst, 5236); 9068 dasm_put(Dst, 5427);
8850 } 9069 }
8851 dasm_put(Dst, 5238); 9070 dasm_put(Dst, 5429);
8852 if (LJ_DUALNUM) { 9071 if (LJ_DUALNUM) {
8853 dasm_put(Dst, 5241); 9072 dasm_put(Dst, 5432);
8854 } else { 9073 } else {
8855 dasm_put(Dst, 5247); 9074 dasm_put(Dst, 5438);
8856 } 9075 }
8857 break; 9076 break;
8858 default: 9077 default:
8859 dasm_put(Dst, 5251); 9078 dasm_put(Dst, 5442);
8860 break; 9079 break;
8861 } 9080 }
8862 dasm_put(Dst, 5261); 9081 dasm_put(Dst, 5452);
8863 break; 9082 break;
8864 case BC_MODVN: 9083 case BC_MODVN:
8865 if (LJ_DUALNUM) { 9084 if (LJ_DUALNUM) {
8866 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 9085 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8867 switch (vk) { 9086 switch (vk) {
8868 case 0: 9087 case 0:
8869 dasm_put(Dst, 5274); 9088 dasm_put(Dst, 5465);
8870 break; 9089 break;
8871 case 1: 9090 case 1:
8872 dasm_put(Dst, 5280); 9091 dasm_put(Dst, 5471);
8873 break; 9092 break;
8874 default: 9093 default:
8875 dasm_put(Dst, 5286); 9094 dasm_put(Dst, 5477);
8876 break; 9095 break;
8877 } 9096 }
8878 dasm_put(Dst, 5292); 9097 dasm_put(Dst, 5483);
8879 switch (vk) { 9098 switch (vk) {
8880 case 0: 9099 case 0:
8881 dasm_put(Dst, 5320); 9100 dasm_put(Dst, 5511);
8882 break; 9101 break;
8883 case 1: 9102 case 1:
8884 dasm_put(Dst, 5323); 9103 dasm_put(Dst, 5514);
8885 break; 9104 break;
8886 default: 9105 default:
8887 dasm_put(Dst, 5326); 9106 dasm_put(Dst, 5517);
8888 break; 9107 break;
8889 } 9108 }
8890 dasm_put(Dst, 5329); 9109 dasm_put(Dst, 5520);
8891 if (vk == 1) { 9110 if (vk == 1) {
8892 dasm_put(Dst, 5331); 9111 dasm_put(Dst, 5522);
8893 } else { 9112 } else {
8894 dasm_put(Dst, 5335); 9113 dasm_put(Dst, 5526);
8895 } 9114 }
8896 switch (vk) { 9115 switch (vk) {
8897 case 0: 9116 case 0:
8898 dasm_put(Dst, 5339); 9117 dasm_put(Dst, 5530);
8899 break; 9118 break;
8900 case 1: 9119 case 1:
8901 dasm_put(Dst, 5342); 9120 dasm_put(Dst, 5533);
8902 break; 9121 break;
8903 default: 9122 default:
8904 dasm_put(Dst, 5345); 9123 dasm_put(Dst, 5536);
8905 break; 9124 break;
8906 } 9125 }
8907 dasm_put(Dst, 5348); 9126 dasm_put(Dst, 5539);
8908 } else { 9127 } else {
8909 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 9128 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8910 switch (vk) { 9129 switch (vk) {
8911 case 0: 9130 case 0:
8912 dasm_put(Dst, 5360); 9131 dasm_put(Dst, 5551);
8913 if (LJ_DUALNUM) { 9132 if (LJ_DUALNUM) {
8914 dasm_put(Dst, 5362); 9133 dasm_put(Dst, 5553);
8915 } 9134 }
8916 dasm_put(Dst, 5364); 9135 dasm_put(Dst, 5555);
8917 if (LJ_DUALNUM) { 9136 if (LJ_DUALNUM) {
8918 dasm_put(Dst, 5367); 9137 dasm_put(Dst, 5558);
8919 } else { 9138 } else {
8920 dasm_put(Dst, 5373); 9139 dasm_put(Dst, 5564);
8921 } 9140 }
8922 break; 9141 break;
8923 case 1: 9142 case 1:
8924 dasm_put(Dst, 5377); 9143 dasm_put(Dst, 5568);
8925 if (LJ_DUALNUM) { 9144 if (LJ_DUALNUM) {
8926 dasm_put(Dst, 5379); 9145 dasm_put(Dst, 5570);
8927 } 9146 }
8928 dasm_put(Dst, 5381); 9147 dasm_put(Dst, 5572);
8929 if (LJ_DUALNUM) { 9148 if (LJ_DUALNUM) {
8930 dasm_put(Dst, 5384); 9149 dasm_put(Dst, 5575);
8931 } else { 9150 } else {
8932 dasm_put(Dst, 5390); 9151 dasm_put(Dst, 5581);
8933 } 9152 }
8934 break; 9153 break;
8935 default: 9154 default:
8936 dasm_put(Dst, 5394); 9155 dasm_put(Dst, 5585);
8937 break; 9156 break;
8938 } 9157 }
8939 dasm_put(Dst, 5404); 9158 dasm_put(Dst, 5595);
8940 } 9159 }
8941 break; 9160 break;
8942 case BC_MODNV: case BC_MODVV: 9161 case BC_MODNV: case BC_MODVV:
@@ -8944,298 +9163,298 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8944 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 9163 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8945 switch (vk) { 9164 switch (vk) {
8946 case 0: 9165 case 0:
8947 dasm_put(Dst, 5422); 9166 dasm_put(Dst, 5613);
8948 break; 9167 break;
8949 case 1: 9168 case 1:
8950 dasm_put(Dst, 5428); 9169 dasm_put(Dst, 5619);
8951 break; 9170 break;
8952 default: 9171 default:
8953 dasm_put(Dst, 5434); 9172 dasm_put(Dst, 5625);
8954 break; 9173 break;
8955 } 9174 }
8956 dasm_put(Dst, 5440); 9175 dasm_put(Dst, 5631);
8957 switch (vk) { 9176 switch (vk) {
8958 case 0: 9177 case 0:
8959 dasm_put(Dst, 5468); 9178 dasm_put(Dst, 5659);
8960 break; 9179 break;
8961 case 1: 9180 case 1:
8962 dasm_put(Dst, 5471); 9181 dasm_put(Dst, 5662);
8963 break; 9182 break;
8964 default: 9183 default:
8965 dasm_put(Dst, 5474); 9184 dasm_put(Dst, 5665);
8966 break; 9185 break;
8967 } 9186 }
8968 dasm_put(Dst, 5477); 9187 dasm_put(Dst, 5668);
8969 if (vk == 1) { 9188 if (vk == 1) {
8970 dasm_put(Dst, 5479); 9189 dasm_put(Dst, 5670);
8971 } else { 9190 } else {
8972 dasm_put(Dst, 5483); 9191 dasm_put(Dst, 5674);
8973 } 9192 }
8974 switch (vk) { 9193 switch (vk) {
8975 case 0: 9194 case 0:
8976 dasm_put(Dst, 5487); 9195 dasm_put(Dst, 5678);
8977 break; 9196 break;
8978 case 1: 9197 case 1:
8979 dasm_put(Dst, 5490); 9198 dasm_put(Dst, 5681);
8980 break; 9199 break;
8981 default: 9200 default:
8982 dasm_put(Dst, 5493); 9201 dasm_put(Dst, 5684);
8983 break; 9202 break;
8984 } 9203 }
8985 dasm_put(Dst, 5496); 9204 dasm_put(Dst, 5687);
8986 } else { 9205 } else {
8987 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 9206 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8988 switch (vk) { 9207 switch (vk) {
8989 case 0: 9208 case 0:
8990 dasm_put(Dst, 5499); 9209 dasm_put(Dst, 5690);
8991 if (LJ_DUALNUM) { 9210 if (LJ_DUALNUM) {
8992 dasm_put(Dst, 5501); 9211 dasm_put(Dst, 5692);
8993 } 9212 }
8994 dasm_put(Dst, 5503); 9213 dasm_put(Dst, 5694);
8995 if (LJ_DUALNUM) { 9214 if (LJ_DUALNUM) {
8996 dasm_put(Dst, 5506); 9215 dasm_put(Dst, 5697);
8997 } else { 9216 } else {
8998 dasm_put(Dst, 5512); 9217 dasm_put(Dst, 5703);
8999 } 9218 }
9000 break; 9219 break;
9001 case 1: 9220 case 1:
9002 dasm_put(Dst, 5516); 9221 dasm_put(Dst, 5707);
9003 if (LJ_DUALNUM) { 9222 if (LJ_DUALNUM) {
9004 dasm_put(Dst, 5518); 9223 dasm_put(Dst, 5709);
9005 } 9224 }
9006 dasm_put(Dst, 5520); 9225 dasm_put(Dst, 5711);
9007 if (LJ_DUALNUM) { 9226 if (LJ_DUALNUM) {
9008 dasm_put(Dst, 5523); 9227 dasm_put(Dst, 5714);
9009 } else { 9228 } else {
9010 dasm_put(Dst, 5529); 9229 dasm_put(Dst, 5720);
9011 } 9230 }
9012 break; 9231 break;
9013 default: 9232 default:
9014 dasm_put(Dst, 5533); 9233 dasm_put(Dst, 5724);
9015 break; 9234 break;
9016 } 9235 }
9017 dasm_put(Dst, 5543); 9236 dasm_put(Dst, 5734);
9018 } 9237 }
9019 break; 9238 break;
9020 case BC_POW: 9239 case BC_POW:
9021 dasm_put(Dst, 5546); 9240 dasm_put(Dst, 5737);
9022 break; 9241 break;
9023 9242
9024 case BC_CAT: 9243 case BC_CAT:
9025 dasm_put(Dst, 5569, Dt1(->base), 32-3, Dt1(->base)); 9244 dasm_put(Dst, 5760, Dt1(->base), 32-3, Dt1(->base));
9026 break; 9245 break;
9027 9246
9028 /* -- Constant ops ------------------------------------------------------ */ 9247 /* -- Constant ops ------------------------------------------------------ */
9029 9248
9030 case BC_KSTR: 9249 case BC_KSTR:
9031 dasm_put(Dst, 5599, 32-1, LJ_TSTR); 9250 dasm_put(Dst, 5790, 32-1, LJ_TSTR);
9032 break; 9251 break;
9033 case BC_KCDATA: 9252 case BC_KCDATA:
9034#if LJ_HASFFI 9253#if LJ_HASFFI
9035 dasm_put(Dst, 5618, 32-1, LJ_TCDATA); 9254 dasm_put(Dst, 5809, 32-1, LJ_TCDATA);
9036#endif 9255#endif
9037 break; 9256 break;
9038 case BC_KSHORT: 9257 case BC_KSHORT:
9039 if (LJ_DUALNUM) { 9258 if (LJ_DUALNUM) {
9040 dasm_put(Dst, 5637, 31-13); 9259 dasm_put(Dst, 5828, 31-13);
9041 } else { 9260 } else {
9042 dasm_put(Dst, 5653, 31-13, 31-20); 9261 dasm_put(Dst, 5844, 31-13, 31-20);
9043 } 9262 }
9044 break; 9263 break;
9045 case BC_KNUM: 9264 case BC_KNUM:
9046 dasm_put(Dst, 5681); 9265 dasm_put(Dst, 5872);
9047 break; 9266 break;
9048 case BC_KPRI: 9267 case BC_KPRI:
9049 dasm_put(Dst, 5694, 32-3); 9268 dasm_put(Dst, 5885, 32-3);
9050 break; 9269 break;
9051 case BC_KNIL: 9270 case BC_KNIL:
9052 dasm_put(Dst, 5709); 9271 dasm_put(Dst, 5900);
9053 break; 9272 break;
9054 9273
9055 /* -- Upvalue and function ops ------------------------------------------ */ 9274 /* -- Upvalue and function ops ------------------------------------------ */
9056 9275
9057 case BC_UGET: 9276 case BC_UGET:
9058 dasm_put(Dst, 5728, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); 9277 dasm_put(Dst, 5919, 32-1, offsetof(GCfuncL, uvptr), DtA(->v));
9059 break; 9278 break;
9060 case BC_USETV: 9279 case BC_USETV:
9061 dasm_put(Dst, 5749, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, DtA(->closed), -(LJ_TISNUM+1), LJ_TISGCV - (LJ_TISNUM+1), Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G); 9280 dasm_put(Dst, 5940, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, DtA(->closed), -(LJ_TISNUM+1), LJ_TISGCV - (LJ_TISNUM+1), Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G);
9062 break; 9281 break;
9063 case BC_USETS: 9282 case BC_USETS:
9064 dasm_put(Dst, 5802, 32-1, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, Dt5(->marked), DtA(->closed), LJ_TSTR, LJ_GC_WHITES, GG_DISP2G); 9283 dasm_put(Dst, 5993, 32-1, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, Dt5(->marked), DtA(->closed), LJ_TSTR, LJ_GC_WHITES, GG_DISP2G);
9065 break; 9284 break;
9066 case BC_USETN: 9285 case BC_USETN:
9067 dasm_put(Dst, 5853, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); 9286 dasm_put(Dst, 6044, 32-1, offsetof(GCfuncL, uvptr), DtA(->v));
9068 break; 9287 break;
9069 case BC_USETP: 9288 case BC_USETP:
9070 dasm_put(Dst, 5874, 32-1, 32-3, offsetof(GCfuncL, uvptr), DtA(->v)); 9289 dasm_put(Dst, 6065, 32-1, 32-3, offsetof(GCfuncL, uvptr), DtA(->v));
9071 break; 9290 break;
9072 9291
9073 case BC_UCLO: 9292 case BC_UCLO:
9074 dasm_put(Dst, 5897, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base)); 9293 dasm_put(Dst, 6088, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base));
9075 break; 9294 break;
9076 9295
9077 case BC_FNEW: 9296 case BC_FNEW:
9078 dasm_put(Dst, 5927, 32-1, Dt1(->base), Dt1(->base), LJ_TFUNC); 9297 dasm_put(Dst, 6118, 32-1, Dt1(->base), Dt1(->base), LJ_TFUNC);
9079 break; 9298 break;
9080 9299
9081 /* -- Table ops --------------------------------------------------------- */ 9300 /* -- Table ops --------------------------------------------------------- */
9082 9301
9083 case BC_TNEW: 9302 case BC_TNEW:
9084 case BC_TDUP: 9303 case BC_TDUP:
9085 dasm_put(Dst, 5955, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base)); 9304 dasm_put(Dst, 6146, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base));
9086 if (op == BC_TNEW) { 9305 if (op == BC_TNEW) {
9087 dasm_put(Dst, 5968); 9306 dasm_put(Dst, 6159);
9088 } else { 9307 } else {
9089 dasm_put(Dst, 5977, 32-1); 9308 dasm_put(Dst, 6168, 32-1);
9090 } 9309 }
9091 dasm_put(Dst, 5984, Dt1(->base), LJ_TTAB); 9310 dasm_put(Dst, 6175, Dt1(->base), LJ_TTAB);
9092 if (op == BC_TNEW) { 9311 if (op == BC_TNEW) {
9093 dasm_put(Dst, 6001); 9312 dasm_put(Dst, 6192);
9094 } 9313 }
9095 dasm_put(Dst, 6006); 9314 dasm_put(Dst, 6197);
9096 break; 9315 break;
9097 9316
9098 case BC_GGET: 9317 case BC_GGET:
9099 case BC_GSET: 9318 case BC_GSET:
9100 dasm_put(Dst, 6015, 32-1, Dt7(->env)); 9319 dasm_put(Dst, 6206, 32-1, Dt7(->env));
9101 if (op == BC_GGET) { 9320 if (op == BC_GGET) {
9102 dasm_put(Dst, 6023); 9321 dasm_put(Dst, 6214);
9103 } else { 9322 } else {
9104 dasm_put(Dst, 6026); 9323 dasm_put(Dst, 6217);
9105 } 9324 }
9106 break; 9325 break;
9107 9326
9108 case BC_TGETV: 9327 case BC_TGETV:
9109 dasm_put(Dst, 6029); 9328 dasm_put(Dst, 6220);
9110 if (LJ_DUALNUM) { 9329 if (LJ_DUALNUM) {
9111 dasm_put(Dst, 6033); 9330 dasm_put(Dst, 6224);
9112 } else { 9331 } else {
9113 dasm_put(Dst, 6035); 9332 dasm_put(Dst, 6226);
9114 } 9333 }
9115 dasm_put(Dst, 6037, LJ_TTAB); 9334 dasm_put(Dst, 6228, LJ_TTAB);
9116 if (LJ_DUALNUM) { 9335 if (LJ_DUALNUM) {
9117 dasm_put(Dst, 6043, Dt6(->asize), Dt6(->array), 31-3); 9336 dasm_put(Dst, 6234, Dt6(->asize), Dt6(->array), 31-3);
9118 } else { 9337 } else {
9119 dasm_put(Dst, 6053, Dt6(->asize), Dt6(->array), 31-3); 9338 dasm_put(Dst, 6244, Dt6(->asize), Dt6(->array), 31-3);
9120 } 9339 }
9121 dasm_put(Dst, 6070, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index, LJ_TSTR); 9340 dasm_put(Dst, 6261, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index, LJ_TSTR);
9122 if (!LJ_DUALNUM) { 9341 if (!LJ_DUALNUM) {
9123 dasm_put(Dst, 6110); 9342 dasm_put(Dst, 6301);
9124 } 9343 }
9125 dasm_put(Dst, 6112); 9344 dasm_put(Dst, 6303);
9126 break; 9345 break;
9127 case BC_TGETS: 9346 case BC_TGETS:
9128 dasm_put(Dst, 6115, 32-1, LJ_TTAB, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), 4+offsetof(Node, key), DtB(->val), 4+offsetof(Node, val), LJ_TSTR, LJ_TNIL, DtB(->next)); 9347 dasm_put(Dst, 6306, 32-1, LJ_TTAB, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), 4+offsetof(Node, key), DtB(->val), 4+offsetof(Node, val), LJ_TSTR, LJ_TNIL, DtB(->next));
9129 dasm_put(Dst, 6176, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 9348 dasm_put(Dst, 6367, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
9130 break; 9349 break;
9131 case BC_TGETB: 9350 case BC_TGETB:
9132 dasm_put(Dst, 6196, 32-3, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 9351 dasm_put(Dst, 6387, 32-3, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
9133 break; 9352 break;
9134 9353
9135 case BC_TSETV: 9354 case BC_TSETV:
9136 dasm_put(Dst, 6244); 9355 dasm_put(Dst, 6435);
9137 if (LJ_DUALNUM) { 9356 if (LJ_DUALNUM) {
9138 dasm_put(Dst, 6248); 9357 dasm_put(Dst, 6439);
9139 } else { 9358 } else {
9140 dasm_put(Dst, 6250); 9359 dasm_put(Dst, 6441);
9141 } 9360 }
9142 dasm_put(Dst, 6252, LJ_TTAB); 9361 dasm_put(Dst, 6443, LJ_TTAB);
9143 if (LJ_DUALNUM) { 9362 if (LJ_DUALNUM) {
9144 dasm_put(Dst, 6258, Dt6(->asize), Dt6(->array), 31-3); 9363 dasm_put(Dst, 6449, Dt6(->asize), Dt6(->array), 31-3);
9145 } else { 9364 } else {
9146 dasm_put(Dst, 6268, Dt6(->asize), Dt6(->array), 31-3); 9365 dasm_put(Dst, 6459, Dt6(->asize), Dt6(->array), 31-3);
9147 } 9366 }
9148 dasm_put(Dst, 6285, Dt6(->marked), LJ_TNIL, LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR); 9367 dasm_put(Dst, 6476, Dt6(->marked), LJ_TNIL, LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR);
9149 if (!LJ_DUALNUM) { 9368 if (!LJ_DUALNUM) {
9150 dasm_put(Dst, 6332); 9369 dasm_put(Dst, 6523);
9151 } 9370 }
9152 dasm_put(Dst, 6334, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 9371 dasm_put(Dst, 6525, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
9153 break; 9372 break;
9154 dasm_put(Dst, 6349, LJ_TSTR, LJ_TNIL); 9373 dasm_put(Dst, 6540, LJ_TSTR, LJ_TNIL);
9155 case BC_TSETS: 9374 case BC_TSETS:
9156 dasm_put(Dst, 6375, 32-1, LJ_TTAB, Dt6(->hmask), Dt5(->hash), Dt6(->node), Dt6(->nomm), 31-5, 31-3, Dt6(->marked), DtB(->key), 4+offsetof(Node, key), DtB(->val), 4+offsetof(Node, val), LJ_TSTR, LJ_TNIL); 9375 dasm_put(Dst, 6566, 32-1, LJ_TTAB, Dt6(->hmask), Dt5(->hash), Dt6(->node), Dt6(->nomm), 31-5, 31-3, Dt6(->marked), DtB(->key), 4+offsetof(Node, key), DtB(->val), 4+offsetof(Node, val), LJ_TSTR, LJ_TNIL);
9157 dasm_put(Dst, 6426, LJ_GC_BLACK, DtB(->val), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next), Dt6(->metatable), DISPATCH_GL(tmptv), Dt1(->base), Dt6(->nomm), 1<<MM_newindex); 9376 dasm_put(Dst, 6617, LJ_GC_BLACK, DtB(->val), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next), Dt6(->metatable), DISPATCH_GL(tmptv), Dt1(->base), Dt6(->nomm), 1<<MM_newindex);
9158 dasm_put(Dst, 6482, LJ_TSTR, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 9377 dasm_put(Dst, 6673, LJ_TSTR, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
9159 break; 9378 break;
9160 case BC_TSETB: 9379 case BC_TSETB:
9161 dasm_put(Dst, 6507, 32-3, LJ_TTAB, Dt6(->asize), Dt6(->array), Dt6(->marked), LJ_TNIL, LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DISPATCH_GL(gc.grayagain)); 9380 dasm_put(Dst, 6698, 32-3, LJ_TTAB, Dt6(->asize), Dt6(->array), Dt6(->marked), LJ_TNIL, LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DISPATCH_GL(gc.grayagain));
9162 dasm_put(Dst, 6565, DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 9381 dasm_put(Dst, 6756, DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
9163 break; 9382 break;
9164 9383
9165 case BC_TSETM: 9384 case BC_TSETM:
9166 dasm_put(Dst, 6575, 32-3, Dt6(->asize), 31-3, Dt6(->marked), Dt6(->array), LJ_GC_BLACK, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 9385 dasm_put(Dst, 6766, 32-3, Dt6(->asize), 31-3, Dt6(->marked), Dt6(->array), LJ_GC_BLACK, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
9167 dasm_put(Dst, 6644); 9386 dasm_put(Dst, 6835);
9168 break; 9387 break;
9169 9388
9170 /* -- Calls and vararg handling ----------------------------------------- */ 9389 /* -- Calls and vararg handling ----------------------------------------- */
9171 9390
9172 case BC_CALLM: 9391 case BC_CALLM:
9173 dasm_put(Dst, 6647); 9392 dasm_put(Dst, 6838);
9174 break; 9393 break;
9175 case BC_CALL: 9394 case BC_CALL:
9176 dasm_put(Dst, 6649, LJ_TFUNC, Dt7(->pc)); 9395 dasm_put(Dst, 6840, LJ_TFUNC, Dt7(->pc));
9177 break; 9396 break;
9178 9397
9179 case BC_CALLMT: 9398 case BC_CALLMT:
9180 dasm_put(Dst, 6670); 9399 dasm_put(Dst, 6861);
9181 break; 9400 break;
9182 case BC_CALLT: 9401 case BC_CALLT:
9183 dasm_put(Dst, 6672, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); 9402 dasm_put(Dst, 6863, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP);
9184 dasm_put(Dst, 6736, FRAME_TYPE); 9403 dasm_put(Dst, 6927, FRAME_TYPE);
9185 break; 9404 break;
9186 9405
9187 case BC_ITERC: 9406 case BC_ITERC:
9188 dasm_put(Dst, 6745, LJ_TFUNC, Dt7(->pc)); 9407 dasm_put(Dst, 6936, LJ_TFUNC, Dt7(->pc));
9189 break; 9408 break;
9190 9409
9191 case BC_ITERN: 9410 case BC_ITERN:
9192#if LJ_HASJIT 9411#if LJ_HASJIT
9193#endif 9412#endif
9194 dasm_put(Dst, 6772, Dt6(->asize), Dt6(->array), 31-3, LJ_TNIL); 9413 dasm_put(Dst, 6963, Dt6(->asize), Dt6(->array), 31-3, LJ_TNIL);
9195 if (LJ_DUALNUM) { 9414 if (LJ_DUALNUM) {
9196 dasm_put(Dst, 6794); 9415 dasm_put(Dst, 6985);
9197 } else { 9416 } else {
9198 dasm_put(Dst, 6797); 9417 dasm_put(Dst, 6988);
9199 } 9418 }
9200 dasm_put(Dst, 6801, -(BCBIAS_J*4 >> 16)); 9419 dasm_put(Dst, 6992, -(BCBIAS_J*4 >> 16));
9201 if (!LJ_DUALNUM) { 9420 if (!LJ_DUALNUM) {
9202 dasm_put(Dst, 6809); 9421 dasm_put(Dst, 7000);
9203 } 9422 }
9204 dasm_put(Dst, 6811, Dt6(->hmask), Dt6(->node), 31-5, 31-3, LJ_TNIL, DtB(->key), -(BCBIAS_J*4 >> 16)); 9423 dasm_put(Dst, 7002, Dt6(->hmask), Dt6(->node), 31-5, 31-3, LJ_TNIL, DtB(->key), -(BCBIAS_J*4 >> 16));
9205 break; 9424 break;
9206 9425
9207 case BC_ISNEXT: 9426 case BC_ISNEXT:
9208 dasm_put(Dst, 6867, LJ_TTAB, LJ_TFUNC, LJ_TNIL, Dt8(->ffid), FF_next_N, 32-1, -(BCBIAS_J*4 >> 16), BC_JMP, BC_ITERC, -(BCBIAS_J*4 >> 16)); 9427 dasm_put(Dst, 7058, LJ_TTAB, LJ_TFUNC, LJ_TNIL, Dt8(->ffid), FF_next_N, 32-1, -(BCBIAS_J*4 >> 16), BC_JMP, BC_ITERC, -(BCBIAS_J*4 >> 16));
9209 break; 9428 break;
9210 9429
9211 case BC_VARG: 9430 case BC_VARG:
9212 dasm_put(Dst, 6917, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base)); 9431 dasm_put(Dst, 7108, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base));
9213 dasm_put(Dst, 6997); 9432 dasm_put(Dst, 7188);
9214 break; 9433 break;
9215 9434
9216 /* -- Returns ----------------------------------------------------------- */ 9435 /* -- Returns ----------------------------------------------------------- */
9217 9436
9218 case BC_RETM: 9437 case BC_RETM:
9219 dasm_put(Dst, 7003); 9438 dasm_put(Dst, 7194);
9220 break; 9439 break;
9221 9440
9222 case BC_RET: 9441 case BC_RET:
9223 dasm_put(Dst, 7005, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); 9442 dasm_put(Dst, 7196, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP);
9224 break; 9443 break;
9225 9444
9226 case BC_RET0: case BC_RET1: 9445 case BC_RET0: case BC_RET1:
9227 dasm_put(Dst, 7075, FRAME_TYPE, FRAME_VARG); 9446 dasm_put(Dst, 7266, FRAME_TYPE, FRAME_VARG);
9228 if (op == BC_RET1) { 9447 if (op == BC_RET1) {
9229 dasm_put(Dst, 7088); 9448 dasm_put(Dst, 7279);
9230 } 9449 }
9231 dasm_put(Dst, 7091, Dt7(->pc), PC2PROTO(k)); 9450 dasm_put(Dst, 7282, Dt7(->pc), PC2PROTO(k));
9232 break; 9451 break;
9233 9452
9234 /* -- Loops and branches ------------------------------------------------ */ 9453 /* -- Loops and branches ------------------------------------------------ */
9235 9454
9236 case BC_FORL: 9455 case BC_FORL:
9237#if LJ_HASJIT 9456#if LJ_HASJIT
9238 dasm_put(Dst, 7119, GG_DISP2HOT, -HOTCOUNT_LOOP); 9457 dasm_put(Dst, 7310, GG_DISP2HOT, -HOTCOUNT_LOOP);
9239#endif 9458#endif
9240 break; 9459 break;
9241 9460
@@ -9248,100 +9467,100 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
9248 case BC_IFORL: 9467 case BC_IFORL:
9249 vk = (op == BC_IFORL || op == BC_JFORL); 9468 vk = (op == BC_IFORL || op == BC_JFORL);
9250 if (LJ_DUALNUM) { 9469 if (LJ_DUALNUM) {
9251 dasm_put(Dst, 7129, FORL_IDX*8+4); 9470 dasm_put(Dst, 7320, FORL_IDX*8+4);
9252 if (vk) { 9471 if (vk) {
9253 dasm_put(Dst, 7134, FORL_STEP*8+4, FORL_STOP*8+4, FORL_IDX*8+4); 9472 dasm_put(Dst, 7325, FORL_STEP*8+4, FORL_STOP*8+4, FORL_IDX*8+4);
9254 } else { 9473 } else {
9255 dasm_put(Dst, 7148, FORL_STEP*8, FORL_STEP*8+4, FORL_STOP*8, FORL_STOP*8+4); 9474 dasm_put(Dst, 7339, FORL_STEP*8, FORL_STEP*8+4, FORL_STOP*8, FORL_STOP*8+4);
9256 } 9475 }
9257 dasm_put(Dst, 7164, FORL_EXT*8); 9476 dasm_put(Dst, 7355, FORL_EXT*8);
9258 if (op != BC_JFORL) { 9477 if (op != BC_JFORL) {
9259 dasm_put(Dst, 7171, 32-1); 9478 dasm_put(Dst, 7362, 32-1);
9260 } 9479 }
9261 dasm_put(Dst, 7174, FORL_EXT*8+4); 9480 dasm_put(Dst, 7365, FORL_EXT*8+4);
9262 if (op != BC_JFORL) { 9481 if (op != BC_JFORL) {
9263 dasm_put(Dst, 7177); 9482 dasm_put(Dst, 7368);
9264 } 9483 }
9265 if (op == BC_FORI) { 9484 if (op == BC_FORI) {
9266 dasm_put(Dst, 7179); 9485 dasm_put(Dst, 7370);
9267 } else if (op == BC_JFORI) { 9486 } else if (op == BC_JFORI) {
9268 dasm_put(Dst, 7182, -(BCBIAS_J*4 >> 16)); 9487 dasm_put(Dst, 7373, -(BCBIAS_J*4 >> 16));
9269 } else if (op == BC_IFORL) { 9488 } else if (op == BC_IFORL) {
9270 dasm_put(Dst, 7187, -(BCBIAS_J*4 >> 16)); 9489 dasm_put(Dst, 7378, -(BCBIAS_J*4 >> 16));
9271 } else { 9490 } else {
9272 dasm_put(Dst, 7192, BC_JLOOP); 9491 dasm_put(Dst, 7383, BC_JLOOP);
9273 } 9492 }
9274 dasm_put(Dst, 7195); 9493 dasm_put(Dst, 7386);
9275 if (vk) { 9494 if (vk) {
9276 dasm_put(Dst, 7211); 9495 dasm_put(Dst, 7402);
9277 } 9496 }
9278 } 9497 }
9279 if (vk) { 9498 if (vk) {
9280 if (LJ_DUALNUM) { 9499 if (LJ_DUALNUM) {
9281 dasm_put(Dst, 7218, FORL_IDX*8); 9500 dasm_put(Dst, 7409, FORL_IDX*8);
9282 } else { 9501 } else {
9283 dasm_put(Dst, 7222); 9502 dasm_put(Dst, 7413);
9284 } 9503 }
9285 dasm_put(Dst, 7224, FORL_STEP*8, FORL_STOP*8, FORL_STEP*8, FORL_IDX*8); 9504 dasm_put(Dst, 7415, FORL_STEP*8, FORL_STOP*8, FORL_STEP*8, FORL_IDX*8);
9286 } else { 9505 } else {
9287 if (LJ_DUALNUM) { 9506 if (LJ_DUALNUM) {
9288 dasm_put(Dst, 7234); 9507 dasm_put(Dst, 7425);
9289 } else { 9508 } else {
9290 dasm_put(Dst, 7236, FORL_STEP*8, FORL_STOP*8); 9509 dasm_put(Dst, 7427, FORL_STEP*8, FORL_STOP*8);
9291 } 9510 }
9292 dasm_put(Dst, 7245, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8); 9511 dasm_put(Dst, 7436, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8);
9293 } 9512 }
9294 dasm_put(Dst, 7256); 9513 dasm_put(Dst, 7447);
9295 if (op != BC_JFORL) { 9514 if (op != BC_JFORL) {
9296 dasm_put(Dst, 7258, 32-1); 9515 dasm_put(Dst, 7449, 32-1);
9297 } 9516 }
9298 dasm_put(Dst, 7261, FORL_EXT*8); 9517 dasm_put(Dst, 7452, FORL_EXT*8);
9299 if (op != BC_JFORL) { 9518 if (op != BC_JFORL) {
9300 dasm_put(Dst, 7264); 9519 dasm_put(Dst, 7455);
9301 } 9520 }
9302 dasm_put(Dst, 7266); 9521 dasm_put(Dst, 7457);
9303 if (op == BC_JFORI) { 9522 if (op == BC_JFORI) {
9304 dasm_put(Dst, 7268, -(BCBIAS_J*4 >> 16)); 9523 dasm_put(Dst, 7459, -(BCBIAS_J*4 >> 16));
9305 } 9524 }
9306 dasm_put(Dst, 7271); 9525 dasm_put(Dst, 7462);
9307 if (op == BC_FORI) { 9526 if (op == BC_FORI) {
9308 dasm_put(Dst, 7274); 9527 dasm_put(Dst, 7465);
9309 } else if (op == BC_IFORL) { 9528 } else if (op == BC_IFORL) {
9310 if (LJ_DUALNUM) { 9529 if (LJ_DUALNUM) {
9311 dasm_put(Dst, 7277); 9530 dasm_put(Dst, 7468);
9312 } else { 9531 } else {
9313 dasm_put(Dst, 7280); 9532 dasm_put(Dst, 7471);
9314 } 9533 }
9315 dasm_put(Dst, 7283, -(BCBIAS_J*4 >> 16)); 9534 dasm_put(Dst, 7474, -(BCBIAS_J*4 >> 16));
9316 } else if (op == BC_JFORI) { 9535 } else if (op == BC_JFORI) {
9317 dasm_put(Dst, 7287); 9536 dasm_put(Dst, 7478);
9318 } else { 9537 } else {
9319 dasm_put(Dst, 7290, BC_JLOOP); 9538 dasm_put(Dst, 7481, BC_JLOOP);
9320 } 9539 }
9321 if (LJ_DUALNUM) { 9540 if (LJ_DUALNUM) {
9322 dasm_put(Dst, 7293); 9541 dasm_put(Dst, 7484);
9323 } else { 9542 } else {
9324 dasm_put(Dst, 7296); 9543 dasm_put(Dst, 7487);
9325 } 9544 }
9326 dasm_put(Dst, 7308); 9545 dasm_put(Dst, 7499);
9327 if (op == BC_FORI) { 9546 if (op == BC_FORI) {
9328 dasm_put(Dst, 7310, -(BCBIAS_J*4 >> 16)); 9547 dasm_put(Dst, 7501, -(BCBIAS_J*4 >> 16));
9329 } else if (op == BC_IFORL) { 9548 } else if (op == BC_IFORL) {
9330 dasm_put(Dst, 7316); 9549 dasm_put(Dst, 7507);
9331 } else if (op == BC_JFORI) { 9550 } else if (op == BC_JFORI) {
9332 dasm_put(Dst, 7319); 9551 dasm_put(Dst, 7510);
9333 } else { 9552 } else {
9334 dasm_put(Dst, 7322, BC_JLOOP); 9553 dasm_put(Dst, 7513, BC_JLOOP);
9335 } 9554 }
9336 dasm_put(Dst, 7325); 9555 dasm_put(Dst, 7516);
9337 if (op == BC_JFORI) { 9556 if (op == BC_JFORI) {
9338 dasm_put(Dst, 7328, BC_JLOOP); 9557 dasm_put(Dst, 7519, BC_JLOOP);
9339 } 9558 }
9340 break; 9559 break;
9341 9560
9342 case BC_ITERL: 9561 case BC_ITERL:
9343#if LJ_HASJIT 9562#if LJ_HASJIT
9344 dasm_put(Dst, 7334, GG_DISP2HOT, -HOTCOUNT_LOOP); 9563 dasm_put(Dst, 7525, GG_DISP2HOT, -HOTCOUNT_LOOP);
9345#endif 9564#endif
9346 break; 9565 break;
9347 9566
@@ -9350,40 +9569,40 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
9350 break; 9569 break;
9351#endif 9570#endif
9352 case BC_IITERL: 9571 case BC_IITERL:
9353 dasm_put(Dst, 7344, LJ_TNIL); 9572 dasm_put(Dst, 7535, LJ_TNIL);
9354 if (op == BC_JITERL) { 9573 if (op == BC_JITERL) {
9355 dasm_put(Dst, 7351, BC_JLOOP); 9574 dasm_put(Dst, 7542, BC_JLOOP);
9356 } else { 9575 } else {
9357 dasm_put(Dst, 7356, 32-1, -(BCBIAS_J*4 >> 16)); 9576 dasm_put(Dst, 7547, 32-1, -(BCBIAS_J*4 >> 16));
9358 } 9577 }
9359 dasm_put(Dst, 7364); 9578 dasm_put(Dst, 7555);
9360 break; 9579 break;
9361 9580
9362 case BC_LOOP: 9581 case BC_LOOP:
9363#if LJ_HASJIT 9582#if LJ_HASJIT
9364 dasm_put(Dst, 7376, GG_DISP2HOT, -HOTCOUNT_LOOP); 9583 dasm_put(Dst, 7567, GG_DISP2HOT, -HOTCOUNT_LOOP);
9365#endif 9584#endif
9366 break; 9585 break;
9367 9586
9368 case BC_ILOOP: 9587 case BC_ILOOP:
9369 dasm_put(Dst, 7386); 9588 dasm_put(Dst, 7577);
9370 break; 9589 break;
9371 9590
9372 case BC_JLOOP: 9591 case BC_JLOOP:
9373#if LJ_HASJIT 9592#if LJ_HASJIT
9374 dasm_put(Dst, 7397, DISPATCH_J(trace), 32-1, DISPATCH_GL(vmstate), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L), GG_DISP2G+32768); 9593 dasm_put(Dst, 7588, DISPATCH_J(trace), 32-1, DISPATCH_GL(vmstate), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L), GG_DISP2G+32768);
9375#endif 9594#endif
9376 break; 9595 break;
9377 9596
9378 case BC_JMP: 9597 case BC_JMP:
9379 dasm_put(Dst, 7416, 32-1, -(BCBIAS_J*4 >> 16)); 9598 dasm_put(Dst, 7607, 32-1, -(BCBIAS_J*4 >> 16));
9380 break; 9599 break;
9381 9600
9382 /* -- Function headers -------------------------------------------------- */ 9601 /* -- Function headers -------------------------------------------------- */
9383 9602
9384 case BC_FUNCF: 9603 case BC_FUNCF:
9385#if LJ_HASJIT 9604#if LJ_HASJIT
9386 dasm_put(Dst, 7432, GG_DISP2HOT, -HOTCOUNT_CALL); 9605 dasm_put(Dst, 7623, GG_DISP2HOT, -HOTCOUNT_CALL);
9387#endif 9606#endif
9388 case BC_FUNCV: /* NYI: compiled vararg functions. */ 9607 case BC_FUNCV: /* NYI: compiled vararg functions. */
9389 break; 9608 break;
@@ -9393,42 +9612,42 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
9393 break; 9612 break;
9394#endif 9613#endif
9395 case BC_IFUNCF: 9614 case BC_IFUNCF:
9396 dasm_put(Dst, 7442, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3); 9615 dasm_put(Dst, 7633, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3);
9397 if (op != BC_JFUNCF) { 9616 if (op != BC_JFUNCF) {
9398 dasm_put(Dst, 7454); 9617 dasm_put(Dst, 7645);
9399 } 9618 }
9400 dasm_put(Dst, 7457); 9619 dasm_put(Dst, 7648);
9401 if (op == BC_JFUNCF) { 9620 if (op == BC_JFUNCF) {
9402 dasm_put(Dst, 7462, BC_JLOOP); 9621 dasm_put(Dst, 7653, BC_JLOOP);
9403 } else { 9622 } else {
9404 dasm_put(Dst, 7466); 9623 dasm_put(Dst, 7657);
9405 } 9624 }
9406 dasm_put(Dst, 7475); 9625 dasm_put(Dst, 7666);
9407 break; 9626 break;
9408 9627
9409 case BC_JFUNCV: 9628 case BC_JFUNCV:
9410#if !LJ_HASJIT 9629#if !LJ_HASJIT
9411 break; 9630 break;
9412#endif 9631#endif
9413 dasm_put(Dst, 7481); 9632 dasm_put(Dst, 7672);
9414 break; /* NYI: compiled vararg functions. */ 9633 break; /* NYI: compiled vararg functions. */
9415 9634
9416 case BC_IFUNCV: 9635 case BC_IFUNCV:
9417 dasm_put(Dst, 7483, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams), LJ_TNIL); 9636 dasm_put(Dst, 7674, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams), LJ_TNIL);
9418 break; 9637 break;
9419 9638
9420 case BC_FUNCC: 9639 case BC_FUNCC:
9421 case BC_FUNCCW: 9640 case BC_FUNCCW:
9422 if (op == BC_FUNCC) { 9641 if (op == BC_FUNCC) {
9423 dasm_put(Dst, 7536, Dt8(->f)); 9642 dasm_put(Dst, 7727, Dt8(->f));
9424 } else { 9643 } else {
9425 dasm_put(Dst, 7539, DISPATCH_GL(wrapf)); 9644 dasm_put(Dst, 7730, DISPATCH_GL(wrapf));
9426 } 9645 }
9427 dasm_put(Dst, 7542, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C); 9646 dasm_put(Dst, 7733, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C);
9428 if (op == BC_FUNCCW) { 9647 if (op == BC_FUNCCW) {
9429 dasm_put(Dst, 7555, Dt8(->f)); 9648 dasm_put(Dst, 7746, Dt8(->f));
9430 } 9649 }
9431 dasm_put(Dst, 7558, DISPATCH_GL(vmstate), Dt1(->base), 31-3, Dt1(->top), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate)); 9650 dasm_put(Dst, 7749, DISPATCH_GL(vmstate), Dt1(->base), 31-3, Dt1(->top), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate));
9432 break; 9651 break;
9433 9652
9434 /* ---------------------------------------------------------------------- */ 9653 /* ---------------------------------------------------------------------- */
@@ -9448,7 +9667,7 @@ static int build_backend(BuildCtx *ctx)
9448 9667
9449 build_subroutines(ctx); 9668 build_subroutines(ctx);
9450 9669
9451 dasm_put(Dst, 7579); 9670 dasm_put(Dst, 7770);
9452 for (op = 0; op < BC__MAX; op++) 9671 for (op = 0; op < BC__MAX; op++)
9453 build_ins(ctx, (BCOp)op, op); 9672 build_ins(ctx, (BCOp)op, op);
9454 9673
diff --git a/src/lj_ccallback.c b/src/lj_ccallback.c
index e104c484..c0668e41 100644
--- a/src/lj_ccallback.c
+++ b/src/lj_ccallback.c
@@ -43,6 +43,13 @@ static MSize CALLBACK_OFS2SLOT(MSize ofs)
43#define CALLBACK_MAX_SLOT \ 43#define CALLBACK_MAX_SLOT \
44 (((CALLBACK_MCODE_SIZE-CALLBACK_MCODE_HEAD)/(CALLBACK_MCODE_GROUP+4*32))*32) 44 (((CALLBACK_MCODE_SIZE-CALLBACK_MCODE_HEAD)/(CALLBACK_MCODE_GROUP+4*32))*32)
45 45
46#elif LJ_TARGET_PPC
47
48#define CALLBACK_MCODE_HEAD 24
49#define CALLBACK_SLOT2OFS(slot) (CALLBACK_MCODE_HEAD + 8*(slot))
50#define CALLBACK_OFS2SLOT(ofs) (((ofs)-CALLBACK_MCODE_HEAD)/8)
51#define CALLBACK_MAX_SLOT (CALLBACK_OFS2SLOT(CALLBACK_MCODE_SIZE))
52
46#else 53#else
47 54
48/* Missing support for this architecture. */ 55/* Missing support for this architecture. */
@@ -70,8 +77,8 @@ MSize lj_ccallback_ptr2slot(CTState *cts, void *p)
70 return ~0u; /* Not a known callback function pointer. */ 77 return ~0u; /* Not a known callback function pointer. */
71} 78}
72 79
73#if LJ_TARGET_X86ORX64
74/* Initialize machine code for callback function pointers. */ 80/* Initialize machine code for callback function pointers. */
81#if LJ_TARGET_X86ORX64
75static void callback_mcode_init(global_State *g, uint8_t *page) 82static void callback_mcode_init(global_State *g, uint8_t *page)
76{ 83{
77 uint8_t *p = page; 84 uint8_t *p = page;
@@ -103,6 +110,25 @@ static void callback_mcode_init(global_State *g, uint8_t *page)
103 } 110 }
104 lua_assert(p - page <= CALLBACK_MCODE_SIZE); 111 lua_assert(p - page <= CALLBACK_MCODE_SIZE);
105} 112}
113#elif LJ_TARGET_PPC
114static void callback_mcode_init(global_State *g, uint32_t *page)
115{
116 uint32_t *p = page;
117 void *target = (void *)lj_vm_ffi_callback;
118 MSize slot;
119 *p++ = PPCI_LIS | PPCF_T(RID_TMP) | (u32ptr(target) >> 16);
120 *p++ = PPCI_LIS | PPCF_T(RID_R12) | (u32ptr(g) >> 16);
121 *p++ = PPCI_ORI | PPCF_A(RID_TMP)|PPCF_T(RID_TMP) | (u32ptr(target) & 0xffff);
122 *p++ = PPCI_ORI | PPCF_A(RID_R12)|PPCF_T(RID_R12) | (u32ptr(g) & 0xffff);
123 *p++ = PPCI_MTCTR | PPCF_T(RID_TMP);
124 *p++ = PPCI_BCTR;
125 for (slot = 0; slot < CALLBACK_MAX_SLOT; slot++) {
126 *p++ = PPCI_LI | PPCF_T(RID_R11) | slot;
127 *p = PPCI_B | (((page-p) & 0x00ffffffu) << 2);
128 p++;
129 }
130 lua_assert(p - page <= CALLBACK_MCODE_SIZE);
131}
106#else 132#else
107/* Missing support for this architecture. */ 133/* Missing support for this architecture. */
108#define callback_mcode_init(g, p) UNUSED(p) 134#define callback_mcode_init(g, p) UNUSED(p)
@@ -224,8 +250,28 @@ void lj_ccallback_mcode_free(CTState *cts)
224#elif LJ_TARGET_PPC 250#elif LJ_TARGET_PPC
225 251
226#define CALLBACK_HANDLE_REGARG \ 252#define CALLBACK_HANDLE_REGARG \
227 UNUSED(ngpr); UNUSED(nfpr); UNUSED(maxgpr); goto done; /* NYI */ 253 if (isfp) { \
228#define CALLBACK_HANDLE_RET /* NYI */ 254 if (nfpr + 1 <= CCALL_NARG_FPR) { \
255 sp = &cts->cb.fpr[nfpr]; \
256 nfpr += 1; \
257 cta = ctype_get(cts, CTID_DOUBLE); /* FPRs always hold doubles. */ \
258 goto done; \
259 } \
260 } else { /* Try to pass argument in GPRs. */ \
261 if (n > 1) { \
262 lua_assert(ctype_isinteger(cta->info) && n == 2); /* int64_t. */ \
263 ngpr = (ngpr + 1u) & ~1u; /* Align int64_t to regpair. */ \
264 } \
265 if (ngpr + n <= maxgpr) { \
266 sp = &cts->cb.gpr[ngpr]; \
267 ngpr += n; \
268 goto done; \
269 } \
270 }
271
272#define CALLBACK_HANDLE_RET \
273 if (ctype_isfp(ctr->info) && ctr->size == sizeof(float)) \
274 *(double *)dp = *(float *)dp; /* FPRs always hold doubles. */
229 275
230#else 276#else
231#error "Missing calling convention definitions for this architecture" 277#error "Missing calling convention definitions for this architecture"
@@ -327,14 +373,14 @@ static void callback_conv_result(CTState *cts, lua_State *L, TValue *o)
327#endif 373#endif
328 if (!ctype_isvoid(ctr->info)) { 374 if (!ctype_isvoid(ctr->info)) {
329 uint8_t *dp = (uint8_t *)&cts->cb.gpr[0]; 375 uint8_t *dp = (uint8_t *)&cts->cb.gpr[0];
330#ifdef CALLBACK_HANDLE_RET
331 CALLBACK_HANDLE_RET
332#endif
333#if CCALL_NUM_FPR 376#if CCALL_NUM_FPR
334 if (ctype_isfp(ctr->info)) 377 if (ctype_isfp(ctr->info))
335 dp = (uint8_t *)&cts->cb.fpr[0]; 378 dp = (uint8_t *)&cts->cb.fpr[0];
336#endif 379#endif
337 lj_cconv_ct_tv(cts, ctr, dp, o, 0); 380 lj_cconv_ct_tv(cts, ctr, dp, o, 0);
381#ifdef CALLBACK_HANDLE_RET
382 CALLBACK_HANDLE_RET
383#endif
338 /* Extend returned integers to (at least) 32 bits. */ 384 /* Extend returned integers to (at least) 32 bits. */
339 if (ctype_isinteger_or_bool(ctr->info) && ctr->size < 4) { 385 if (ctype_isinteger_or_bool(ctr->info) && ctr->size < 4) {
340 if (ctr->info & CTF_UNSIGNED) 386 if (ctr->info & CTF_UNSIGNED)
diff --git a/src/lj_errmsg.h b/src/lj_errmsg.h
index e9ad0451..4a4fec68 100644
--- a/src/lj_errmsg.h
+++ b/src/lj_errmsg.h
@@ -161,7 +161,7 @@ ERRDEF(FFI_BADIDX, LUA_QS " cannot be indexed")
161ERRDEF(FFI_WRCONST, "attempt to write to constant location") 161ERRDEF(FFI_WRCONST, "attempt to write to constant location")
162ERRDEF(FFI_NODECL, "missing declaration for symbol " LUA_QS) 162ERRDEF(FFI_NODECL, "missing declaration for symbol " LUA_QS)
163ERRDEF(FFI_BADCBACK, "bad callback") 163ERRDEF(FFI_BADCBACK, "bad callback")
164#if LJ_TARGET_X86ORX64 164#if LJ_TARGET_X86ORX64 || LJ_TARGET_PPC
165ERRDEF(FFI_CBACKOV, "too many callbacks") 165ERRDEF(FFI_CBACKOV, "too many callbacks")
166#else 166#else
167ERRDEF(FFI_CBACKOV, "no support for callbacks (yet)") 167ERRDEF(FFI_CBACKOV, "no support for callbacks (yet)")