aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2011-08-10 21:54:03 +0200
committerMike Pall <mike>2011-08-10 21:56:10 +0200
commitd84207b8b6b906f9ec6eb1861a9319fb574dd1f8 (patch)
tree9642365632ac206e834672e4b7dc81802cdbd2ff
parent5385809d306bb56f2c0efe0940718b5dd1612b24 (diff)
downloadluajit-d84207b8b6b906f9ec6eb1861a9319fb574dd1f8.tar.gz
luajit-d84207b8b6b906f9ec6eb1861a9319fb574dd1f8.tar.bz2
luajit-d84207b8b6b906f9ec6eb1861a9319fb574dd1f8.zip
PPC: Save/restore cr2, cr3 and cr4 when entering/leaving VM.
-rw-r--r--src/buildvm_ppc.dasc50
-rw-r--r--src/buildvm_ppc.h1911
-rw-r--r--src/lj_frame.h14
3 files changed, 1017 insertions, 958 deletions
diff --git a/src/buildvm_ppc.dasc b/src/buildvm_ppc.dasc
index 8fb77489..ad209ce6 100644
--- a/src/buildvm_ppc.dasc
+++ b/src/buildvm_ppc.dasc
@@ -62,26 +62,28 @@
62|.define CRET2, r4 62|.define CRET2, r4
63| 63|
64|// Stack layout while in interpreter. Must match with lj_frame.h. 64|// Stack layout while in interpreter. Must match with lj_frame.h.
65|.define SAVE_LR, 260(sp) 65|.define SAVE_LR, 276(sp)
66|.define CFRAME_SPACE, 256 // Delta for sp. 66|.define CFRAME_SPACE, 272 // Delta for sp.
67|// Back chain for sp: 256(sp) <-- sp entering interpreter 67|// Back chain for sp: 272(sp) <-- sp entering interpreter
68|.define SAVE_GPR_, 184 // .. 184+18*4: 32 bit GPR saves. 68|.define SAVE_FPR_, 128 // .. 128+18*8: 64 bit FPR saves.
69|.define SAVE_FPR_, 40 // .. 40+18*8: 64 bit FPR saves. 69|.define SAVE_GPR_, 56 // .. 56+18*4: 32 bit GPR saves.
70|.define TONUM_LO, 36(sp) 70|.define SAVE_CR, 52(sp) // 32 bit CR save.
71|.define TONUM_HI, 32(sp) 71|.define SAVE_ERRF, 48(sp) // 32 bit C frame info.
72|.define SAVE_ERRF, 28(sp) // 32 bit C frame info. 72|.define SAVE_NRES, 44(sp)
73|.define SAVE_NRES, 24(sp) 73|.define SAVE_CFRAME, 40(sp)
74|.define SAVE_CFRAME, 20(sp) 74|.define SAVE_L, 36(sp)
75|.define SAVE_L, 16(sp) 75|.define SAVE_PC, 32(sp)
76|.define SAVE_MULTRES, 12(sp) 76|.define SAVE_MULTRES, 28(sp)
77|.define SAVE_PC, 8(sp) 77|.define UNUSED1, 24(sp)
78|.define TMPD_LO, 20(sp)
79|.define TMPD_HI, 16(sp)
80|.define TONUM_LO, 12(sp)
81|.define TONUM_HI, 8(sp)
78|// Next frame lr: 4(sp) 82|// Next frame lr: 4(sp)
79|// Back chain for sp: 0(sp) <-- sp while in interpreter 83|// Back chain for sp: 0(sp) <-- sp while in interpreter
80| 84|
81|.define TMPD_LO, SAVE_MULTRES 85|.define TMPD_BLO, 23(sp)
82|.define TMPD_BLO, 15(sp) 86|.define TMPD, TMPD_HI
83|.define TMPD_HI, SAVE_PC
84|.define TMPD, SAVE_PC
85|.define TONUM_D, TONUM_HI 87|.define TONUM_D, TONUM_HI
86| 88|
87|.macro save_, reg 89|.macro save_, reg
@@ -96,16 +98,16 @@
96|.macro saveregs 98|.macro saveregs
97| stwu sp, -CFRAME_SPACE(sp) 99| stwu sp, -CFRAME_SPACE(sp)
98| save_ 14; save_ 15; save_ 16; save_ 17; save_ 18; save_ 19 100| save_ 14; save_ 15; save_ 16; save_ 17; save_ 18; save_ 19
99| mflr r0 101| mflr r0; mfcr r12
100| save_ 20; save_ 21; save_ 22; save_ 23; save_ 24; save_ 25 102| save_ 20; save_ 21; save_ 22; save_ 23; save_ 24; save_ 25
101| stw r0, SAVE_LR 103| stw r0, SAVE_LR; stw r12, SAVE_CR
102| save_ 26; save_ 27; save_ 28; save_ 29; save_ 30; save_ 31 104| save_ 26; save_ 27; save_ 28; save_ 29; save_ 30; save_ 31
103|.endmacro 105|.endmacro
104| 106|
105|.macro restoreregs 107|.macro restoreregs
106| lwz r0, SAVE_LR 108| lwz r0, SAVE_LR; lwz r12, SAVE_CR
107| rest_ 14; rest_ 15; rest_ 16; rest_ 17; rest_ 18; rest_ 19 109| rest_ 14; rest_ 15; rest_ 16; rest_ 17; rest_ 18; rest_ 19
108| mtlr r0 110| mtlr r0; mtcrf 0x38, r12
109| rest_ 20; rest_ 21; rest_ 22; rest_ 23; rest_ 24; rest_ 25 111| rest_ 20; rest_ 21; rest_ 22; rest_ 23; rest_ 24; rest_ 25
110| rest_ 26; rest_ 27; rest_ 28; rest_ 29; rest_ 30; rest_ 31 112| rest_ 26; rest_ 27; rest_ 28; rest_ 29; rest_ 30; rest_ 31
111| addi sp, sp, CFRAME_SPACE 113| addi sp, sp, CFRAME_SPACE
@@ -4518,7 +4520,8 @@ static void emit_asm_debug(BuildCtx *ctx)
4518 "\t.long .Lbegin\n" 4520 "\t.long .Lbegin\n"
4519 "\t.long %d\n" 4521 "\t.long %d\n"
4520 "\t.byte 0xe\n\t.uleb128 %d\n" 4522 "\t.byte 0xe\n\t.uleb128 %d\n"
4521 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n", 4523 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n"
4524 "\t.byte 0x5\n\t.uleb128 70\n\t.uleb128 55\n",
4522 (int)ctx->codesz, CFRAME_SIZE); 4525 (int)ctx->codesz, CFRAME_SIZE);
4523 for (i = 14; i <= 31; i++) 4526 for (i = 14; i <= 31; i++)
4524 fprintf(ctx->fp, 4527 fprintf(ctx->fp,
@@ -4555,7 +4558,8 @@ static void emit_asm_debug(BuildCtx *ctx)
4555 "\t.long %d\n" 4558 "\t.long %d\n"
4556 "\t.uleb128 0\n" /* augmentation length */ 4559 "\t.uleb128 0\n" /* augmentation length */
4557 "\t.byte 0xe\n\t.uleb128 %d\n" 4560 "\t.byte 0xe\n\t.uleb128 %d\n"
4558 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n", 4561 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n"
4562 "\t.byte 0x5\n\t.uleb128 70\n\t.uleb128 55\n",
4559 (int)ctx->codesz, CFRAME_SIZE); 4563 (int)ctx->codesz, CFRAME_SIZE);
4560 for (i = 14; i <= 31; i++) 4564 for (i = 14; i <= 31; i++)
4561 fprintf(ctx->fp, 4565 fprintf(ctx->fp,
diff --git a/src/buildvm_ppc.h b/src/buildvm_ppc.h
index 82f90aae..87a838fd 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[7218] = { 15static const unsigned int build_actionlist[7267] = {
160x00010001, 160x00010001,
170x00060014, 170x00060014,
180x72000000, 180x72000000,
@@ -43,7 +43,7 @@ static const unsigned int build_actionlist[7218] = {
430x350cfff8, 430x350cfff8,
440x91320000, 440x91320000,
450x00098200, 450x00098200,
460x81210018, 460x8121002c,
470x39cefff8, 470x39cefff8,
480x90110000, 480x90110000,
490x00098200, 490x00098200,
@@ -68,12 +68,13 @@ static const unsigned int build_actionlist[7218] = {
680x00098200, 680x00098200,
690x00060019, 690x00060019,
700x00000000, 700x00000000,
710x80010014, 710x80010028,
720x38600000, 720x38600000,
730x90120000, 730x90120000,
740x00098200, 740x00098200,
750x0006001a, 750x0006001a,
760x80010104, 760x80010114,
770x81810034,
770x81c10000, 780x81c10000,
780x00098200, 790x00098200,
790xc9c10000, 800xc9c10000,
@@ -99,6 +100,7 @@ static const unsigned int build_actionlist[7218] = {
990xca610000, 1000xca610000,
1000x00098200, 1010x00098200,
1010x7c0803a6, 1020x7c0803a6,
1030x7d838120,
1020x82810000, 1040x82810000,
1030x00098200, 1050x00098200,
1040xca810000, 1060xca810000,
@@ -148,7 +150,7 @@ static const unsigned int build_actionlist[7218] = {
1480x00098200, 1500x00098200,
1490xcbe10000, 1510xcbe10000,
1500x00098200, 1520x00098200,
1510x38210100, 1530x38210110,
1520x4e800020, 1540x4e800020,
1530x00060010, 1550x00060010,
1540x40810000, 1560x40810000,
@@ -180,7 +182,7 @@ static const unsigned int build_actionlist[7218] = {
1800x7e439378, 1820x7e439378,
1810x48000001, 1830x48000001,
1820x00030000, 1840x00030000,
1830x81210018, 1850x8121002c,
1840x7eacab78, 1860x7eacab78,
1850x55291800, 1870x55291800,
1860x000900a1, 1880x000900a1,
@@ -192,7 +194,7 @@ static const unsigned int build_actionlist[7218] = {
1920x7c611b78, 1940x7c611b78,
1930x7c832378, 1950x7c832378,
1940x0006001c, 1960x0006001c,
1950x82410010, 1970x82410024,
1960x38000000, 1980x38000000,
1970x00098200, 1990x00098200,
1980x81120000, 2000x81120000,
@@ -204,7 +206,7 @@ static const unsigned int build_actionlist[7218] = {
2040x0006001d, 2060x0006001d,
2050x5461003a, 2070x5461003a,
2060x0006001e, 2080x0006001e,
2070x82410010, 2090x82410024,
2080x3ac00000, 2100x3ac00000,
2090x00098200, 2110x00098200,
2100x81d20000, 2120x81d20000,
@@ -213,7 +215,7 @@ static const unsigned int build_actionlist[7218] = {
2130x82320000, 2150x82320000,
2140x00098200, 2160x00098200,
2150x3b000000, 2170x3b000000,
2160x90c10008, 2180x90c10010,
2170x39000000, 2190x39000000,
2180x00098200, 2200x00098200,
2190x60c60004, 2210x60c60004,
@@ -221,10 +223,10 @@ static const unsigned int build_actionlist[7218] = {
2210x00098200, 2230x00098200,
2220x38000000, 2240x38000000,
2230x00098200, 2250x00098200,
2240xc3c10008, 2260xc3c10010,
2250x820efff8, 2270x820efff8,
2260x3a8efff8, 2280x3a8efff8,
2270x90c10008, 2290x90c10010,
2280x3a310000, 2300x3a310000,
2290x00098200, 2310x00098200,
2300x00000000, 2320x00000000,
@@ -232,7 +234,7 @@ static const unsigned int build_actionlist[7218] = {
2320x39800010, 2340x39800010,
2330x90110000, 2350x90110000,
2340x00098200, 2360x00098200,
2350xc3e10008, 2370xc3e10010,
2360x48000000, 2380x48000000,
2370x00050016, 2390x00050016,
2380x0006001f, 2400x0006001f,
@@ -251,7 +253,7 @@ static const unsigned int build_actionlist[7218] = {
2510x568400fe, 2530x568400fe,
2520x000900ab, 2540x000900ab,
2530x0006000c, 2550x0006000c,
2540x92010008, 2560x92010020,
2550x7e439378, 2570x7e439378,
2560x48000001, 2580x48000001,
2570x00030000, 2590x00030000,
@@ -272,7 +274,7 @@ static const unsigned int build_actionlist[7218] = {
2720x7c0903a6, 2740x7c0903a6,
2730x4e800420, 2750x4e800420,
2740x00060021, 2760x00060021,
2750x9421ff00, 2770x9421fef0,
2760x91c10000, 2780x91c10000,
2770x00098200, 2790x00098200,
2780xd9c10000, 2800xd9c10000,
@@ -299,6 +301,7 @@ static const unsigned int build_actionlist[7218] = {
2990xda610000, 3010xda610000,
3000x00098200, 3020x00098200,
3010x7c0802a6, 3030x7c0802a6,
3040x7d800026,
3020x92810000, 3050x92810000,
3030x00098200, 3060x00098200,
3040xda810000, 3070xda810000,
@@ -323,7 +326,8 @@ static const unsigned int build_actionlist[7218] = {
3230x00098200, 3260x00098200,
3240xdb210000, 3270xdb210000,
3250x00098200, 3280x00098200,
3260x90010104, 3290x90010114,
3300x91810034,
3270x93410000, 3310x93410000,
3280x00098200, 3320x00098200,
3290xdb410000, 3330xdb410000,
@@ -355,20 +359,20 @@ static const unsigned int build_actionlist[7218] = {
3550x7c8e2378, 3590x7c8e2378,
3560x89120000, 3600x89120000,
3570x00098200, 3610x00098200,
3580x92410010, 3620x92410024,
3590x3a000000, 3630x3a000000,
3600x00098200, 3640x00098200,
3610x38010000, 3650x38010000,
3620x00098200, 3660x00098200,
3630x3a310000, 3670x3a310000,
3640x00098200, 3680x00098200,
3650x90a10018, 3690x90a1002c,
3660x28080000, 3700x28080000,
3670x90a1001c, 3710x90a10030,
3680x90120000, 3720x90120000,
3690x00098200, 3730x00098200,
3700x90a10014, 3740x90a10028,
3710x90610008, 3750x90610020,
3720x41820000, 3760x41820000,
3730x00050803, 3770x00050803,
3740x7dd47378, 3780x7dd47378,
@@ -383,20 +387,20 @@ static const unsigned int build_actionlist[7218] = {
3830x7d8e4050, 3870x7d8e4050,
3840x98b20000, 3880x98b20000,
3850x00098200, 3890x00098200,
3860x90c10008, 3900x90c10010,
3870x72000000, 3910x72000000,
3880x00090200, 3920x00090200,
3890x60c60004, 3930x60c60004,
3900xc3c10008, 3940xc3c10010,
3910x3b000000, 3950x3b000000,
3920x90c10008, 3960x90c10010,
3930x398c0008, 3970x398c0008,
3940x3c004338, 3980x3c004338,
3950x7d936378, 3990x7d936378,
3960x90010020, 4000x90010008,
3970x38000000, 4010x38000000,
3980x00098200, 4020x00098200,
3990xc3e10008, 4030xc3e10010,
4000x3ae00000, 4040x3ae00000,
4010x00098200, 4050x00098200,
4020x90110000, 4060x90110000,
@@ -407,7 +411,7 @@ static const unsigned int build_actionlist[7218] = {
4070x48000000, 4110x48000000,
4080x00050018, 4120x00050018,
4090x00060022, 4130x00060022,
4100x9421ff00, 4140x9421fef0,
4110x91c10000, 4150x91c10000,
4120x00098200, 4160x00098200,
4130xd9c10000, 4170xd9c10000,
@@ -433,6 +437,7 @@ static const unsigned int build_actionlist[7218] = {
4330xda610000, 4370xda610000,
4340x00098200, 4380x00098200,
4350x7c0802a6, 4390x7c0802a6,
4400x7d800026,
4360x92810000, 4410x92810000,
4370x00098200, 4420x00098200,
4380xda810000, 4430xda810000,
@@ -458,7 +463,8 @@ static const unsigned int build_actionlist[7218] = {
4580x00098200, 4630x00098200,
4590xdb210000, 4640xdb210000,
4600x00098200, 4650x00098200,
4610x90010104, 4660x90010114,
4670x91810034,
4620x93410000, 4680x93410000,
4630x00098200, 4690x00098200,
4640xdb410000, 4700xdb410000,
@@ -485,11 +491,11 @@ static const unsigned int build_actionlist[7218] = {
4850x00098200, 4910x00098200,
4860x3a000000, 4920x3a000000,
4870x00098200, 4930x00098200,
4880x90c1001c, 4940x90c10030,
4890x48000000, 4950x48000000,
4900x00050001, 4960x00050001,
4910x00060023, 4970x00060023,
4920x9421ff00, 4980x9421fef0,
4930x91c10000, 4990x91c10000,
4940x00098200, 5000x00098200,
4950xd9c10000, 5010xd9c10000,
@@ -516,6 +522,7 @@ static const unsigned int build_actionlist[7218] = {
5160xda610000, 5220xda610000,
5170x00098200, 5230x00098200,
5180x7c0802a6, 5240x7c0802a6,
5250x7d800026,
5190x92810000, 5260x92810000,
5200x00098200, 5270x00098200,
5210xda810000, 5280xda810000,
@@ -541,7 +548,8 @@ static const unsigned int build_actionlist[7218] = {
5410xdb210000, 5480xdb210000,
5420x00098200, 5490x00098200,
5430x00000000, 5500x00000000,
5440x90010104, 5510x90010114,
5520x91810034,
5450x93410000, 5530x93410000,
5460x00098200, 5540x00098200,
5470xdb410000, 5550xdb410000,
@@ -571,16 +579,16 @@ static const unsigned int build_actionlist[7218] = {
5710x0006000b, 5790x0006000b,
5720x81030000, 5800x81030000,
5730x00098200, 5810x00098200,
5740x90a10018, 5820x90a1002c,
5750x7c721b78, 5830x7c721b78,
5760x90610010, 5840x90610024,
5770x7c8e2378, 5850x7c8e2378,
5780x90320000, 5860x90320000,
5790x00098200, 5870x00098200,
5800x82320000, 5880x82320000,
5810x00098200, 5890x00098200,
5820x90610008, 5900x90610020,
5830x91010014, 5910x91010028,
5840x3a310000, 5920x3a310000,
5850x00098200, 5930x00098200,
5860x0006000d, 5940x0006000d,
@@ -593,18 +601,18 @@ static const unsigned int build_actionlist[7218] = {
5930x00000000, 6010x00000000,
5940x3cc059c0, 6020x3cc059c0,
5950x7e107214, 6030x7e107214,
5960x90c10008, 6040x90c10010,
5970x3b000000, 6050x3b000000,
5980x60c60004, 6060x60c60004,
5990xc3c10008, 6070xc3c10010,
6000x7e098050, 6080x7e098050,
6010x90c10008, 6090x90c10010,
6020x3c004338, 6100x3c004338,
6030x7d6e4050, 6110x7d6e4050,
6040x90010020, 6120x90010008,
6050x38000000, 6130x38000000,
6060x00098200, 6140x00098200,
6070xc3e10008, 6150xc3e10010,
6080x3ae00000, 6160x3ae00000,
6090x00098200, 6170x00098200,
6100x90110000, 6180x90110000,
@@ -629,7 +637,7 @@ static const unsigned int build_actionlist[7218] = {
6290x7c0903a6, 6370x7c0903a6,
6300x4e800420, 6380x4e800420,
6310x00060027, 6390x00060027,
6320x9421ff00, 6400x9421fef0,
6330x91c10000, 6410x91c10000,
6340x00098200, 6420x00098200,
6350xd9c10000, 6430xd9c10000,
@@ -655,6 +663,7 @@ static const unsigned int build_actionlist[7218] = {
6550xda610000, 6630xda610000,
6560x00098200, 6640x00098200,
6570x7c0802a6, 6650x7c0802a6,
6660x7d800026,
6580x92810000, 6670x92810000,
6590x00098200, 6680x00098200,
6600x00000000, 6690x00000000,
@@ -680,7 +689,8 @@ static const unsigned int build_actionlist[7218] = {
6800x00098200, 6890x00098200,
6810xdb210000, 6900xdb210000,
6820x00098200, 6910x00098200,
6830x90010104, 6920x90010114,
6930x91810034,
6840x93410000, 6940x93410000,
6850x00098200, 6950x00098200,
6860xdb410000, 6960xdb410000,
@@ -709,19 +719,19 @@ static const unsigned int build_actionlist[7218] = {
7090x7c721b78, 7190x7c721b78,
7100x80030000, 7200x80030000,
7110x00098200, 7210x00098200,
7120x90610010, 7220x90610024,
7130x81120000, 7230x81120000,
7140x00098200, 7240x00098200,
7150x90610008, 7250x90610020,
7160x7c080050, 7260x7c080050,
7170x81120000, 7270x81120000,
7180x00098200, 7280x00098200,
7190x90320000, 7290x90320000,
7200x00098200, 7300x00098200,
7210x39200000, 7310x39200000,
7220x90010018, 7320x9001002c,
7230x9121001c, 7330x91210030,
7240x91010014, 7340x91010028,
7250x7cc903a6, 7350x7cc903a6,
7260x4e800421, 7360x4e800421,
7270x7c6e1b79, 7370x7c6e1b79,
@@ -803,8 +813,8 @@ static const unsigned int build_actionlist[7218] = {
8030x00050001, 8130x00050001,
8040x0006002e, 8140x0006002e,
8050x00000000, 8150x00000000,
8060x90010024, 8160x9001000c,
8070xc8010020, 8170xc8010008,
8080xfc00f028, 8180xfc00f028,
8090x00000000, 8190x00000000,
8100x54ea5d78, 8200x54ea5d78,
@@ -828,7 +838,7 @@ static const unsigned int build_actionlist[7218] = {
8280x91d20000, 8380x91d20000,
8290x00098200, 8390x00098200,
8300x7e439378, 8400x7e439378,
8310x92010008, 8410x92010020,
8320x48000001, 8420x48000001,
8330x00030001, 8430x00030001,
8340x28030000, 8440x28030000,
@@ -839,12 +849,12 @@ static const unsigned int build_actionlist[7218] = {
8390x3a100004, 8490x3a100004,
8400x7c0ea5ae, 8500x7c0ea5ae,
8410x54e815ba, 8510x54e815ba,
8520x7c11402e,
8530x7c0903a6,
8420x54ea5d78, 8540x54ea5d78,
8430x54ec9b78, 8550x54ec9b78,
8440x7c11402e,
8450x54f4dd78, 8560x54f4dd78,
8460x54eb9d78, 8570x54eb9d78,
8470x7c0903a6,
8480x4e800420, 8580x4e800420,
8490x0006000d, 8590x0006000d,
8500x210e0000, 8600x210e0000,
@@ -885,8 +895,8 @@ static const unsigned int build_actionlist[7218] = {
8850x00050001, 8950x00050001,
8860x00060032, 8960x00060032,
8870x00000000, 8970x00000000,
8880x90010024, 8980x9001000c,
8890xc8010020, 8990xc8010008,
8900xfc00f028, 9000xfc00f028,
8910x00000000, 9010x00000000,
8920x54ea5d78, 9020x54ea5d78,
@@ -910,7 +920,7 @@ static const unsigned int build_actionlist[7218] = {
9100x91d20000, 9200x91d20000,
9110x00098200, 9210x00098200,
9120x7e439378, 9220x7e439378,
9130x92010008, 9230x92010020,
9140x48000001, 9240x48000001,
9150x00030002, 9250x00030002,
9160x28030000, 9260x28030000,
@@ -921,12 +931,12 @@ static const unsigned int build_actionlist[7218] = {
9210x3a100004, 9310x3a100004,
9220xd8030000, 9320xd8030000,
9230x54e815ba, 9330x54e815ba,
9340x7c11402e,
9350x7c0903a6,
9240x54ea5d78, 9360x54ea5d78,
9250x54ec9b78, 9370x54ec9b78,
9260x7c11402e,
9270x54f4dd78, 9380x54f4dd78,
9280x54eb9d78, 9390x54eb9d78,
9290x7c0903a6,
9300x4e800420, 9400x4e800420,
9310x0006000d, 9410x0006000d,
9320x210e0000, 9420x210e0000,
@@ -948,7 +958,7 @@ static const unsigned int build_actionlist[7218] = {
9480x00000000, 9580x00000000,
9490x7c8ea214, 9590x7c8ea214,
9500x00000000, 9600x00000000,
9510x92010008, 9610x92010020,
9520x00000000, 9620x00000000,
9530x7d856378, 9630x7d856378,
9540x00000000, 9640x00000000,
@@ -976,12 +986,12 @@ static const unsigned int build_actionlist[7218] = {
9760x80f00000, 9860x80f00000,
9770x3a100004, 9870x3a100004,
9780x54e815ba, 9880x54e815ba,
9890x7c11402e,
9900x7c0903a6,
9790x54ea5d78, 9910x54ea5d78,
9800x54ec9b78, 9920x54ec9b78,
9810x7c11402e,
9820x54f4dd78, 9930x54f4dd78,
9830x54eb9d78, 9940x54eb9d78,
9840x7c0903a6,
9850x4e800420, 9950x4e800420,
9860x00060036, 9960x00060036,
9870x80f0fffc, 9970x80f0fffc,
@@ -1010,7 +1020,7 @@ static const unsigned int build_actionlist[7218] = {
10100x91d20000, 10200x91d20000,
10110x00098200, 10210x00098200,
10120x7e439378, 10220x7e439378,
10130x92010008, 10230x92010020,
10140x48000001, 10240x48000001,
10150x00030004, 10250x00030004,
10160x48000000, 10260x48000000,
@@ -1022,7 +1032,7 @@ static const unsigned int build_actionlist[7218] = {
10220x91d20000, 10320x91d20000,
10230x00098200, 10330x00098200,
10240x7e439378, 10340x7e439378,
10250x92010008, 10350x92010020,
10260x48000001, 10360x48000001,
10270x00030005, 10370x00030005,
10280x48000000, 10380x48000000,
@@ -1068,7 +1078,7 @@ static const unsigned int build_actionlist[7218] = {
10680x91d20000, 10780x91d20000,
10690x00098200, 10790x00098200,
10700x7e439378, 10800x7e439378,
10710x92010008, 10810x92010020,
10720x54e7063e, 10820x54e7063e,
10730x48000001, 10830x48000001,
10740x00030006, 10840x00030006,
@@ -1093,7 +1103,7 @@ static const unsigned int build_actionlist[7218] = {
10930x91d20000, 11030x91d20000,
10940x00098200, 11040x00098200,
10950x7e439378, 11050x7e439378,
10960x92010008, 11060x92010020,
10970x48000001, 11070x48000001,
10980x00030007, 11080x00030007,
10990x00000000, 11090x00000000,
@@ -1112,7 +1122,7 @@ static const unsigned int build_actionlist[7218] = {
11120x91320000, 11220x91320000,
11130x00098200, 11230x00098200,
11140x388efff8, 11240x388efff8,
11150x92010008, 11250x92010020,
11160x7cae5a14, 11260x7cae5a14,
11170x7d755b78, 11270x7d755b78,
11180x48000001, 11280x48000001,
@@ -1135,7 +1145,7 @@ static const unsigned int build_actionlist[7218] = {
11350x91d20000, 11450x91d20000,
11360x00098200, 11460x00098200,
11370x3894fff8, 11470x3894fff8,
11380x92010008, 11480x92010020,
11390x7cb45a14, 11490x7cb45a14,
11400x7d755b78, 11500x7d755b78,
11410x48000001, 11510x48000001,
@@ -1150,7 +1160,7 @@ static const unsigned int build_actionlist[7218] = {
11500x91d20000, 11600x91d20000,
11510x00098200, 11610x00098200,
11520x7e84a378, 11620x7e84a378,
11530x92010008, 11630x92010020,
11540x7cf53b78, 11640x7cf53b78,
11550x48000001, 11650x48000001,
11560x00030009, 11660x00030009,
@@ -1389,7 +1399,7 @@ static const unsigned int build_actionlist[7218] = {
13890x91d20000, 13990x91d20000,
13900x00098200, 14000x00098200,
13910x4c413342, 14010x4c413342,
13920x92010008, 14020x92010020,
13930x41820000, 14030x41820000,
13940x00050848, 14040x00050848,
13950x00000000, 14050x00000000,
@@ -1431,7 +1441,7 @@ static const unsigned int build_actionlist[7218] = {
14310x91d20000, 14410x91d20000,
14320x00098200, 14420x00098200,
14330x38ae0008, 14430x38ae0008,
14340x92010008, 14440x92010020,
14350x48000001, 14450x48000001,
14360x0003000d, 14460x0003000d,
14370x28030000, 14470x28030000,
@@ -1502,16 +1512,16 @@ static const unsigned int build_actionlist[7218] = {
15020x00050848, 15120x00050848,
15030x00000000, 15130x00000000,
15040x3c003ff0, 15140x3c003ff0,
15050x9301000c, 15150x93010014,
15060x40820000, 15160x40820000,
15070x00050848, 15170x00050848,
15080x90010008, 15180x90010010,
15090x40840000, 15190x40840000,
15100x00050848, 15200x00050848,
15110xc8210008, 15210xc8210010,
15120xfc00101e, 15220xfc00101e,
15130xd8010008, 15230xd8010010,
15140x8121000c, 15240x81210014,
15150x00000000, 15250x00000000,
15160x80030000, 15260x80030000,
15170x00098200, 15270x00098200,
@@ -1675,7 +1685,7 @@ static const unsigned int build_actionlist[7218] = {
16750x4f3e1102, 16850x4f3e1102,
16760x7c890040, 16860x7c890040,
16770x4f18cb82, 16870x4f18cb82,
16780x92010008, 16880x92010020,
16790x4f182b82, 16890x4f182b82,
16800x91d20000, 16900x91d20000,
16810x00098200, 16910x00098200,
@@ -1751,7 +1761,7 @@ static const unsigned int build_actionlist[7218] = {
17510x910efff8, 17610x910efff8,
17520x398c0010, 17620x398c0010,
17530x00060011, 17630x00060011,
17540x92010008, 17640x92010020,
17550x7d936378, 17650x7d936378,
17560x41820000, 17660x41820000,
17570x00050817, 17670x00050817,
@@ -1806,7 +1816,7 @@ static const unsigned int build_actionlist[7218] = {
18060x4f3e1102, 18160x4f3e1102,
18070x7c890040, 18170x7c890040,
18080x4f18cb82, 18180x4f18cb82,
18090x92010008, 18190x92010020,
18100x4f182b82, 18200x4f182b82,
18110x91d20000, 18210x91d20000,
18120x00098200, 18220x00098200,
@@ -1876,7 +1886,7 @@ static const unsigned int build_actionlist[7218] = {
18760x7dd47378, 18860x7dd47378,
18770x398c0008, 18870x398c0008,
18780x00060011, 18880x00060011,
18790x92010008, 18890x92010020,
18800x7d936378, 18900x7d936378,
18810x41820000, 18910x41820000,
18820x00050817, 18920x00050817,
@@ -1974,12 +1984,12 @@ static const unsigned int build_actionlist[7218] = {
19740x3a100004, 19840x3a100004,
19750x7dc0a050, 19850x7dc0a050,
19760x54e815ba, 19860x54e815ba,
19870x7c11402e,
19880x7c0903a6,
19770x54ea5d78, 19890x54ea5d78,
19780x54ec9b78, 19900x54ec9b78,
19790x7c11402e,
19800x54f4dd78, 19910x54f4dd78,
19810x54eb9d78, 19920x54eb9d78,
19820x7c0903a6,
19830x4e800420, 19930x4e800420,
19840x00060010, 19940x00060010,
19850x390cfff8, 19950x390cfff8,
@@ -2424,8 +2434,8 @@ static const unsigned int build_actionlist[7218] = {
24240x40800000, 24340x40800000,
24250x00050848, 24350x00050848,
24260xfc40101e, 24360xfc40101e,
24270xd8410008, 24370xd8410010,
24280x8061000c, 24380x80610014,
24290x00000000, 24390x00000000,
24300x48000001, 24400x48000001,
24310x00030022, 24410x00030022,
@@ -2450,8 +2460,8 @@ static const unsigned int build_actionlist[7218] = {
24500x3a8efff8, 24600x3a8efff8,
24510x00000000, 24610x00000000,
24520x6d088000, 24620x6d088000,
24530x91010024, 24630x9101000c,
24540xc8410020, 24640xc8410008,
24550xfc42f828, 24650xfc42f828,
24560x00000000, 24660x00000000,
24570xd8340000, 24670xd8340000,
@@ -2518,8 +2528,8 @@ static const unsigned int build_actionlist[7218] = {
25180x40800000, 25280x40800000,
25190x00050848, 25290x00050848,
25200x6c638000, 25300x6c638000,
25210x90610024, 25310x9061000c,
25220xc8210020, 25320xc8210008,
25230xfc21f828, 25330xfc21f828,
25240xc8480000, 25340xc8480000,
25250x48000000, 25350x48000000,
@@ -2548,8 +2558,8 @@ static const unsigned int build_actionlist[7218] = {
25480x40820000, 25580x40820000,
25490x00050848, 25590x00050848,
25500x6c848000, 25600x6c848000,
25510x90810024, 25610x9081000c,
25520xc8410020, 25620xc8410008,
25530xfc42f828, 25630xfc42f828,
25540x48000000, 25640x48000000,
25550x00050010, 25650x00050010,
@@ -2612,8 +2622,8 @@ static const unsigned int build_actionlist[7218] = {
26120x40800000, 26220x40800000,
26130x00050848, 26230x00050848,
26140x6c638000, 26240x6c638000,
26150x90610024, 26250x9061000c,
26160xc8210020, 26260xc8210008,
26170xfc21f828, 26270xfc21f828,
26180xc8480000, 26280xc8480000,
26190x48000000, 26290x48000000,
@@ -2642,8 +2652,8 @@ static const unsigned int build_actionlist[7218] = {
26420x40820000, 26520x40820000,
26430x00050848, 26530x00050848,
26440x6c848000, 26540x6c848000,
26450x90810024, 26550x9081000c,
26460xc8410020, 26560xc8410008,
26470xfc42f828, 26570xfc42f828,
26480x48000000, 26580x48000000,
26490x00050010, 26590x00050010,
@@ -2716,9 +2726,9 @@ static const unsigned int build_actionlist[7218] = {
27160x00098200, 27260x00098200,
27170x30c0ffff, 27270x30c0ffff,
27180x7d860110, 27280x7d860110,
27190x91010024, 27290x9101000c,
27200x398c0001, 27300x398c0001,
27210xc8010020, 27310xc8010008,
27220x3a8efff8, 27320x3a8efff8,
27230x820efff8, 27330x820efff8,
27240xfc00f028, 27340xfc00f028,
@@ -2754,9 +2764,9 @@ static const unsigned int build_actionlist[7218] = {
27540x40800000, 27640x40800000,
27550x00050848, 27650x00050848,
27560xfc20081e, 27660xfc20081e,
27570xd8210008, 27670xd8210010,
27580x8001000c, 27680x80010014,
27590x3881000f, 27690x38810017,
27600x00000000, 27700x00000000,
27610x38a00001, 27710x38a00001,
27620x280000ff, 27720x280000ff,
@@ -2766,7 +2776,7 @@ static const unsigned int build_actionlist[7218] = {
27660x7e439378, 27760x7e439378,
27670x91d20000, 27770x91d20000,
27680x00098200, 27780x00098200,
27690x92010008, 27790x92010020,
27700x48000001, 27800x48000001,
27710x00030025, 27810x00030025,
27720x81d20000, 27820x81d20000,
@@ -2815,8 +2825,8 @@ static const unsigned int build_actionlist[7218] = {
28150x40800000, 28250x40800000,
28160x00050848, 28260x00050848,
28170xfc00001e, 28270xfc00001e,
28180xd8010008, 28280xd8010010,
28190x8121000c, 28290x81210014,
28200x0006000b, 28300x0006000b,
28210x7c04b040, 28310x7c04b040,
28220x40800000, 28320x40800000,
@@ -2828,8 +2838,8 @@ static const unsigned int build_actionlist[7218] = {
28280x00050848, 28380x00050848,
28290x00000000, 28390x00000000,
28300xfc20081e, 28400xfc20081e,
28310xd8210008, 28410xd8210010,
28320x8101000c, 28420x81010014,
28330x00000000, 28430x00000000,
28340x80030000, 28440x80030000,
28350x00098200, 28450x00098200,
@@ -2900,8 +2910,8 @@ static const unsigned int build_actionlist[7218] = {
29000x40800000, 29100x40800000,
29010x00050848, 29110x00050848,
29020xfc40101e, 29120xfc40101e,
29030xd8410008, 29130xd8410010,
29040x80a1000c, 29140x80a10014,
29050x00000000, 29150x00000000,
29060x80030000, 29160x80030000,
29070x00098200, 29170x00098200,
@@ -3103,8 +3113,8 @@ static const unsigned int build_actionlist[7218] = {
31030x40800000, 31130x40800000,
31040x00050848, 31140x00050848,
31050xfc21f02a, 31150xfc21f02a,
31060xd8210008, 31160xd8210010,
31070x8061000c, 31170x80610014,
31080x00000000, 31180x00000000,
31090x390e0008, 31190x390e0008,
31100x7d2e5a14, 31200x7d2e5a14,
@@ -3126,8 +3136,8 @@ static const unsigned int build_actionlist[7218] = {
31260xfc21f02a, 31360xfc21f02a,
31270x40800000, 31370x40800000,
31280x00050848, 31380x00050848,
31290xd8210008, 31390xd8210010,
31300x8081000c, 31400x80810014,
31310x00000000, 31410x00000000,
31320x7c632038, 31420x7c632038,
31330x39080008, 31430x39080008,
@@ -3154,8 +3164,8 @@ static const unsigned int build_actionlist[7218] = {
31540x40800000, 31640x40800000,
31550x00050848, 31650x00050848,
31560xfc21f02a, 31660xfc21f02a,
31570xd8210008, 31670xd8210010,
31580x8061000c, 31680x80610014,
31590x00000000, 31690x00000000,
31600x390e0008, 31700x390e0008,
31610x7d2e5a14, 31710x7d2e5a14,
@@ -3177,8 +3187,8 @@ static const unsigned int build_actionlist[7218] = {
31770xfc21f02a, 31870xfc21f02a,
31780x40800000, 31880x40800000,
31790x00050848, 31890x00050848,
31800xd8210008, 31900xd8210010,
31810x8081000c, 31910x80810014,
31820x00000000, 31920x00000000,
31830x7c632378, 31930x7c632378,
31840x39080008, 31940x39080008,
@@ -3205,8 +3215,8 @@ static const unsigned int build_actionlist[7218] = {
32050x40800000, 32150x40800000,
32060x00050848, 32160x00050848,
32070xfc21f02a, 32170xfc21f02a,
32080xd8210008, 32180xd8210010,
32090x8061000c, 32190x80610014,
32100x00000000, 32200x00000000,
32110x390e0008, 32210x390e0008,
32120x7d2e5a14, 32220x7d2e5a14,
@@ -3228,8 +3238,8 @@ static const unsigned int build_actionlist[7218] = {
32280xfc21f02a, 32380xfc21f02a,
32290x40800000, 32390x40800000,
32300x00050848, 32400x00050848,
32310xd8210008, 32410xd8210010,
32320x8081000c, 32420x80810014,
32330x00000000, 32430x00000000,
32340x7c632278, 32440x7c632278,
32350x39080008, 32450x39080008,
@@ -3256,8 +3266,8 @@ static const unsigned int build_actionlist[7218] = {
32560x40800000, 32660x40800000,
32570x00050848, 32670x00050848,
32580xfc21f02a, 32680xfc21f02a,
32590xd8210008, 32690xd8210010,
32600x8061000c, 32700x80610014,
32610x00000000, 32710x00000000,
32620x5460403e, 32720x5460403e,
32630x5060c00e, 32730x5060c00e,
@@ -3286,8 +3296,8 @@ static const unsigned int build_actionlist[7218] = {
32860x40800000, 32960x40800000,
32870x00050848, 32970x00050848,
32880xfc21f02a, 32980xfc21f02a,
32890xd8210008, 32990xd8210010,
32900x8061000c, 33000x80610014,
32910x00000000, 33010x00000000,
32920x7c6318f8, 33020x7c6318f8,
32930x48000000, 33030x48000000,
@@ -3324,10 +3334,10 @@ static const unsigned int build_actionlist[7218] = {
33240x00050848, 33340x00050848,
33250xfc21f02a, 33350xfc21f02a,
33260xfc42f02a, 33360xfc42f02a,
33270xd8210008, 33370xd8210010,
33280x8061000c, 33380x80610014,
33290xd8410008, 33390xd8410010,
33300x8081000c, 33400x80810014,
33310x00000000, 33410x00000000,
33320x548406fe, 33420x548406fe,
33330x7c632030, 33430x7c632030,
@@ -3365,10 +3375,10 @@ static const unsigned int build_actionlist[7218] = {
33650x00050848, 33750x00050848,
33660xfc21f02a, 33760xfc21f02a,
33670xfc42f02a, 33770xfc42f02a,
33680xd8210008, 33780xd8210010,
33690x8061000c, 33790x80610014,
33700xd8410008, 33800xd8410010,
33710x8081000c, 33810x80810014,
33720x00000000, 33820x00000000,
33730x548406fe, 33830x548406fe,
33740x7c632430, 33840x7c632430,
@@ -3406,10 +3416,10 @@ static const unsigned int build_actionlist[7218] = {
34060x00050848, 34160x00050848,
34070xfc21f02a, 34170xfc21f02a,
34080xfc42f02a, 34180xfc42f02a,
34090xd8210008, 34190xd8210010,
34100x8061000c, 34200x80610014,
34110xd8410008, 34210xd8410010,
34120x8081000c, 34220x80810014,
34130x00000000, 34230x00000000,
34140x548406fe, 34240x548406fe,
34150x7c632630, 34250x7c632630,
@@ -3447,10 +3457,10 @@ static const unsigned int build_actionlist[7218] = {
34470x00050848, 34570x00050848,
34480xfc21f02a, 34580xfc21f02a,
34490xfc42f02a, 34590xfc42f02a,
34500xd8210008, 34600xd8210010,
34510x8061000c, 34610x80610014,
34520xd8410008, 34620xd8410010,
34530x8081000c, 34630x80810014,
34540x00000000, 34640x00000000,
34550x5c63203e, 34650x5c63203e,
34560x48000000, 34660x48000000,
@@ -3487,10 +3497,10 @@ static const unsigned int build_actionlist[7218] = {
34870x00050848, 34970x00050848,
34880xfc21f02a, 34980xfc21f02a,
34890xfc42f02a, 34990xfc42f02a,
34900xd8210008, 35000xd8210010,
34910x8061000c, 35010x80610014,
34920xd8410008, 35020xd8410010,
34930x8081000c, 35030x80810014,
34940x00000000, 35040x00000000,
34950x7c8400d0, 35050x7c8400d0,
34960x5c63203e, 35060x5c63203e,
@@ -3517,16 +3527,16 @@ static const unsigned int build_actionlist[7218] = {
35170x40800000, 35270x40800000,
35180x00050848, 35280x00050848,
35190xfc21f02a, 35290xfc21f02a,
35200xd8210008, 35300xd8210010,
35210x8061000c, 35310x80610014,
35220x00000000, 35320x00000000,
35230x48000000, 35330x48000000,
35240x0005005d, 35340x0005005d,
35250x00000000, 35350x00000000,
35260x0006005d, 35360x0006005d,
35270x6c638000, 35370x6c638000,
35280x90610024, 35380x9061000c,
35290xc8210020, 35390xc8210008,
35300xfc21f828, 35400xfc21f828,
35310x00000000, 35410x00000000,
35320x0006004b, 35420x0006004b,
@@ -3541,8 +3551,8 @@ static const unsigned int build_actionlist[7218] = {
35410x41810000, 35510x41810000,
35420x00050848, 35520x00050848,
35430xfc21f02a, 35530xfc21f02a,
35440xd8210008, 35540xd8210010,
35450x8061000c, 35550x80610014,
35460x4e800020, 35560x4e800020,
35470x00000000, 35570x00000000,
35480x00060084, 35580x00060084,
@@ -3551,8 +3561,8 @@ static const unsigned int build_actionlist[7218] = {
35510x41810000, 35610x41810000,
35520x00050848, 35620x00050848,
35530xfc21f02a, 35630xfc21f02a,
35540xd8210008, 35640xd8210010,
35550x8081000c, 35650x80810014,
35560x4e800020, 35660x4e800020,
35570x00000000, 35670x00000000,
35580x00060048, 35680x00060048,
@@ -3564,7 +3574,7 @@ static const unsigned int build_actionlist[7218] = {
35640x00098200, 35740x00098200,
35650x81320000, 35750x81320000,
35660x00098200, 35760x00098200,
35670x92010008, 35770x92010020,
35680x7c004840, 35780x7c004840,
35690x91d20000, 35790x91d20000,
35700x00098200, 35800x00098200,
@@ -3628,7 +3638,7 @@ static const unsigned int build_actionlist[7218] = {
36280x91d20000, 36380x91d20000,
36290x00098200, 36390x00098200,
36300x7c0e5a14, 36400x7c0e5a14,
36310x92010008, 36410x92010020,
36320x90120000, 36420x90120000,
36330x00098200, 36430x00098200,
36340x7e439378, 36440x7e439378,
@@ -3682,7 +3692,7 @@ static const unsigned int build_actionlist[7218] = {
36820x0005080f, 36920x0005080f,
36830x0006000b, 36930x0006000b,
36840x7e439378, 36940x7e439378,
36850x9261000c, 36950x9261001c,
36860x7e048378, 36960x7e048378,
36870x91d20000, 36970x91d20000,
36880x00098200, 36980x00098200,
@@ -3725,7 +3735,7 @@ static const unsigned int build_actionlist[7218] = {
37250x0006000b, 37350x0006000b,
37260x00000000, 37360x00000000,
37270x7c0e5a14, 37370x7c0e5a14,
37280x92010008, 37380x92010020,
37290x7e439378, 37390x7e439378,
37300x91d20000, 37400x91d20000,
37310x00098200, 37410x00098200,
@@ -3738,7 +3748,7 @@ static const unsigned int build_actionlist[7218] = {
37380x00098200, 37480x00098200,
37390x80120000, 37490x80120000,
37400x00098200, 37500x00098200,
37410x93010008, 37510x93010020,
37420x7d6e0050, 37520x7d6e0050,
37430x7e8ea214, 37530x7e8ea214,
37440x814efffc, 37540x814efffc,
@@ -3970,12 +3980,12 @@ static const unsigned int build_actionlist[7218] = {
39700x80f00000, 39800x80f00000,
39710x3a100004, 39810x3a100004,
39720x54e815ba, 39820x54e815ba,
39830x7c11402e,
39840x7c0903a6,
39730x54ea5d78, 39850x54ea5d78,
39740x54ec9b78, 39860x54ec9b78,
39750x7c11402e,
39760x54f4dd78, 39870x54f4dd78,
39770x54eb9d78, 39880x54eb9d78,
39780x7c0903a6,
39790x4e800420, 39890x4e800420,
39800x00060011, 39900x00060011,
39810x41810000, 39910x41810000,
@@ -3986,8 +3996,8 @@ static const unsigned int build_actionlist[7218] = {
39860x41840000, 39960x41840000,
39870x00050804, 39970x00050804,
39880x6ca58000, 39980x6ca58000,
39890x90a10024, 39990x90a1000c,
39900xc8210020, 40000xc8210008,
39910xfc21f828, 40010xfc21f828,
39920x48000000, 40020x48000000,
39930x00050005, 40030x00050005,
@@ -3995,8 +4005,8 @@ static const unsigned int build_actionlist[7218] = {
39950x41850000, 40050x41850000,
39960x00050834, 40060x00050834,
39970x6c848000, 40070x6c848000,
39980x90810024, 40080x9081000c,
39990xc8010020, 40090xc8010008,
40000xfc00f828, 40100xfc00f828,
40010x0006000e, 40110x0006000e,
40020xc82c0000, 40120xc82c0000,
@@ -4056,12 +4066,12 @@ static const unsigned int build_actionlist[7218] = {
40560x80f00000, 40660x80f00000,
40570x3a100004, 40670x3a100004,
40580x54e815ba, 40680x54e815ba,
40690x7c11402e,
40700x7c0903a6,
40590x54ea5d78, 40710x54ea5d78,
40600x54ec9b78, 40720x54ec9b78,
40610x7c11402e,
40620x54f4dd78, 40730x54f4dd78,
40630x54eb9d78, 40740x54eb9d78,
40640x7c0903a6,
40650x4e800420, 40750x4e800420,
40660x00000000, 40760x00000000,
40670x7c14706e, 40770x7c14706e,
@@ -4112,12 +4122,12 @@ static const unsigned int build_actionlist[7218] = {
41120x80f00000, 41220x80f00000,
41130x3a100004, 41230x3a100004,
41140x54e815ba, 41240x54e815ba,
41250x7c11402e,
41260x7c0903a6,
41150x54ea5d78, 41270x54ea5d78,
41160x54ec9b78, 41280x54ec9b78,
41170x7c11402e,
41180x54f4dd78, 41290x54f4dd78,
41190x54eb9d78, 41300x54eb9d78,
41200x7c0903a6,
41210x4e800420, 41310x4e800420,
41220x00000000, 41320x00000000,
41230x0006000f, 41330x0006000f,
@@ -4167,12 +4177,12 @@ static const unsigned int build_actionlist[7218] = {
41670x80f00000, 41770x80f00000,
41680x3a100004, 41780x3a100004,
41690x54e815ba, 41790x54e815ba,
41800x7c11402e,
41810x7c0903a6,
41700x54ea5d78, 41820x54ea5d78,
41710x54ec9b78, 41830x54ec9b78,
41720x7c11402e,
41730x54f4dd78, 41840x54f4dd78,
41740x54eb9d78, 41850x54eb9d78,
41750x7c0903a6,
41760x4e800420, 41860x4e800420,
41770x0006000c, 41870x0006000c,
41780x00000000, 41880x00000000,
@@ -4232,12 +4242,12 @@ static const unsigned int build_actionlist[7218] = {
42320x80f00000, 42420x80f00000,
42330x3a100004, 42430x3a100004,
42340x54e815ba, 42440x54e815ba,
42450x7c11402e,
42460x7c0903a6,
42350x54ea5d78, 42470x54ea5d78,
42360x54ec9b78, 42480x54ec9b78,
42370x7c11402e,
42380x54f4dd78, 42490x54f4dd78,
42390x54eb9d78, 42500x54eb9d78,
42400x7c0903a6,
42410x4e800420, 42510x4e800420,
42420x00000000, 42520x00000000,
42430x7c14706e, 42530x7c14706e,
@@ -4299,12 +4309,12 @@ static const unsigned int build_actionlist[7218] = {
42990x80f00000, 43090x80f00000,
43000x3a100004, 43100x3a100004,
43010x54e815ba, 43110x54e815ba,
43120x7c11402e,
43130x7c0903a6,
43020x54ea5d78, 43140x54ea5d78,
43030x54ec9b78, 43150x54ec9b78,
43040x7c11402e,
43050x54f4dd78, 43160x54f4dd78,
43060x54eb9d78, 43170x54eb9d78,
43070x7c0903a6,
43080x4e800420, 43180x4e800420,
43090x00000000, 43190x00000000,
43100x0006000d, 43200x0006000d,
@@ -4322,15 +4332,15 @@ static const unsigned int build_actionlist[7218] = {
43220x41840000, 43320x41840000,
43230x00050801, 43330x00050801,
43240x6ca58000, 43340x6ca58000,
43250x90a10024, 43350x90a1000c,
43260xc8210020, 43360xc8210008,
43270xfc21f828, 43370xfc21f828,
43280x48000000, 43380x48000000,
43290x00050002, 43390x00050002,
43300x00060012, 43400x00060012,
43310x6c848000, 43410x6c848000,
43320x90810024, 43420x9081000c,
43330xc8010020, 43430xc8010008,
43340xfc00f828, 43440xfc00f828,
43350x0006000b, 43450x0006000b,
43360xc82c0000, 43460xc82c0000,
@@ -4368,12 +4378,12 @@ static const unsigned int build_actionlist[7218] = {
43680x80f00000, 43780x80f00000,
43690x3a100004, 43790x3a100004,
43700x54e815ba, 43800x54e815ba,
43810x7c11402e,
43820x7c0903a6,
43710x54ea5d78, 43830x54ea5d78,
43720x54ec9b78, 43840x54ec9b78,
43730x7c11402e,
43740x54f4dd78, 43850x54f4dd78,
43750x54eb9d78, 43860x54eb9d78,
43760x7c0903a6,
43770x4e800420, 43870x4e800420,
43780x00000000, 43880x00000000,
43790x7c0e602e, 43890x7c0e602e,
@@ -4414,12 +4424,12 @@ static const unsigned int build_actionlist[7218] = {
44140x80f00000, 44240x80f00000,
44150x3a100004, 44250x3a100004,
44160x54e815ba, 44260x54e815ba,
44270x7c11402e,
44280x7c0903a6,
44170x54ea5d78, 44290x54ea5d78,
44180x54ec9b78, 44300x54ec9b78,
44190x7c11402e,
44200x54f4dd78, 44310x54f4dd78,
44210x54eb9d78, 44320x54eb9d78,
44220x7c0903a6,
44230x4e800420, 44330x4e800420,
44240x00000000, 44340x00000000,
44250x80f00000, 44350x80f00000,
@@ -4427,12 +4437,12 @@ static const unsigned int build_actionlist[7218] = {
44270x7c0e64ae, 44370x7c0e64ae,
44280x7c0ea5ae, 44380x7c0ea5ae,
44290x54e815ba, 44390x54e815ba,
44400x7c11402e,
44410x7c0903a6,
44300x54ea5d78, 44420x54ea5d78,
44310x54ec9b78, 44430x54ec9b78,
44320x7c11402e,
44330x54f4dd78, 44440x54f4dd78,
44340x54eb9d78, 44450x54eb9d78,
44350x7c0903a6,
44360x4e800420, 44460x4e800420,
44370x00000000, 44470x00000000,
44380x80f00000, 44480x80f00000,
@@ -4443,12 +4453,12 @@ static const unsigned int build_actionlist[7218] = {
44430x7c004114, 44530x7c004114,
44440x7c0ea12e, 44540x7c0ea12e,
44450x54e815ba, 44550x54e815ba,
44560x7c11402e,
44570x7c0903a6,
44460x54ea5d78, 44580x54ea5d78,
44470x54ec9b78, 44590x54ec9b78,
44480x7c11402e,
44490x54f4dd78, 44600x54f4dd78,
44500x54eb9d78, 44610x54eb9d78,
44510x7c0903a6,
44520x4e800420, 44620x4e800420,
44530x00000000, 44630x00000000,
44540x7d0c706e, 44640x7d0c706e,
@@ -4467,12 +4477,12 @@ static const unsigned int build_actionlist[7218] = {
44670x90140004, 44770x90140004,
44680x0006000d, 44780x0006000d,
44690x54e815ba, 44790x54e815ba,
44800x7c11402e,
44810x7c0903a6,
44700x54ea5d78, 44820x54ea5d78,
44710x54ec9b78, 44830x54ec9b78,
44720x7c11402e,
44730x54f4dd78, 44840x54f4dd78,
44740x54eb9d78, 44850x54eb9d78,
44750x7c0903a6,
44760x4e800420, 44860x4e800420,
44770x0006000e, 44870x0006000e,
44780x7c000400, 44880x7c000400,
@@ -4497,12 +4507,12 @@ static const unsigned int build_actionlist[7218] = {
44970x0005000d, 45070x0005000d,
44980x00000000, 45080x00000000,
44990x54e815ba, 45090x54e815ba,
45100x7c11402e,
45110x7c0903a6,
45000x54ea5d78, 45120x54ea5d78,
45010x54ec9b78, 45130x54ec9b78,
45020x7c11402e,
45030x54f4dd78, 45140x54f4dd78,
45040x54eb9d78, 45150x54eb9d78,
45050x7c0903a6,
45060x4e800420, 45160x4e800420,
45070x00000000, 45170x00000000,
45080x7c0c706e, 45180x7c0c706e,
@@ -4520,20 +4530,20 @@ static const unsigned int build_actionlist[7218] = {
45200x7ed4716e, 45300x7ed4716e,
45210x90740004, 45310x90740004,
45220x00000000, 45320x00000000,
45230x90610024, 45330x9061000c,
45240xc8010020, 45340xc8010008,
45250xfc00f028, 45350xfc00f028,
45260x80f00000, 45360x80f00000,
45270x3a100004, 45370x3a100004,
45280x7c0ea5ae, 45380x7c0ea5ae,
45290x00000000, 45390x00000000,
45300x54e815ba, 45400x54e815ba,
45410x7c11402e,
45420x7c0903a6,
45310x54ea5d78, 45430x54ea5d78,
45320x54ec9b78, 45440x54ec9b78,
45330x7c11402e,
45340x54f4dd78, 45450x54f4dd78,
45350x54eb9d78, 45460x54eb9d78,
45360x7c0903a6,
45370x4e800420, 45470x4e800420,
45380x0006000c, 45480x0006000c,
45390x2c000000, 45490x2c000000,
@@ -4583,9 +4593,10 @@ static const unsigned int build_actionlist[7218] = {
45830x808b0004, 45930x808b0004,
45840x00000000, 45940x00000000,
45850x7c89b040, 45950x7c89b040,
45860x4c423202,
45870x40820000, 45960x40820000,
45880x00050805, 45970x00050805,
45980x40860000,
45990x00050805,
45890x7c632615, 46000x7c632615,
45900x41830000, 46010x41830000,
45910x00050804, 46020x00050804,
@@ -4596,12 +4607,12 @@ static const unsigned int build_actionlist[7218] = {
45960x90740004, 46070x90740004,
45970x0006000c, 46080x0006000c,
45980x54e815ba, 46090x54e815ba,
46100x7c11402e,
46110x7c0903a6,
45990x54ea5d78, 46120x54ea5d78,
46000x54ec9b78, 46130x54ec9b78,
46010x7c11402e,
46020x54f4dd78, 46140x54f4dd78,
46030x54eb9d78, 46150x54eb9d78,
46040x7c0903a6,
46050x4e800420, 46160x4e800420,
46060x0006000e, 46170x0006000e,
46070x7c000400, 46180x7c000400,
@@ -4692,12 +4703,12 @@ static const unsigned int build_actionlist[7218] = {
46920x3a100004, 47030x3a100004,
46930x7c0ea5ae, 47040x7c0ea5ae,
46940x54e815ba, 47050x54e815ba,
47060x7c11402e,
47070x7c0903a6,
46950x54ea5d78, 47080x54ea5d78,
46960x54ec9b78, 47090x54ec9b78,
46970x7c11402e,
46980x54f4dd78, 47100x54f4dd78,
46990x54eb9d78, 47110x54eb9d78,
47000x7c0903a6,
47010x4e800420, 47120x4e800420,
47020x00000000, 47130x00000000,
47030x7d0a706e, 47140x7d0a706e,
@@ -4719,9 +4730,10 @@ static const unsigned int build_actionlist[7218] = {
47190x808b0004, 47300x808b0004,
47200x00000000, 47310x00000000,
47210x7c89b040, 47320x7c89b040,
47220x4c423202,
47230x40820000, 47330x40820000,
47240x00050805, 47340x00050805,
47350x40860000,
47360x00050805,
47250x7c641c51, 47370x7c641c51,
47260x41830000, 47380x41830000,
47270x00050804, 47390x00050804,
@@ -4732,12 +4744,12 @@ static const unsigned int build_actionlist[7218] = {
47320x90740004, 47440x90740004,
47330x0006000c, 47450x0006000c,
47340x54e815ba, 47460x54e815ba,
47470x7c11402e,
47480x7c0903a6,
47350x54ea5d78, 47490x54ea5d78,
47360x54ec9b78, 47500x54ec9b78,
47370x7c11402e,
47380x54f4dd78, 47510x54f4dd78,
47390x54eb9d78, 47520x54eb9d78,
47400x7c0903a6,
47410x4e800420, 47530x4e800420,
47420x0006000e, 47540x0006000e,
47430x7c000400, 47550x7c000400,
@@ -4828,12 +4840,12 @@ static const unsigned int build_actionlist[7218] = {
48280x3a100004, 48400x3a100004,
48290x7c0ea5ae, 48410x7c0ea5ae,
48300x54e815ba, 48420x54e815ba,
48430x7c11402e,
48440x7c0903a6,
48310x54ea5d78, 48450x54ea5d78,
48320x54ec9b78, 48460x54ec9b78,
48330x7c11402e,
48340x54f4dd78, 48470x54f4dd78,
48350x54eb9d78, 48480x54eb9d78,
48360x7c0903a6,
48370x4e800420, 48490x4e800420,
48380x00000000, 48500x00000000,
48390x7d0a706e, 48510x7d0a706e,
@@ -4855,9 +4867,10 @@ static const unsigned int build_actionlist[7218] = {
48550x808b0004, 48670x808b0004,
48560x00000000, 48680x00000000,
48570x7c89b040, 48690x7c89b040,
48580x4c423202,
48590x40820000, 48700x40820000,
48600x00050805, 48710x00050805,
48720x40860000,
48730x00050805,
48610x7c6325d7, 48740x7c6325d7,
48620x41830000, 48750x41830000,
48630x00050804, 48760x00050804,
@@ -4868,12 +4881,12 @@ static const unsigned int build_actionlist[7218] = {
48680x90740004, 48810x90740004,
48690x0006000c, 48820x0006000c,
48700x54e815ba, 48830x54e815ba,
48840x7c11402e,
48850x7c0903a6,
48710x54ea5d78, 48860x54ea5d78,
48720x54ec9b78, 48870x54ec9b78,
48730x7c11402e,
48740x54f4dd78, 48880x54f4dd78,
48750x54eb9d78, 48890x54eb9d78,
48760x7c0903a6,
48770x4e800420, 48900x4e800420,
48780x0006000e, 48910x0006000e,
48790x7c000400, 48920x7c000400,
@@ -4964,12 +4977,12 @@ static const unsigned int build_actionlist[7218] = {
49640x3a100004, 49770x3a100004,
49650x7c0ea5ae, 49780x7c0ea5ae,
49660x54e815ba, 49790x54e815ba,
49800x7c11402e,
49810x7c0903a6,
49670x54ea5d78, 49820x54ea5d78,
49680x54ec9b78, 49830x54ec9b78,
49690x7c11402e,
49700x54f4dd78, 49840x54f4dd78,
49710x54eb9d78, 49850x54eb9d78,
49720x7c0903a6,
49730x4e800420, 49860x4e800420,
49740x00000000, 49870x00000000,
49750x7d0e502e, 49880x7d0e502e,
@@ -5021,12 +5034,12 @@ static const unsigned int build_actionlist[7218] = {
50210x3a100004, 50340x3a100004,
50220x7c0ea5ae, 50350x7c0ea5ae,
50230x54e815ba, 50360x54e815ba,
50370x7c11402e,
50380x7c0903a6,
50240x54ea5d78, 50390x54ea5d78,
50250x54ec9b78, 50400x54ec9b78,
50260x7c11402e,
50270x54f4dd78, 50410x54f4dd78,
50280x54eb9d78, 50420x54eb9d78,
50290x7c0903a6,
50300x4e800420, 50430x4e800420,
50310x00000000, 50440x00000000,
50320x7d0a706e, 50450x7d0a706e,
@@ -5048,10 +5061,10 @@ static const unsigned int build_actionlist[7218] = {
50480x808b0004, 50610x808b0004,
50490x00000000, 50620x00000000,
50500x7c89b040, 50630x7c89b040,
50510x4c423202,
50520x40820000, 50640x40820000,
50530x00050805, 50650x00050805,
50540x000600a2, 50660x40860000,
50670x00050805,
50550x48000001, 50680x48000001,
50560x0005009b, 50690x0005009b,
50570x41830000, 50700x41830000,
@@ -5063,12 +5076,12 @@ static const unsigned int build_actionlist[7218] = {
50630x90740004, 50760x90740004,
50640x0006000c, 50770x0006000c,
50650x54e815ba, 50780x54e815ba,
50790x7c11402e,
50800x7c0903a6,
50660x54ea5d78, 50810x54ea5d78,
50670x54ec9b78, 50820x54ec9b78,
50680x7c11402e,
50690x54f4dd78, 50830x54f4dd78,
50700x54eb9d78, 50840x54eb9d78,
50710x7c0903a6,
50720x4e800420, 50850x4e800420,
50730x0006000e, 50860x0006000e,
50740x7c000400, 50870x7c000400,
@@ -5104,8 +5117,6 @@ static const unsigned int build_actionlist[7218] = {
51040x00050841, 51170x00050841,
51050x00000000, 51180x00000000,
51060x000600a2, 51190x000600a2,
51070x00000000,
51080x000600a3,
51090xfc2e7824, 51200xfc2e7824,
51100x48000001, 51210x48000001,
51110x00030010, 51220x00030010,
@@ -5162,8 +5173,6 @@ static const unsigned int build_actionlist[7218] = {
51620x0005083f, 51730x0005083f,
51630x00000000, 51740x00000000,
51640x000600a2, 51750x000600a2,
51650x00000000,
51660x000600a3,
51670xfc2e7824, 51760xfc2e7824,
51680x48000001, 51770x48000001,
51690x00030010, 51780x00030010,
@@ -5173,12 +5182,12 @@ static const unsigned int build_actionlist[7218] = {
51730x3a100004, 51820x3a100004,
51740x7c0ea5ae, 51830x7c0ea5ae,
51750x54e815ba, 51840x54e815ba,
51850x7c11402e,
51860x7c0903a6,
51760x54ea5d78, 51870x54ea5d78,
51770x54ec9b78, 51880x54ec9b78,
51780x7c11402e,
51790x54f4dd78, 51890x54f4dd78,
51800x54eb9d78, 51900x54eb9d78,
51810x7c0903a6,
51820x4e800420, 51910x4e800420,
51830x00000000, 51920x00000000,
51840x7d0a706e, 51930x7d0a706e,
@@ -5200,11 +5209,42 @@ static const unsigned int build_actionlist[7218] = {
52000x808b0004, 52090x808b0004,
52010x00000000, 52100x00000000,
52020x7c89b040, 52110x7c89b040,
52030x4c423202,
52040x40820000, 52120x40820000,
52050x00050805, 52130x00050805,
52140x40860000,
52150x00050805,
52160x48000001,
52170x0005009b,
52180x41830000,
52190x00050804,
52200x0006000b,
52210x80f00000,
52220x3a100004,
52230x7ed4716e,
52240x90740004,
52250x0006000c,
52260x54e815ba,
52270x7c11402e,
52280x7c0903a6,
52290x54ea5d78,
52300x54ec9b78,
52310x54f4dd78,
52320x54eb9d78,
52330x4e800420,
52340x0006000e,
52350x7c000400,
52360x40810000,
52370x0005080b,
52380x00000000,
52060x48000000, 52390x48000000,
52070x000500a2, 52400x00050040,
52410x00000000,
52420x48000000,
52430x0005003c,
52440x00000000,
52450x48000000,
52460x00050041,
52470x00000000,
52080x0006000f, 52480x0006000f,
52090x00000000, 52490x00000000,
52100xc9ea0000, 52500xc9ea0000,
@@ -5225,7 +5265,7 @@ static const unsigned int build_actionlist[7218] = {
52250x00050841, 52650x00050841,
52260x00000000, 52660x00000000,
52270x48000000, 52670x48000000,
52280x000500a3, 52680x000500a2,
52290x00000000, 52690x00000000,
52300x7d0e502e, 52700x7d0e502e,
52310x00000000, 52710x00000000,
@@ -5272,7 +5312,7 @@ static const unsigned int build_actionlist[7218] = {
52720x0005083f, 53120x0005083f,
52730x00000000, 53130x00000000,
52740x48000000, 53140x48000000,
52750x000500a3, 53150x000500a2,
52760x00000000, 53160x00000000,
52770x7d0e502e, 53170x7d0e502e,
52780x7c2e54ae, 53180x7c2e54ae,
@@ -5285,16 +5325,16 @@ static const unsigned int build_actionlist[7218] = {
52850x0005083f, 53250x0005083f,
52860x48000001, 53260x48000001,
52870x0003001f, 53270x0003001f,
52880x7c2ea5ae,
52890x80f00000, 53280x80f00000,
52900x3a100004, 53290x3a100004,
53300x7c2ea5ae,
52910x54e815ba, 53310x54e815ba,
53320x7c11402e,
53330x7c0903a6,
52920x54ea5d78, 53340x54ea5d78,
52930x54ec9b78, 53350x54ec9b78,
52940x7c11402e,
52950x54f4dd78, 53360x54f4dd78,
52960x54eb9d78, 53370x54eb9d78,
52970x7c0903a6,
52980x4e800420, 53380x4e800420,
52990x00000000, 53390x00000000,
53000x7caa5850, 53400x7caa5850,
@@ -5303,7 +5343,7 @@ static const unsigned int build_actionlist[7218] = {
53030x7c8e5a14, 53430x7c8e5a14,
53040x7d555378, 53440x7d555378,
53050x0006002a, 53450x0006002a,
53060x92010008, 53460x92010020,
53070x7e439378, 53470x7e439378,
53080x54a500fe, 53480x54a500fe,
53090x000900ab, 53490x000900ab,
@@ -5314,55 +5354,55 @@ static const unsigned int build_actionlist[7218] = {
53140x00098200, 53540x00098200,
53150x40820000, 53550x40820000,
53160x00050835, 53560x00050835,
53170x7c0eacae,
53180x7c0ea5ae,
53190x80f00000, 53570x80f00000,
53200x3a100004, 53580x3a100004,
53590x7c0eacae,
53600x7c0ea5ae,
53210x54e815ba, 53610x54e815ba,
53620x7c11402e,
53630x7c0903a6,
53220x54ea5d78, 53640x54ea5d78,
53230x54ec9b78, 53650x54ec9b78,
53240x7c11402e,
53250x54f4dd78, 53660x54f4dd78,
53260x54eb9d78, 53670x54eb9d78,
53270x7c0903a6,
53280x4e800420, 53680x4e800420,
53290x00000000, 53690x00000000,
53300x5588007e, 53700x5588007e,
53310x000900ab, 53710x000900ab,
53320x2108fffc, 53720x2108fffc,
53730x80f00000,
53740x3a100004,
53330x7c0f402e, 53750x7c0f402e,
53340x39200000, 53760x39200000,
53350x00098200, 53770x00098200,
53360x80f00000,
53370x3a100004,
53380x7d34716e, 53780x7d34716e,
53390x90140004, 53790x90140004,
53400x54e815ba, 53800x54e815ba,
53810x7c11402e,
53820x7c0903a6,
53410x54ea5d78, 53830x54ea5d78,
53420x54ec9b78, 53840x54ec9b78,
53430x7c11402e,
53440x54f4dd78, 53850x54f4dd78,
53450x54eb9d78, 53860x54eb9d78,
53460x7c0903a6,
53470x4e800420, 53870x4e800420,
53480x00000000, 53880x00000000,
53490x5588007e, 53890x5588007e,
53500x000900ab, 53900x000900ab,
53510x2108fffc, 53910x2108fffc,
53920x80f00000,
53930x3a100004,
53520x7c0f402e, 53940x7c0f402e,
53530x39200000, 53950x39200000,
53540x00098200, 53960x00098200,
53550x80f00000,
53560x3a100004,
53570x7d34716e, 53970x7d34716e,
53580x90140004, 53980x90140004,
53590x54e815ba, 53990x54e815ba,
54000x7c11402e,
54010x7c0903a6,
53600x54ea5d78, 54020x54ea5d78,
53610x54ec9b78, 54030x54ec9b78,
53620x7c11402e,
53630x54f4dd78, 54040x54f4dd78,
53640x54eb9d78, 54050x54eb9d78,
53650x7c0903a6,
53660x4e800420, 54060x4e800420,
53670x00000000, 54070x00000000,
53680x558c6800, 54080x558c6800,
@@ -5373,44 +5413,53 @@ static const unsigned int build_actionlist[7218] = {
53730x7ed4716e, 54130x7ed4716e,
53740x91940004, 54140x91940004,
53750x54e815ba, 54150x54e815ba,
54160x7c11402e,
54170x7c0903a6,
53760x54ea5d78, 54180x54ea5d78,
53770x54ec9b78, 54190x54ec9b78,
53780x7c11402e,
53790x54f4dd78, 54200x54f4dd78,
53800x54eb9d78, 54210x54eb9d78,
53810x7c0903a6,
53820x4e800420, 54220x4e800420,
53830x00000000, 54230x00000000,
53840x558c6800, 54240x558c6800,
53850x000900a1, 54250x000900a1,
53860x7d8c8670, 54260x7d88fe70,
53870x6d8c8000, 54270x7d096278,
53880x91810024, 54280x7d284850,
53890xc8010020, 54290x7d260034,
53900xfc00f828, 54300x2106040d,
54310x7d293030,
54320x20cc0000,
54330x5508a000,
54340x000900a1,
54350x512ca87e,
54360x7c000110,
54370x7d8c4214,
54380x7d8c0038,
53910x80f00000, 54390x80f00000,
53920x3a100004, 54400x3a100004,
53930x7c0ea5ae, 54410x7d94716e,
54420x93140004,
53940x54e815ba, 54430x54e815ba,
54440x7c11402e,
54450x7c0903a6,
53950x54ea5d78, 54460x54ea5d78,
53960x54ec9b78, 54470x54ec9b78,
53970x7c11402e,
53980x54f4dd78, 54480x54f4dd78,
53990x54eb9d78, 54490x54eb9d78,
54000x7c0903a6,
54010x4e800420, 54500x4e800420,
54020x00000000, 54510x00000000,
54030x7c0f64ae,
54040x80f00000, 54520x80f00000,
54050x3a100004, 54530x3a100004,
54540x7c0f64ae,
54060x7c0ea5ae, 54550x7c0ea5ae,
54070x54e815ba, 54560x54e815ba,
54570x7c11402e,
54580x7c0903a6,
54080x54ea5d78, 54590x54ea5d78,
54090x54ec9b78, 54600x54ec9b78,
54100x7c11402e,
54110x54f4dd78, 54610x54f4dd78,
54120x54eb9d78, 54620x54eb9d78,
54130x7c0903a6,
54140x4e800420, 54630x4e800420,
54150x00000000, 54640x00000000,
54160x558800fe, 54650x558800fe,
@@ -5420,12 +5469,12 @@ static const unsigned int build_actionlist[7218] = {
54200x3a100004, 54690x3a100004,
54210x7c0ea12e, 54700x7c0ea12e,
54220x54e815ba, 54710x54e815ba,
54720x7c11402e,
54730x7c0903a6,
54230x54ea5d78, 54740x54ea5d78,
54240x54ec9b78, 54750x54ec9b78,
54250x7c11402e,
54260x54f4dd78, 54760x54f4dd78,
54270x54eb9d78, 54770x54eb9d78,
54280x7c0903a6,
54290x4e800420, 54780x4e800420,
54300x00000000, 54790x00000000,
54310x7eeea12e, 54800x7eeea12e,
@@ -5439,33 +5488,33 @@ static const unsigned int build_actionlist[7218] = {
54390x80f00000, 54880x80f00000,
54400x3a100004, 54890x3a100004,
54410x54e815ba, 54900x54e815ba,
54910x7c11402e,
54920x7c0903a6,
54420x54ea5d78, 54930x54ea5d78,
54430x54ec9b78, 54940x54ec9b78,
54440x7c11402e,
54450x54f4dd78, 54950x54f4dd78,
54460x54eb9d78, 54960x54eb9d78,
54470x7c0903a6,
54480x4e800420, 54970x4e800420,
54490x00000000, 54980x00000000,
54500x80f00000,
54510x3a100004,
54520x814efffc, 54990x814efffc,
54530x558c007e, 55000x558c007e,
54540x000900ab, 55010x000900ab,
54550x398c0000, 55020x398c0000,
54560x00098200, 55030x00098200,
54570x7d4a602e, 55040x7d4a602e,
55050x80f00000,
55060x3a100004,
54580x810a0000, 55070x810a0000,
54590x00098200, 55080x00098200,
54600xc8080000, 55090xc8080000,
54610x7c0ea5ae, 55100x7c0ea5ae,
54620x54e815ba, 55110x54e815ba,
55120x7c11402e,
55130x7c0903a6,
54630x54ea5d78, 55140x54ea5d78,
54640x54ec9b78, 55150x54ec9b78,
54650x7c11402e,
54660x54f4dd78, 55160x54f4dd78,
54670x54eb9d78, 55170x54eb9d78,
54680x7c0903a6,
54690x4e800420, 55180x4e800420,
54700x00000000, 55190x00000000,
54710x814efffc, 55200x814efffc,
@@ -5475,6 +5524,8 @@ static const unsigned int build_actionlist[7218] = {
54750x00098200, 55240x00098200,
54760x7c0c74ee, 55250x7c0c74ee,
54770x7d4aa02e, 55260x7d4aa02e,
55270x80f00000,
55280x3a100004,
54780x88ca0000, 55290x88ca0000,
54790x00098200, 55300x00098200,
54800x808a0000, 55310x808a0000,
@@ -5493,15 +5544,13 @@ static const unsigned int build_actionlist[7218] = {
54930x40820000, 55440x40820000,
54940x00050802, 55450x00050802,
54950x0006000b, 55460x0006000b,
54960x80f00000,
54970x3a100004,
54980x54e815ba, 55470x54e815ba,
55480x7c11402e,
55490x7c0903a6,
54990x54ea5d78, 55500x54ea5d78,
55000x54ec9b78, 55510x54ec9b78,
55010x7c11402e,
55020x54f4dd78, 55520x54f4dd78,
55030x54eb9d78, 55530x54eb9d78,
55040x7c0903a6,
55050x4e800420, 55540x4e800420,
55060x0006000c, 55550x0006000c,
55070x28090000, 55560x28090000,
@@ -5521,8 +5570,6 @@ static const unsigned int build_actionlist[7218] = {
55210x48000000, 55700x48000000,
55220x0005000b, 55710x0005000b,
55230x00000000, 55720x00000000,
55240x80f00000,
55250x3a100004,
55260x814efffc, 55730x814efffc,
55270x5588007e, 55740x5588007e,
55280x000900ab, 55750x000900ab,
@@ -5533,6 +5580,8 @@ static const unsigned int build_actionlist[7218] = {
55330x00098200, 55800x00098200,
55340x7d0f402e, 55810x7d0f402e,
55350x7d4aa02e, 55820x7d4aa02e,
55830x80f00000,
55840x3a100004,
55360x88ca0000, 55850x88ca0000,
55370x00098200, 55860x00098200,
55380x808a0000, 55870x808a0000,
@@ -5551,12 +5600,12 @@ static const unsigned int build_actionlist[7218] = {
55510x00050802, 56000x00050802,
55520x0006000b, 56010x0006000b,
55530x54e815ba, 56020x54e815ba,
56030x7c11402e,
56040x7c0903a6,
55540x54ea5d78, 56050x54ea5d78,
55550x54ec9b78, 56060x54ec9b78,
55560x7c11402e,
55570x54f4dd78, 56070x54f4dd78,
55580x54eb9d78, 56080x54eb9d78,
55590x7c0903a6,
55600x4e800420, 56090x4e800420,
55610x0006000c, 56100x0006000c,
55620x70c60000, 56110x70c60000,
@@ -5572,8 +5621,6 @@ static const unsigned int build_actionlist[7218] = {
55720x48000000, 56210x48000000,
55730x0005000b, 56220x0005000b,
55740x00000000, 56230x00000000,
55750x80f00000,
55760x3a100004,
55770x814efffc, 56240x814efffc,
55780x5694007e, 56250x5694007e,
55790x000900ab, 56260x000900ab,
@@ -5581,48 +5628,50 @@ static const unsigned int build_actionlist[7218] = {
55810x00098200, 56280x00098200,
55820x7c0f64ae, 56290x7c0f64ae,
55830x7d4aa02e, 56300x7d4aa02e,
56310x80f00000,
56320x3a100004,
55840x810a0000, 56330x810a0000,
55850x00098200, 56340x00098200,
55860xd8080000, 56350xd8080000,
55870x54e815ba, 56360x54e815ba,
56370x7c11402e,
56380x7c0903a6,
55880x54ea5d78, 56390x54ea5d78,
55890x54ec9b78, 56400x54ec9b78,
55900x7c11402e,
55910x54f4dd78, 56410x54f4dd78,
55920x54eb9d78, 56420x54eb9d78,
55930x7c0903a6,
55940x4e800420, 56430x4e800420,
55950x00000000, 56440x00000000,
55960x80f00000,
55970x3a100004,
55980x814efffc, 56450x814efffc,
55990x5694007e, 56460x5694007e,
56000x000900ab, 56470x000900ab,
56010x3a940000,
56020x00098200,
56030x558000fe, 56480x558000fe,
56040x000900ab, 56490x000900ab,
56050x7d4aa02e, 56500x3a940000,
56510x00098200,
56060x7c0000f8, 56520x7c0000f8,
56530x7d4aa02e,
56540x80f00000,
56550x3a100004,
56070x810a0000, 56560x810a0000,
56080x00098200, 56570x00098200,
56090x90080000, 56580x90080000,
56100x54e815ba, 56590x54e815ba,
56600x7c11402e,
56610x7c0903a6,
56110x54ea5d78, 56620x54ea5d78,
56120x54ec9b78, 56630x54ec9b78,
56130x7c11402e,
56140x54f4dd78, 56640x54f4dd78,
56150x54eb9d78, 56650x54eb9d78,
56160x7c0903a6,
56170x4e800420, 56660x4e800420,
56180x00000000, 56670x00000000,
56190x81120000, 56680x81120000,
56200x00098200, 56690x00098200,
56210x5580007e, 56700x5580007e,
56220x000900ab, 56710x000900ab,
56230x7e100214,
56240x3e100000, 56720x3e100000,
56250x00098200, 56730x00098200,
56740x7e100214,
56260x91d20000, 56750x91d20000,
56270x00098200, 56760x00098200,
56280x28080000, 56770x28080000,
@@ -5638,12 +5687,12 @@ static const unsigned int build_actionlist[7218] = {
56380x80f00000, 56870x80f00000,
56390x3a100004, 56880x3a100004,
56400x54e815ba, 56890x54e815ba,
56900x7c11402e,
56910x7c0903a6,
56410x54ea5d78, 56920x54ea5d78,
56420x54ec9b78, 56930x54ec9b78,
56430x7c11402e,
56440x54f4dd78, 56940x54f4dd78,
56450x54eb9d78, 56950x54eb9d78,
56460x7c0903a6,
56470x4e800420, 56960x4e800420,
56480x00000000, 56970x00000000,
56490x5588007e, 56980x5588007e,
@@ -5651,7 +5700,7 @@ static const unsigned int build_actionlist[7218] = {
56510x91d20000, 57000x91d20000,
56520x00098200, 57010x00098200,
56530x2108fffc, 57020x2108fffc,
56540x92010008, 57030x92010020,
56550x7c8f402e, 57040x7c8f402e,
56560x7e439378, 57050x7e439378,
56570x80aefffc, 57060x80aefffc,
@@ -5666,12 +5715,12 @@ static const unsigned int build_actionlist[7218] = {
56660x80f00000, 57150x80f00000,
56670x3a100004, 57160x3a100004,
56680x54e815ba, 57170x54e815ba,
57180x7c11402e,
57190x7c0903a6,
56690x54ea5d78, 57200x54ea5d78,
56700x54ec9b78, 57210x54ec9b78,
56710x7c11402e,
56720x54f4dd78, 57220x54f4dd78,
56730x54eb9d78, 57230x54eb9d78,
56740x7c0903a6,
56750x4e800420, 57240x4e800420,
56760x00000000, 57250x00000000,
56770x80110000, 57260x80110000,
@@ -5682,7 +5731,7 @@ static const unsigned int build_actionlist[7218] = {
56820x91d20000, 57310x91d20000,
56830x00098200, 57320x00098200,
56840x7c004040, 57330x7c004040,
56850x92010008, 57340x92010020,
56860x40800000, 57350x40800000,
56870x00050805, 57360x00050805,
56880x0006000b, 57370x0006000b,
@@ -5712,12 +5761,12 @@ static const unsigned int build_actionlist[7218] = {
57120x80f00000, 57610x80f00000,
57130x3a100004, 57620x3a100004,
57140x54e815ba, 57630x54e815ba,
57640x7c11402e,
57650x7c0903a6,
57150x54ea5d78, 57660x54ea5d78,
57160x54ec9b78, 57670x54ec9b78,
57170x7c11402e,
57180x54f4dd78, 57680x54f4dd78,
57190x54eb9d78, 57690x54eb9d78,
57200x7c0903a6,
57210x4e800420, 57700x4e800420,
57220x00000000, 57710x00000000,
57230x0006000d, 57720x0006000d,
@@ -5743,10 +5792,10 @@ static const unsigned int build_actionlist[7218] = {
57430x7d6f402e, 57920x7d6f402e,
57440x00000000, 57930x00000000,
57450x48000000, 57940x48000000,
57460x000500a4, 57950x000500a3,
57470x00000000, 57960x00000000,
57480x48000000, 57970x48000000,
57490x000500a5, 57980x000500a4,
57500x00000000, 57990x00000000,
57510x7c6a706e, 58000x7c6a706e,
57520x7c8b706e, 58010x7c8b706e,
@@ -5776,11 +5825,11 @@ static const unsigned int build_actionlist[7218] = {
57760x00050805, 58250x00050805,
57770xfc20001e, 58260xfc20001e,
57780xfc40f02a, 58270xfc40f02a,
57790xd8210008, 58280xd8210010,
57800x800a0000, 58290x800a0000,
57810x00098200, 58300x00098200,
57820xfc42f028, 58310xfc42f028,
57830x8121000c, 58320x81210014,
57840x810a0000, 58330x810a0000,
57850x00098200, 58340x00098200,
57860xfc801000, 58350xfc801000,
@@ -5802,12 +5851,12 @@ static const unsigned int build_actionlist[7218] = {
58020x3a100004, 58510x3a100004,
58030x7dcea5ae, 58520x7dcea5ae,
58040x54e815ba, 58530x54e815ba,
58540x7c11402e,
58550x7c0903a6,
58050x54ea5d78, 58560x54ea5d78,
58060x54ec9b78, 58570x54ec9b78,
58070x7c11402e,
58080x54f4dd78, 58580x54f4dd78,
58090x54eb9d78, 58590x54eb9d78,
58100x7c0903a6,
58110x4e800420, 58600x4e800420,
58120x0006000c, 58610x0006000c,
58130x812a0000, 58620x812a0000,
@@ -5832,7 +5881,7 @@ static const unsigned int build_actionlist[7218] = {
58320x816b0004, 58810x816b0004,
58330x00000000, 58820x00000000,
58340x48000000, 58830x48000000,
58350x000500a4, 58840x000500a3,
58360x00000000, 58850x00000000,
58370x7c6a706e, 58860x7c6a706e,
58380x5568007e, 58870x5568007e,
@@ -5844,7 +5893,7 @@ static const unsigned int build_actionlist[7218] = {
58440x7d6f402e, 58930x7d6f402e,
58450x40820000, 58940x40820000,
58460x0005082c, 58950x0005082c,
58470x000600a4, 58960x000600a3,
58480x800a0000, 58970x800a0000,
58490x00098200, 58980x00098200,
58500x810b0000, 58990x810b0000,
@@ -5884,12 +5933,12 @@ static const unsigned int build_actionlist[7218] = {
58840x80f00000, 59330x80f00000,
58850x3a100004, 59340x3a100004,
58860x54e815ba, 59350x54e815ba,
59360x7c11402e,
59370x7c0903a6,
58870x54ea5d78, 59380x54ea5d78,
58880x54ec9b78, 59390x54ec9b78,
58890x7c11402e,
58900x54f4dd78, 59400x54f4dd78,
58910x54eb9d78, 59410x54eb9d78,
58920x7c0903a6,
58930x4e800420, 59420x4e800420,
58940x0006000e, 59430x0006000e,
58950x81290000, 59440x81290000,
@@ -5916,9 +5965,9 @@ static const unsigned int build_actionlist[7218] = {
59160x0005002d, 59650x0005002d,
59170x00000000, 59660x00000000,
59180x7c6a706e, 59670x7c6a706e,
59190x814a0004,
59200x556000fe, 59680x556000fe,
59210x000900ab, 59690x000900ab,
59700x814a0004,
59220x2c030000, 59710x2c030000,
59230x00098200, 59720x00098200,
59240x40820000, 59730x40820000,
@@ -5941,12 +5990,12 @@ static const unsigned int build_actionlist[7218] = {
59410x3a100004, 59900x3a100004,
59420x7c0ea5ae, 59910x7c0ea5ae,
59430x54e815ba, 59920x54e815ba,
59930x7c11402e,
59940x7c0903a6,
59440x54ea5d78, 59950x54ea5d78,
59450x54ec9b78, 59960x54ec9b78,
59460x7c11402e,
59470x54f4dd78, 59970x54f4dd78,
59480x54eb9d78, 59980x54eb9d78,
59490x7c0903a6,
59500x4e800420, 59990x4e800420,
59510x0006000f, 60000x0006000f,
59520x812a0000, 60010x812a0000,
@@ -5991,11 +6040,11 @@ static const unsigned int build_actionlist[7218] = {
59910x00050805, 60400x00050805,
59920xfc20001e, 60410xfc20001e,
59930xfc40f02a, 60420xfc40f02a,
59940xd8210008, 60430xd8210010,
59950x800a0000, 60440x800a0000,
59960x00098200, 60450x00098200,
59970xfc42f028, 60460xfc42f028,
59980x8121000c, 60470x81210014,
59990x810a0000, 60480x810a0000,
60000x00098200, 60490x00098200,
60010xfc801000, 60500xfc801000,
@@ -6024,12 +6073,12 @@ static const unsigned int build_actionlist[7218] = {
60240x80f00000, 60730x80f00000,
60250x3a100004, 60740x3a100004,
60260x54e815ba, 60750x54e815ba,
60760x7c11402e,
60770x7c0903a6,
60270x54ea5d78, 60780x54ea5d78,
60280x54ec9b78, 60790x54ec9b78,
60290x7c11402e,
60300x54f4dd78, 60800x54f4dd78,
60310x54eb9d78, 60810x54eb9d78,
60320x7c0903a6,
60330x4e800420, 60820x4e800420,
60340x0006000d, 60830x0006000d,
60350x812a0000, 60840x812a0000,
@@ -6054,7 +6103,7 @@ static const unsigned int build_actionlist[7218] = {
60540x816b0004, 61030x816b0004,
60550x00000000, 61040x00000000,
60560x48000000, 61050x48000000,
60570x000500a5, 61060x000500a4,
60580x00060011, 61070x00060011,
60590x80110000, 61080x80110000,
60600x00098200, 61090x00098200,
@@ -6086,12 +6135,12 @@ static const unsigned int build_actionlist[7218] = {
60860x80f00000, 61350x80f00000,
60870x3a100004, 61360x3a100004,
60880x54e815ba, 61370x54e815ba,
61380x7c11402e,
61390x7c0903a6,
60890x54ea5d78, 61400x54ea5d78,
60900x54ec9b78, 61410x54ec9b78,
60910x7c11402e,
60920x54f4dd78, 61420x54f4dd78,
60930x54eb9d78, 61430x54eb9d78,
60940x7c0903a6,
60950x4e800420, 61440x4e800420,
60960x00000000, 61450x00000000,
60970x7c6a706e, 61460x7c6a706e,
@@ -6104,7 +6153,7 @@ static const unsigned int build_actionlist[7218] = {
61040x7d6f402e, 61530x7d6f402e,
61050x40820000, 61540x40820000,
61060x00050830, 61550x00050830,
61070x000600a5, 61560x000600a4,
61080x800a0000, 61570x800a0000,
61090x00098200, 61580x00098200,
61100x810b0000, 61590x810b0000,
@@ -6155,12 +6204,12 @@ static const unsigned int build_actionlist[7218] = {
61550x80f00000, 62040x80f00000,
61560x3a100004, 62050x3a100004,
61570x54e815ba, 62060x54e815ba,
62070x7c11402e,
62080x7c0903a6,
61580x54ea5d78, 62090x54ea5d78,
61590x54ec9b78, 62100x54ec9b78,
61600x7c11402e,
61610x54f4dd78, 62110x54f4dd78,
61620x54eb9d78, 62120x54eb9d78,
61630x7c0903a6,
61640x4e800420, 62130x4e800420,
61650x0006000e, 62140x0006000e,
61660x810a0000, 62150x810a0000,
@@ -6186,7 +6235,7 @@ static const unsigned int build_actionlist[7218] = {
61860x00098200, 62350x00098200,
61870x38b10000, 62360x38b10000,
61880x00098200, 62370x00098200,
61890x92010008, 62380x92010020,
61900x7e439378, 62390x7e439378,
61910x28080000, 62400x28080000,
61920x91d20000, 62410x91d20000,
@@ -6227,9 +6276,9 @@ static const unsigned int build_actionlist[7218] = {
62270x0005000d, 62760x0005000d,
62280x00000000, 62770x00000000,
62290x7c6a706e, 62780x7c6a706e,
62300x814a0004,
62310x556000fe, 62790x556000fe,
62320x000900ab, 62800x000900ab,
62810x814a0004,
62330x2c030000, 62820x2c030000,
62340x00098200, 62830x00098200,
62350x40820000, 62840x40820000,
@@ -6259,12 +6308,12 @@ static const unsigned int build_actionlist[7218] = {
62590x80f00000, 63080x80f00000,
62600x3a100004, 63090x3a100004,
62610x54e815ba, 63100x54e815ba,
63110x7c11402e,
63120x7c0903a6,
62620x54ea5d78, 63130x54ea5d78,
62630x54ec9b78, 63140x54ec9b78,
62640x7c11402e,
62650x54f4dd78, 63150x54f4dd78,
62660x54eb9d78, 63160x54eb9d78,
62670x7c0903a6,
62680x4e800420, 63170x4e800420,
62690x0006000f, 63180x0006000f,
62700x810a0000, 63190x810a0000,
@@ -6334,18 +6383,18 @@ static const unsigned int build_actionlist[7218] = {
63340x80f00000, 63830x80f00000,
63350x3a100004, 63840x3a100004,
63360x54e815ba, 63850x54e815ba,
63860x7c11402e,
63870x7c0903a6,
63370x54ea5d78, 63880x54ea5d78,
63380x54ec9b78, 63890x54ec9b78,
63390x7c11402e,
63400x54f4dd78, 63900x54f4dd78,
63410x54eb9d78, 63910x54eb9d78,
63420x7c0903a6,
63430x4e800420, 63920x4e800420,
63440x0006000f, 63930x0006000f,
63450x91d20000, 63940x91d20000,
63460x00098200, 63950x00098200,
63470x7e439378, 63960x7e439378,
63480x92010008, 63970x92010020,
63490x7d956378, 63980x7d956378,
63500x48000001, 63990x48000001,
63510x00030033, 64000x00030033,
@@ -6516,8 +6565,8 @@ static const unsigned int build_actionlist[7218] = {
65160x91740004, 65650x91740004,
65170x92d40000, 65660x92d40000,
65180x00000000, 65670x00000000,
65190x91610024, 65680x9161000c,
65200xc8210020, 65690xc8210008,
65210xfc21f028, 65700xfc21f028,
65220x00000000, 65710x00000000,
65230x396b0001, 65720x396b0001,
@@ -6534,12 +6583,12 @@ static const unsigned int build_actionlist[7218] = {
65340x80f00000, 65830x80f00000,
65350x3a100004, 65840x3a100004,
65360x54e815ba, 65850x54e815ba,
65860x7c11402e,
65870x7c0903a6,
65370x54ea5d78, 65880x54ea5d78,
65380x54ec9b78, 65890x54ec9b78,
65390x7c11402e,
65400x54f4dd78, 65900x54f4dd78,
65410x54eb9d78, 65910x54eb9d78,
65420x7c0903a6,
65430x4e800420, 65920x4e800420,
65440x0006000e, 65930x0006000e,
65450x396b0001, 65940x396b0001,
@@ -6617,12 +6666,12 @@ static const unsigned int build_actionlist[7218] = {
66170x80f00000, 66660x80f00000,
66180x3a100004, 66670x3a100004,
66190x54e815ba, 66680x54e815ba,
66690x7c11402e,
66700x7c0903a6,
66200x54ea5d78, 66710x54ea5d78,
66210x54ec9b78, 66720x54ec9b78,
66220x7c11402e,
66230x54f4dd78, 66730x54f4dd78,
66240x54eb9d78, 66740x54eb9d78,
66250x7c0903a6,
66260x4e800420, 66750x4e800420,
66270x0006000f, 66760x0006000f,
66280x38000000, 66770x38000000,
@@ -6672,12 +6721,12 @@ static const unsigned int build_actionlist[7218] = {
66720x80f00000, 67210x80f00000,
66730x3a100004, 67220x3a100004,
66740x54e815ba, 67230x54e815ba,
67240x7c11402e,
67250x7c0903a6,
66750x54ea5d78, 67260x54ea5d78,
66760x54ec9b78, 67270x54ec9b78,
66770x7c11402e,
66780x54f4dd78, 67280x54f4dd78,
66790x54eb9d78, 67290x54eb9d78,
66800x7c0903a6,
66810x4e800420, 67300x4e800420,
66820x0006000f, 67310x0006000f,
66830x80120000, 67320x80120000,
@@ -6708,7 +6757,7 @@ static const unsigned int build_actionlist[7218] = {
67080x91d20000, 67570x91d20000,
67090x00098200, 67580x00098200,
67100x7e8ea050, 67590x7e8ea050,
67110x92010008, 67600x92010020,
67120x550400fe, 67610x550400fe,
67130x000900ab, 67620x000900ab,
67140x48000001, 67630x48000001,
@@ -6733,7 +6782,7 @@ static const unsigned int build_actionlist[7218] = {
67330x6a080000, 67820x6a080000,
67340x00090200, 67830x00090200,
67350x40820000, 67840x40820000,
67360x000508a6, 67850x000508a5,
67370x00060017, 67860x00060017,
67380x80f0fffc, 67870x80f0fffc,
67390x2c0c0008, 67880x2c0c0008,
@@ -6771,12 +6820,12 @@ static const unsigned int build_actionlist[7218] = {
67710x81e80000, 68200x81e80000,
67720x00098200, 68210x00098200,
67730x54e815ba, 68220x54e815ba,
68230x7c11402e,
68240x7c0903a6,
67740x54ea5d78, 68250x54ea5d78,
67750x54ec9b78, 68260x54ec9b78,
67760x7c11402e,
67770x54f4dd78, 68270x54f4dd78,
67780x54eb9d78, 68280x54eb9d78,
67790x7c0903a6,
67800x4e800420, 68290x4e800420,
67810x00060010, 68300x00060010,
67820x390cfff8, 68310x390cfff8,
@@ -6784,7 +6833,7 @@ static const unsigned int build_actionlist[7218] = {
67840x7ee9412e, 68330x7ee9412e,
67850x48000000, 68340x48000000,
67860x0005000f, 68350x0005000f,
67870x000600a6, 68360x000600a5,
67880x71090000, 68370x71090000,
67890x00090200, 68380x00090200,
67900x40820000, 68390x40820000,
@@ -6802,7 +6851,7 @@ static const unsigned int build_actionlist[7218] = {
68020x6a080000, 68510x6a080000,
68030x00090200, 68520x00090200,
68040x40820000, 68530x40820000,
68050x000508a6, 68540x000508a5,
68060x80f0fffc, 68550x80f0fffc,
68070x392efff8, 68560x392efff8,
68080x54ea5d78, 68570x54ea5d78,
@@ -6824,12 +6873,12 @@ static const unsigned int build_actionlist[7218] = {
68240x81e80000, 68730x81e80000,
68250x00098200, 68740x00098200,
68260x54e815ba, 68750x54e815ba,
68760x7c11402e,
68770x7c0903a6,
68270x54ea5d78, 68780x54ea5d78,
68280x54ec9b78, 68790x54ec9b78,
68290x7c11402e,
68300x54f4dd78, 68800x54f4dd78,
68310x54eb9d78, 68810x54eb9d78,
68320x7c0903a6,
68330x4e800420, 68820x4e800420,
68340x00060010, 68830x00060010,
68350x390cfff8, 68840x390cfff8,
@@ -6910,12 +6959,12 @@ static const unsigned int build_actionlist[7218] = {
69100x80f00000, 69590x80f00000,
69110x3a100004, 69600x3a100004,
69120x54e815ba, 69610x54e815ba,
69620x7c11402e,
69630x7c0903a6,
69130x54ea5d78, 69640x54ea5d78,
69140x54ec9b78, 69650x54ec9b78,
69150x7c11402e,
69160x54f4dd78, 69660x54f4dd78,
69170x54eb9d78, 69670x54eb9d78,
69180x7c0903a6,
69190x4e800420, 69680x4e800420,
69200x0006000f, 69690x0006000f,
69210x7c041800, 69700x7c041800,
@@ -7008,12 +7057,12 @@ static const unsigned int build_actionlist[7218] = {
70080x80f00000, 70570x80f00000,
70090x3a100004, 70580x3a100004,
70100x54e815ba, 70590x54e815ba,
70600x7c11402e,
70610x7c0903a6,
70110x54ea5d78, 70620x54ea5d78,
70120x54ec9b78, 70630x54ec9b78,
70130x7c11402e,
70140x54f4dd78, 70640x54f4dd78,
70150x54eb9d78, 70650x54eb9d78,
70160x7c0903a6,
70170x4e800420, 70660x4e800420,
70180x00000000, 70670x00000000,
70190x0006000f, 70680x0006000f,
@@ -7046,9 +7095,9 @@ static const unsigned int build_actionlist[7218] = {
70460x00000000, 70950x00000000,
70470x5580007e, 70960x5580007e,
70480x000900ab, 70970x000900ab,
70490x7e100214,
70500x3e100000, 70980x3e100000,
70510x00098200, 70990x00098200,
71000x7e100214,
70520x9114fff8, 71010x9114fff8,
70530x9134fffc, 71020x9134fffc,
70540x00000000, 71030x00000000,
@@ -7056,12 +7105,12 @@ static const unsigned int build_actionlist[7218] = {
70560x80f00000, 71050x80f00000,
70570x3a100004, 71060x3a100004,
70580x54e815ba, 71070x54e815ba,
71080x7c11402e,
71090x7c0903a6,
70590x54ea5d78, 71100x54ea5d78,
70600x54ec9b78, 71110x54ec9b78,
70610x7c11402e,
70620x54f4dd78, 71120x54f4dd78,
70630x54eb9d78, 71130x54eb9d78,
70640x7c0903a6,
70650x4e800420, 71140x4e800420,
70660x00000000, 71150x00000000,
70670x7c810808, 71160x7c810808,
@@ -7069,30 +7118,30 @@ static const unsigned int build_actionlist[7218] = {
70690x80f00000, 71180x80f00000,
70700x3a100004, 71190x3a100004,
70710x54e815ba, 71200x54e815ba,
71210x7c11402e,
71220x7c0903a6,
70720x54ea5d78, 71230x54ea5d78,
70730x54ec9b78, 71240x54ec9b78,
70740x7c11402e,
70750x54f4dd78, 71250x54f4dd78,
70760x54eb9d78, 71260x54eb9d78,
70770x7c0903a6,
70780x4e800420, 71270x4e800420,
70790x00000000, 71280x00000000,
70800x7c810808, 71290x7c810808,
70810x00000000, 71300x00000000,
70820x5580007e, 71310x5580007e,
70830x000900ab, 71320x000900ab,
70840x7e100214,
70850x3e100000, 71330x3e100000,
70860x00098200, 71340x00098200,
71350x7e100214,
70870x80f00000, 71360x80f00000,
70880x3a100004, 71370x3a100004,
70890x54e815ba, 71380x54e815ba,
71390x7c11402e,
71400x7c0903a6,
70900x54ea5d78, 71410x54ea5d78,
70910x54ec9b78, 71420x54ec9b78,
70920x7c11402e,
70930x54f4dd78, 71430x54f4dd78,
70940x54eb9d78, 71440x54eb9d78,
70950x7c0903a6,
70960x4e800420, 71450x4e800420,
70970x00000000, 71460x00000000,
70980x7c810808, 71470x7c810808,
@@ -7118,12 +7167,12 @@ static const unsigned int build_actionlist[7218] = {
71180x7c810808, 71670x7c810808,
71190x00000000, 71680x00000000,
71200x54e815ba, 71690x54e815ba,
71700x7c11402e,
71710x7c0903a6,
71210x54ea5d78, 71720x54ea5d78,
71220x54ec9b78, 71730x54ec9b78,
71230x7c11402e,
71240x54f4dd78, 71740x54f4dd78,
71250x54eb9d78, 71750x54eb9d78,
71260x7c0903a6,
71270x4e800420, 71760x4e800420,
71280x00000000, 71770x00000000,
71290x0006000d, 71780x0006000d,
@@ -7174,12 +7223,12 @@ static const unsigned int build_actionlist[7218] = {
71740x0005080b, 72230x0005080b,
71750x0006000d, 72240x0006000d,
71760x54e815ba, 72250x54e815ba,
72260x7c11402e,
72270x7c0903a6,
71770x54ea5d78, 72280x54ea5d78,
71780x54ec9b78, 72290x54ec9b78,
71790x7c11402e,
71800x54f4dd78, 72300x54f4dd78,
71810x54eb9d78, 72310x54eb9d78,
71820x7c0903a6,
71830x4e800420, 72320x4e800420,
71840x0006000e, 72330x0006000e,
71850x38000000, 72340x38000000,
@@ -7215,11 +7264,11 @@ static const unsigned int build_actionlist[7218] = {
72150x90110000, 72640x90110000,
72160x00098200, 72650x00098200,
72170x4e800421, 72660x4e800421,
72180x81120000, 72670x81d20000,
72190x00098200, 72680x00098200,
72200x546c1800, 72690x546c1800,
72210x000900a1, 72700x000900a1,
72220x81d20000, 72710x81120000,
72230x00098200, 72720x00098200,
72240x38000000, 72730x38000000,
72250x00098200, 72740x00098200,
@@ -7376,7 +7425,6 @@ enum {
7376 GLOB_vm_ffi_call, 7425 GLOB_vm_ffi_call,
7377 GLOB_BC_ISEQN_Z, 7426 GLOB_BC_ISEQN_Z,
7378 GLOB_BC_ISNEN_Z, 7427 GLOB_BC_ISNEN_Z,
7379 GLOB_BC_MODVNI_Z,
7380 GLOB_BC_MODVN_Z, 7428 GLOB_BC_MODVN_Z,
7381 GLOB_BC_TGETS_Z, 7429 GLOB_BC_TGETS_Z,
7382 GLOB_BC_TSETS_Z, 7430 GLOB_BC_TSETS_Z,
@@ -7526,7 +7574,6 @@ static const char *const globnames[] = {
7526 "vm_ffi_call", 7574 "vm_ffi_call",
7527 "BC_ISEQN_Z", 7575 "BC_ISEQN_Z",
7528 "BC_ISNEN_Z", 7576 "BC_ISNEN_Z",
7529 "BC_MODVNI_Z",
7530 "BC_MODVN_Z", 7577 "BC_MODVN_Z",
7531 "BC_TGETS_Z", 7578 "BC_TGETS_Z",
7532 "BC_TSETS_Z", 7579 "BC_TSETS_Z",
@@ -7611,389 +7658,389 @@ static void build_subroutines(BuildCtx *ctx)
7611{ 7658{
7612 dasm_put(Dst, 0); 7659 dasm_put(Dst, 0);
7613 dasm_put(Dst, 1, FRAME_P, LJ_TTRUE, FRAME_TYPE, FRAME_C, ~LJ_VMST_C, Dt1(->base), DISPATCH_GL(vmstate), 31-3, Dt1(->top)); 7660 dasm_put(Dst, 1, FRAME_P, LJ_TTRUE, FRAME_TYPE, FRAME_C, ~LJ_VMST_C, Dt1(->base), DISPATCH_GL(vmstate), 31-3, Dt1(->top));
7614 dasm_put(Dst, 55, Dt1(->cframe), 184+(14-14)*4, 40+(14-14)*8, 184+(15-14)*4, 40+(15-14)*8, 184+(16-14)*4, 40+(16-14)*8, 184+(17-14)*4, 40+(17-14)*8, 184+(18-14)*4, 40+(18-14)*8, 184+(19-14)*4, 40+(19-14)*8, 184+(20-14)*4, 40+(20-14)*8, 184+(21-14)*4, 40+(21-14)*8, 184+(22-14)*4, 40+(22-14)*8, 184+(23-14)*4, 40+(23-14)*8); 7661 dasm_put(Dst, 55, Dt1(->cframe), 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);
7615 dasm_put(Dst, 103, 184+(24-14)*4, 40+(24-14)*8, 184+(25-14)*4, 40+(25-14)*8, 184+(26-14)*4, 40+(26-14)*8, 184+(27-14)*4, 40+(27-14)*8, 184+(28-14)*4, 40+(28-14)*8, 184+(29-14)*4, 40+(29-14)*8, 184+(30-14)*4, 40+(30-14)*8, 184+(31-14)*4, 40+(31-14)*8, Dt1(->maxstack)); 7662 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));
7616 dasm_put(Dst, 152, 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); 7663 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);
7617 dasm_put(Dst, 215, DISPATCH_GL(vmstate), LUA_MINSTACK, Dt1(->base), Dt1(->top), 32-3, Dt1(->base), Dt1(->top), Dt7(->pc), 184+(14-14)*4, 40+(14-14)*8, 184+(15-14)*4, 40+(15-14)*8, 184+(16-14)*4, 40+(16-14)*8, 184+(17-14)*4); 7664 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);
7618 dasm_put(Dst, 275, 40+(17-14)*8, 184+(18-14)*4, 40+(18-14)*8, 184+(19-14)*4, 40+(19-14)*8, 184+(20-14)*4, 40+(20-14)*8, 184+(21-14)*4, 40+(21-14)*8, 184+(22-14)*4, 40+(22-14)*8, 184+(23-14)*4, 40+(23-14)*8, 184+(24-14)*4, 40+(24-14)*8, 184+(25-14)*4, 40+(25-14)*8, 184+(26-14)*4, 40+(26-14)*8, 184+(27-14)*4, 40+(27-14)*8, 184+(28-14)*4); 7665 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);
7619 dasm_put(Dst, 322, 40+(28-14)*8, 184+(29-14)*4, 40+(29-14)*8, 184+(30-14)*4, 40+(30-14)*8, 184+(31-14)*4, 40+(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)); 7666 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));
7620 dasm_put(Dst, 389, 184+(14-14)*4, 40+(14-14)*8, 184+(15-14)*4, 40+(15-14)*8, 184+(16-14)*4, 40+(16-14)*8, 184+(17-14)*4, 40+(17-14)*8, 184+(18-14)*4, 40+(18-14)*8, 184+(19-14)*4, 40+(19-14)*8, 184+(20-14)*4, 40+(20-14)*8, 184+(21-14)*4, 40+(21-14)*8, 184+(22-14)*4, 40+(22-14)*8, 184+(23-14)*4); 7667 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);
7621 dasm_put(Dst, 435, 40+(23-14)*8, 184+(24-14)*4, 40+(24-14)*8, 184+(25-14)*4, 40+(25-14)*8, 184+(26-14)*4, 40+(26-14)*8, 184+(27-14)*4, 40+(27-14)*8, 184+(28-14)*4, 40+(28-14)*8, 184+(29-14)*4, 40+(29-14)*8, 184+(30-14)*4, 40+(30-14)*8, 184+(31-14)*4, 40+(31-14)*8, FRAME_CP, 184+(14-14)*4, 40+(14-14)*8); 7668 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);
7622 dasm_put(Dst, 482, 184+(15-14)*4, 40+(15-14)*8, 184+(16-14)*4, 40+(16-14)*8, 184+(17-14)*4, 40+(17-14)*8, 184+(18-14)*4, 40+(18-14)*8, 184+(19-14)*4, 40+(19-14)*8, 184+(20-14)*4, 40+(20-14)*8, 184+(21-14)*4, 40+(21-14)*8, 184+(22-14)*4, 40+(22-14)*8, 184+(23-14)*4, 40+(23-14)*8, 184+(24-14)*4, 40+(24-14)*8, 184+(25-14)*4, 40+(25-14)*8); 7669 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);
7623 dasm_put(Dst, 528, 184+(26-14)*4, 40+(26-14)*8, 184+(27-14)*4, 40+(27-14)*8, 184+(28-14)*4, 40+(28-14)*8, 184+(29-14)*4, 40+(29-14)*8, 184+(30-14)*4, 40+(30-14)*8, 184+(31-14)*4, 40+(31-14)*8, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, Dt1(->base), LJ_TISNUM, Dt1(->top)); 7670 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));
7624 dasm_put(Dst, 578, ~LJ_VMST_INTERP, LJ_TNIL, DISPATCH_GL(vmstate), LJ_TFUNC, Dt7(->pc), 184+(14-14)*4, 40+(14-14)*8, 184+(15-14)*4, 40+(15-14)*8, 184+(16-14)*4, 40+(16-14)*8, 184+(17-14)*4, 40+(17-14)*8, 184+(18-14)*4, 40+(18-14)*8, 184+(19-14)*4, 40+(19-14)*8, 184+(20-14)*4); 7671 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);
7625 dasm_put(Dst, 645, 40+(20-14)*8, 184+(21-14)*4, 40+(21-14)*8, 184+(22-14)*4, 40+(22-14)*8, 184+(23-14)*4, 40+(23-14)*8, 184+(24-14)*4, 40+(24-14)*8, 184+(25-14)*4, 40+(25-14)*8, 184+(26-14)*4, 40+(26-14)*8, 184+(27-14)*4, 40+(27-14)*8, 184+(28-14)*4, 40+(28-14)*8, 184+(29-14)*4, 40+(29-14)*8, 184+(30-14)*4, 40+(30-14)*8, 184+(31-14)*4); 7672 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);
7626 dasm_put(Dst, 691, 40+(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)); 7673 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));
7627 dasm_put(Dst, 765, LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR); 7674 dasm_put(Dst, 775, LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR);
7628 if (!LJ_DUALNUM) { 7675 if (!LJ_DUALNUM) {
7629 dasm_put(Dst, 790); 7676 dasm_put(Dst, 800);
7630 } 7677 }
7631 dasm_put(Dst, 794, DISPATCH_GL(tmptv)); 7678 dasm_put(Dst, 804, DISPATCH_GL(tmptv));
7632 if (LJ_DUALNUM) { 7679 if (LJ_DUALNUM) {
7633 dasm_put(Dst, 799); 7680 dasm_put(Dst, 809);
7634 } else { 7681 } else {
7635 dasm_put(Dst, 802); 7682 dasm_put(Dst, 812);
7636 } 7683 }
7637 dasm_put(Dst, 804, Dt1(->base), FRAME_CONT, Dt1(->top), DISPATCH_GL(tmptv), LJ_TSTR, DISPATCH_GL(tmptv), LJ_TTAB, DISPATCH_GL(tmptv2), LJ_TSTR); 7684 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);
7638 if (!LJ_DUALNUM) { 7685 if (!LJ_DUALNUM) {
7639 dasm_put(Dst, 872); 7686 dasm_put(Dst, 882);
7640 } 7687 }
7641 dasm_put(Dst, 876, DISPATCH_GL(tmptv)); 7688 dasm_put(Dst, 886, DISPATCH_GL(tmptv));
7642 if (LJ_DUALNUM) { 7689 if (LJ_DUALNUM) {
7643 dasm_put(Dst, 881); 7690 dasm_put(Dst, 891);
7644 } else { 7691 } else {
7645 dasm_put(Dst, 884); 7692 dasm_put(Dst, 894);
7646 } 7693 }
7647 dasm_put(Dst, 886, Dt1(->base), FRAME_CONT, Dt1(->top)); 7694 dasm_put(Dst, 896, Dt1(->base), FRAME_CONT, Dt1(->top));
7648 if (LJ_DUALNUM) { 7695 if (LJ_DUALNUM) {
7649 dasm_put(Dst, 931); 7696 dasm_put(Dst, 941);
7650 } else { 7697 } else {
7651 dasm_put(Dst, 933); 7698 dasm_put(Dst, 943);
7652 } 7699 }
7653 dasm_put(Dst, 935); 7700 dasm_put(Dst, 945);
7654 if (LJ_DUALNUM) { 7701 if (LJ_DUALNUM) {
7655 dasm_put(Dst, 937); 7702 dasm_put(Dst, 947);
7656 } else { 7703 } else {
7657 dasm_put(Dst, 939); 7704 dasm_put(Dst, 949);
7658 } 7705 }
7659 dasm_put(Dst, 941, Dt1(->base), -(BCBIAS_J*4 >> 16), LJ_TTRUE, LJ_TTRUE, Dt1(->base)); 7706 dasm_put(Dst, 951, Dt1(->base), -(BCBIAS_J*4 >> 16), LJ_TTRUE, LJ_TTRUE, Dt1(->base));
7660#if LJ_HASFFI 7707#if LJ_HASFFI
7661 dasm_put(Dst, 1004, Dt1(->base)); 7708 dasm_put(Dst, 1014, Dt1(->base));
7662#endif 7709#endif
7663 dasm_put(Dst, 1015); 7710 dasm_put(Dst, 1025);
7664 if (LJ_DUALNUM) { 7711 if (LJ_DUALNUM) {
7665 dasm_put(Dst, 1022); 7712 dasm_put(Dst, 1032);
7666 } 7713 }
7667 dasm_put(Dst, 1027); 7714 dasm_put(Dst, 1037);
7668 if (LJ_DUALNUM) { 7715 if (LJ_DUALNUM) {
7669 dasm_put(Dst, 1041); 7716 dasm_put(Dst, 1051);
7670 } 7717 }
7671 dasm_put(Dst, 1044); 7718 dasm_put(Dst, 1054);
7672 if (LJ_DUALNUM) { 7719 if (LJ_DUALNUM) {
7673 dasm_put(Dst, 1047); 7720 dasm_put(Dst, 1057);
7674 } 7721 }
7675 dasm_put(Dst, 1050, Dt1(->base), FRAME_CONT); 7722 dasm_put(Dst, 1060, Dt1(->base), FRAME_CONT);
7676#ifdef LUAJIT_ENABLE_LUA52COMPAT 7723#ifdef LUAJIT_ENABLE_LUA52COMPAT
7677 dasm_put(Dst, 1074); 7724 dasm_put(Dst, 1084);
7678#endif 7725#endif
7679 dasm_put(Dst, 1076, Dt1(->base)); 7726 dasm_put(Dst, 1086, Dt1(->base));
7680#ifdef LUAJIT_ENABLE_LUA52COMPAT 7727#ifdef LUAJIT_ENABLE_LUA52COMPAT
7681 dasm_put(Dst, 1084); 7728 dasm_put(Dst, 1094);
7682#else 7729#else
7683 dasm_put(Dst, 1091); 7730 dasm_put(Dst, 1101);
7684#endif 7731#endif
7685 dasm_put(Dst, 1094, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base)); 7732 dasm_put(Dst, 1104, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base));
7686#if LJ_HASJIT 7733#if LJ_HASJIT
7687 dasm_put(Dst, 1142); 7734 dasm_put(Dst, 1152);
7688#endif 7735#endif
7689 dasm_put(Dst, 1144); 7736 dasm_put(Dst, 1154);
7690#if LJ_HASJIT 7737#if LJ_HASJIT
7691 dasm_put(Dst, 1146, BC_JFORI); 7738 dasm_put(Dst, 1156, BC_JFORI);
7692#endif 7739#endif
7693 dasm_put(Dst, 1149); 7740 dasm_put(Dst, 1159);
7694#if LJ_HASJIT 7741#if LJ_HASJIT
7695 dasm_put(Dst, 1151, BC_JFORI); 7742 dasm_put(Dst, 1161, BC_JFORI);
7696#endif 7743#endif
7697 dasm_put(Dst, 1154, BC_FORI, LJ_TFALSE, ~LJ_TISNUM+1, 31-3, Dt8(->upvalue), LJ_TTAB, Dt6(->metatable)); 7744 dasm_put(Dst, 1164, BC_FORI, LJ_TFALSE, ~LJ_TISNUM+1, 31-3, Dt8(->upvalue), LJ_TTAB, Dt6(->metatable));
7698 dasm_put(Dst, 1217, 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)); 7745 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));
7699 dasm_put(Dst, 1265, 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)); 7746 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));
7700 dasm_put(Dst, 1320, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist), LJ_TTAB, LJ_TSTR, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), Dt1(->base)); 7747 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));
7701 dasm_put(Dst, 1380, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 7748 dasm_put(Dst, 1390, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
7702 if (LJ_DUALNUM) { 7749 if (LJ_DUALNUM) {
7703 dasm_put(Dst, 1390); 7750 dasm_put(Dst, 1400);
7704 } else { 7751 } else {
7705 dasm_put(Dst, 1393); 7752 dasm_put(Dst, 1403);
7706 } 7753 }
7707 dasm_put(Dst, 1396, LJ_TSTR, LJ_TTAB, Dt1(->base), Dt1(->top), LJ_TNIL, (2+1)*8, LJ_TTAB); 7754 dasm_put(Dst, 1406, LJ_TSTR, LJ_TTAB, Dt1(->base), Dt1(->top), LJ_TNIL, (2+1)*8, LJ_TTAB);
7708#ifdef LUAJIT_ENABLE_LUA52COMPAT 7755#ifdef LUAJIT_ENABLE_LUA52COMPAT
7709 dasm_put(Dst, 1447, Dt6(->metatable), Dt8(->upvalue[0])); 7756 dasm_put(Dst, 1457, Dt6(->metatable), Dt8(->upvalue[0]));
7710#else 7757#else
7711 dasm_put(Dst, 1456, Dt8(->upvalue[0])); 7758 dasm_put(Dst, 1466, Dt8(->upvalue[0]));
7712#endif 7759#endif
7713 dasm_put(Dst, 1460, (3+1)*8); 7760 dasm_put(Dst, 1470, (3+1)*8);
7714 if (LJ_DUALNUM) { 7761 if (LJ_DUALNUM) {
7715 dasm_put(Dst, 1472); 7762 dasm_put(Dst, 1482);
7716 } else { 7763 } else {
7717 dasm_put(Dst, 1474); 7764 dasm_put(Dst, 1484);
7718 } 7765 }
7719 dasm_put(Dst, 1476, LJ_TTAB); 7766 dasm_put(Dst, 1486, LJ_TTAB);
7720 if (LJ_DUALNUM) { 7767 if (LJ_DUALNUM) {
7721 dasm_put(Dst, 1483); 7768 dasm_put(Dst, 1493);
7722 } else { 7769 } else {
7723 dasm_put(Dst, 1488); 7770 dasm_put(Dst, 1498);
7724 } 7771 }
7725 dasm_put(Dst, 1500, Dt6(->asize), Dt6(->array)); 7772 dasm_put(Dst, 1510, Dt6(->asize), Dt6(->array));
7726 if (!LJ_DUALNUM) { 7773 if (!LJ_DUALNUM) {
7727 dasm_put(Dst, 1505); 7774 dasm_put(Dst, 1515);
7728 } 7775 }
7729 dasm_put(Dst, 1507); 7776 dasm_put(Dst, 1517);
7730 if (LJ_DUALNUM) { 7777 if (LJ_DUALNUM) {
7731 dasm_put(Dst, 1511, 31-3); 7778 dasm_put(Dst, 1521, 31-3);
7732 } else { 7779 } else {
7733 dasm_put(Dst, 1516, 31-3); 7780 dasm_put(Dst, 1526, 31-3);
7734 } 7781 }
7735 dasm_put(Dst, 1520, LJ_TNIL, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8, LJ_TTAB); 7782 dasm_put(Dst, 1530, LJ_TNIL, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8, LJ_TTAB);
7736#ifdef LUAJIT_ENABLE_LUA52COMPAT 7783#ifdef LUAJIT_ENABLE_LUA52COMPAT
7737 dasm_put(Dst, 1568, Dt6(->metatable), Dt8(->upvalue[0])); 7784 dasm_put(Dst, 1578, Dt6(->metatable), Dt8(->upvalue[0]));
7738#else 7785#else
7739 dasm_put(Dst, 1577, Dt8(->upvalue[0])); 7786 dasm_put(Dst, 1587, Dt8(->upvalue[0]));
7740#endif 7787#endif
7741 if (LJ_DUALNUM) { 7788 if (LJ_DUALNUM) {
7742 dasm_put(Dst, 1581); 7789 dasm_put(Dst, 1591);
7743 } else { 7790 } else {
7744 dasm_put(Dst, 1583); 7791 dasm_put(Dst, 1593);
7745 } 7792 }
7746 dasm_put(Dst, 1585, (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)); 7793 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));
7747 dasm_put(Dst, 1646, 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)); 7794 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));
7748 dasm_put(Dst, 1708, Dt1(->maxstack), Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8, 32-3); 7795 dasm_put(Dst, 1718, Dt1(->maxstack), Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8, 32-3);
7749 dasm_put(Dst, 1771, 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); 7796 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);
7750 dasm_put(Dst, 1830, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, 32-3, Dt1(->cframe)); 7797 dasm_put(Dst, 1840, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, 32-3, Dt1(->cframe));
7751 dasm_put(Dst, 1887, Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status)); 7798 dasm_put(Dst, 1897, Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status));
7752 if (LJ_DUALNUM) { 7799 if (LJ_DUALNUM) {
7753 dasm_put(Dst, 1912); 7800 dasm_put(Dst, 1922);
7754 } 7801 }
7755 dasm_put(Dst, 1933, (1+1)*8, FRAME_TYPE); 7802 dasm_put(Dst, 1943, (1+1)*8, FRAME_TYPE);
7756 if (LJ_DUALNUM) { 7803 if (LJ_DUALNUM) {
7757 dasm_put(Dst, 1975, 31-11, 32-21, 31-11); 7804 dasm_put(Dst, 1985, 31-11, 32-21, 31-11);
7758 dasm_put(Dst, 2057, 31-11, 32-21, 31-11); 7805 dasm_put(Dst, 2067, 31-11, 32-21, 31-11);
7759 } else { 7806 } else {
7760 dasm_put(Dst, 2111); 7807 dasm_put(Dst, 2121);
7761 } 7808 }
7762 dasm_put(Dst, 2138); 7809 dasm_put(Dst, 2148);
7763 dasm_put(Dst, 2197); 7810 dasm_put(Dst, 2207);
7764 dasm_put(Dst, 2255); 7811 dasm_put(Dst, 2265);
7765 dasm_put(Dst, 2311, Dt8(->upvalue[0])); 7812 dasm_put(Dst, 2321, Dt8(->upvalue[0]));
7766 dasm_put(Dst, 2377); 7813 dasm_put(Dst, 2387);
7767 if (LJ_DUALNUM) { 7814 if (LJ_DUALNUM) {
7768 dasm_put(Dst, 2381); 7815 dasm_put(Dst, 2391);
7769 } else { 7816 } else {
7770 dasm_put(Dst, 2396); 7817 dasm_put(Dst, 2406);
7771 } 7818 }
7772 dasm_put(Dst, 2414, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv)); 7819 dasm_put(Dst, 2424, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv));
7773 if (!LJ_DUALNUM) { 7820 if (!LJ_DUALNUM) {
7774 dasm_put(Dst, 2436); 7821 dasm_put(Dst, 2446);
7775 } 7822 }
7776 dasm_put(Dst, 2441, (2+1)*8); 7823 dasm_put(Dst, 2451, (2+1)*8);
7777 if (LJ_DUALNUM) { 7824 if (LJ_DUALNUM) {
7778 dasm_put(Dst, 2445); 7825 dasm_put(Dst, 2455);
7779 } else { 7826 } else {
7780 dasm_put(Dst, 2448); 7827 dasm_put(Dst, 2458);
7781 } 7828 }
7782 dasm_put(Dst, 2450, (2+1)*8); 7829 dasm_put(Dst, 2460, (2+1)*8);
7783 if (LJ_DUALNUM) { 7830 if (LJ_DUALNUM) {
7784 dasm_put(Dst, 2472); 7831 dasm_put(Dst, 2482);
7785 } else { 7832 } else {
7786 dasm_put(Dst, 2541); 7833 dasm_put(Dst, 2551);
7787 } 7834 }
7788 if (LJ_DUALNUM) { 7835 if (LJ_DUALNUM) {
7789 dasm_put(Dst, 2566); 7836 dasm_put(Dst, 2576);
7790 } else { 7837 } else {
7791 dasm_put(Dst, 2635); 7838 dasm_put(Dst, 2645);
7792 } 7839 }
7793 dasm_put(Dst, 2660, LJ_TSTR, Dt5(->len), LJ_TSTR, Dt5(->len)); 7840 dasm_put(Dst, 2670, LJ_TSTR, Dt5(->len), LJ_TSTR, Dt5(->len));
7794 if (LJ_DUALNUM) { 7841 if (LJ_DUALNUM) {
7795 dasm_put(Dst, 2687, Dt5([1]), (0+1)*8); 7842 dasm_put(Dst, 2697, Dt5([1]), (0+1)*8);
7796 } else { 7843 } else {
7797 dasm_put(Dst, 2699, Dt5([1]), 31-3); 7844 dasm_put(Dst, 2709, Dt5([1]), 31-3);
7798 } 7845 }
7799 dasm_put(Dst, 2715, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 7846 dasm_put(Dst, 2725, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
7800 if (LJ_DUALNUM) { 7847 if (LJ_DUALNUM) {
7801 dasm_put(Dst, 2726); 7848 dasm_put(Dst, 2736);
7802 } else { 7849 } else {
7803 dasm_put(Dst, 2734); 7850 dasm_put(Dst, 2744);
7804 } 7851 }
7805 dasm_put(Dst, 2745, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 7852 dasm_put(Dst, 2755, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
7806 if (!LJ_DUALNUM) { 7853 if (!LJ_DUALNUM) {
7807 dasm_put(Dst, 2773); 7854 dasm_put(Dst, 2783);
7808 } 7855 }
7809 dasm_put(Dst, 2775); 7856 dasm_put(Dst, 2785);
7810 if (LJ_DUALNUM) { 7857 if (LJ_DUALNUM) {
7811 dasm_put(Dst, 2781); 7858 dasm_put(Dst, 2791);
7812 } else { 7859 } else {
7813 dasm_put(Dst, 2783); 7860 dasm_put(Dst, 2793);
7814 } 7861 }
7815 dasm_put(Dst, 2785); 7862 dasm_put(Dst, 2795);
7816 if (LJ_DUALNUM) { 7863 if (LJ_DUALNUM) {
7817 dasm_put(Dst, 2789); 7864 dasm_put(Dst, 2799);
7818 } else { 7865 } else {
7819 dasm_put(Dst, 2798); 7866 dasm_put(Dst, 2808);
7820 } 7867 }
7821 dasm_put(Dst, 2809, LJ_TSTR); 7868 dasm_put(Dst, 2819, LJ_TSTR);
7822 if (!LJ_DUALNUM) { 7869 if (!LJ_DUALNUM) {
7823 dasm_put(Dst, 2814); 7870 dasm_put(Dst, 2824);
7824 } 7871 }
7825 dasm_put(Dst, 2818, Dt5(->len), sizeof(GCstr)-1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 7872 dasm_put(Dst, 2828, Dt5(->len), sizeof(GCstr)-1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
7826 if (LJ_DUALNUM) { 7873 if (LJ_DUALNUM) {
7827 dasm_put(Dst, 2868); 7874 dasm_put(Dst, 2878);
7828 } else { 7875 } else {
7829 dasm_put(Dst, 2870); 7876 dasm_put(Dst, 2880);
7830 } 7877 }
7831 dasm_put(Dst, 2872, LJ_TSTR); 7878 dasm_put(Dst, 2882, LJ_TSTR);
7832 if (LJ_DUALNUM) { 7879 if (LJ_DUALNUM) {
7833 dasm_put(Dst, 2879); 7880 dasm_put(Dst, 2889);
7834 } else { 7881 } else {
7835 dasm_put(Dst, 2883); 7882 dasm_put(Dst, 2893);
7836 } 7883 }
7837 dasm_put(Dst, 2890, 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)); 7884 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));
7838 dasm_put(Dst, 2943, 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)); 7885 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));
7839 dasm_put(Dst, 3001, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), LJ_TTAB); 7886 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);
7840 if (LJ_DUALNUM) { 7887 if (LJ_DUALNUM) {
7841 dasm_put(Dst, 3070);
7842 } else {
7843 dasm_put(Dst, 3080); 7888 dasm_put(Dst, 3080);
7844 }
7845 dasm_put(Dst, 3093);
7846 if (LJ_DUALNUM) {
7847 dasm_put(Dst, 3099);
7848 } else { 7889 } else {
7849 dasm_put(Dst, 3101); 7890 dasm_put(Dst, 3090);
7850 } 7891 }
7851 dasm_put(Dst, 3103); 7892 dasm_put(Dst, 3103);
7852 if (LJ_DUALNUM) { 7893 if (LJ_DUALNUM) {
7853 dasm_put(Dst, 3107); 7894 dasm_put(Dst, 3109);
7854 } else { 7895 } else {
7855 dasm_put(Dst, 3110); 7896 dasm_put(Dst, 3111);
7856 } 7897 }
7857 dasm_put(Dst, 3116); 7898 dasm_put(Dst, 3113);
7858 if (LJ_DUALNUM) { 7899 if (LJ_DUALNUM) {
7859 dasm_put(Dst, 3121); 7900 dasm_put(Dst, 3117);
7860 } else { 7901 } else {
7861 dasm_put(Dst, 3131); 7902 dasm_put(Dst, 3120);
7862 } 7903 }
7863 dasm_put(Dst, 3144); 7904 dasm_put(Dst, 3126);
7864 if (LJ_DUALNUM) { 7905 if (LJ_DUALNUM) {
7865 dasm_put(Dst, 3150); 7906 dasm_put(Dst, 3131);
7866 } else { 7907 } else {
7867 dasm_put(Dst, 3152); 7908 dasm_put(Dst, 3141);
7868 } 7909 }
7869 dasm_put(Dst, 3154); 7910 dasm_put(Dst, 3154);
7870 if (LJ_DUALNUM) { 7911 if (LJ_DUALNUM) {
7871 dasm_put(Dst, 3158); 7912 dasm_put(Dst, 3160);
7872 } else { 7913 } else {
7873 dasm_put(Dst, 3161); 7914 dasm_put(Dst, 3162);
7874 } 7915 }
7875 dasm_put(Dst, 3167); 7916 dasm_put(Dst, 3164);
7876 if (LJ_DUALNUM) { 7917 if (LJ_DUALNUM) {
7877 dasm_put(Dst, 3172); 7918 dasm_put(Dst, 3168);
7878 } else { 7919 } else {
7879 dasm_put(Dst, 3182); 7920 dasm_put(Dst, 3171);
7880 } 7921 }
7881 dasm_put(Dst, 3195); 7922 dasm_put(Dst, 3177);
7882 if (LJ_DUALNUM) { 7923 if (LJ_DUALNUM) {
7883 dasm_put(Dst, 3201); 7924 dasm_put(Dst, 3182);
7884 } else { 7925 } else {
7885 dasm_put(Dst, 3203); 7926 dasm_put(Dst, 3192);
7886 } 7927 }
7887 dasm_put(Dst, 3205); 7928 dasm_put(Dst, 3205);
7888 if (LJ_DUALNUM) { 7929 if (LJ_DUALNUM) {
7889 dasm_put(Dst, 3209); 7930 dasm_put(Dst, 3211);
7890 } else { 7931 } else {
7891 dasm_put(Dst, 3212); 7932 dasm_put(Dst, 3213);
7892 } 7933 }
7893 dasm_put(Dst, 3218); 7934 dasm_put(Dst, 3215);
7894 if (LJ_DUALNUM) { 7935 if (LJ_DUALNUM) {
7895 dasm_put(Dst, 3223); 7936 dasm_put(Dst, 3219);
7896 } else { 7937 } else {
7897 dasm_put(Dst, 3233); 7938 dasm_put(Dst, 3222);
7898 } 7939 }
7899 dasm_put(Dst, 3246); 7940 dasm_put(Dst, 3228);
7900 if (LJ_DUALNUM) { 7941 if (LJ_DUALNUM) {
7901 dasm_put(Dst, 3253); 7942 dasm_put(Dst, 3233);
7902 } else { 7943 } else {
7903 dasm_put(Dst, 3263); 7944 dasm_put(Dst, 3243);
7904 } 7945 }
7905 dasm_put(Dst, 3276); 7946 dasm_put(Dst, 3256);
7906 if (LJ_DUALNUM) { 7947 if (LJ_DUALNUM) {
7907 dasm_put(Dst, 3280); 7948 dasm_put(Dst, 3263);
7908 } else { 7949 } else {
7909 dasm_put(Dst, 3295); 7950 dasm_put(Dst, 3273);
7910 } 7951 }
7911 dasm_put(Dst, 3316); 7952 dasm_put(Dst, 3286);
7912 if (LJ_DUALNUM) { 7953 if (LJ_DUALNUM) {
7913 dasm_put(Dst, 3321); 7954 dasm_put(Dst, 3290);
7914 } else { 7955 } else {
7915 dasm_put(Dst, 3336); 7956 dasm_put(Dst, 3305);
7916 } 7957 }
7917 dasm_put(Dst, 3357); 7958 dasm_put(Dst, 3326);
7918 if (LJ_DUALNUM) { 7959 if (LJ_DUALNUM) {
7919 dasm_put(Dst, 3362); 7960 dasm_put(Dst, 3331);
7920 } else { 7961 } else {
7921 dasm_put(Dst, 3377); 7962 dasm_put(Dst, 3346);
7922 } 7963 }
7923 dasm_put(Dst, 3398); 7964 dasm_put(Dst, 3367);
7924 if (LJ_DUALNUM) { 7965 if (LJ_DUALNUM) {
7925 dasm_put(Dst, 3403); 7966 dasm_put(Dst, 3372);
7926 } else { 7967 } else {
7927 dasm_put(Dst, 3418); 7968 dasm_put(Dst, 3387);
7928 } 7969 }
7929 dasm_put(Dst, 3439); 7970 dasm_put(Dst, 3408);
7930 if (LJ_DUALNUM) { 7971 if (LJ_DUALNUM) {
7931 dasm_put(Dst, 3443); 7972 dasm_put(Dst, 3413);
7932 } else { 7973 } else {
7933 dasm_put(Dst, 3458); 7974 dasm_put(Dst, 3428);
7934 } 7975 }
7935 dasm_put(Dst, 3479); 7976 dasm_put(Dst, 3449);
7936 if (LJ_DUALNUM) { 7977 if (LJ_DUALNUM) {
7937 dasm_put(Dst, 3484); 7978 dasm_put(Dst, 3453);
7938 } else { 7979 } else {
7939 dasm_put(Dst, 3494); 7980 dasm_put(Dst, 3468);
7940 } 7981 }
7982 dasm_put(Dst, 3489);
7941 if (LJ_DUALNUM) { 7983 if (LJ_DUALNUM) {
7942 dasm_put(Dst, 3507); 7984 dasm_put(Dst, 3494);
7943 } else { 7985 } else {
7944 dasm_put(Dst, 3510); 7986 dasm_put(Dst, 3504);
7945 } 7987 }
7946 dasm_put(Dst, 3516);
7947 if (LJ_DUALNUM) { 7988 if (LJ_DUALNUM) {
7948 dasm_put(Dst, 3524); 7989 dasm_put(Dst, 3517);
7990 } else {
7991 dasm_put(Dst, 3520);
7949 } 7992 }
7950 dasm_put(Dst, 3532); 7993 dasm_put(Dst, 3526);
7951 if (LJ_DUALNUM) { 7994 if (LJ_DUALNUM) {
7952 dasm_put(Dst, 3534); 7995 dasm_put(Dst, 3534);
7953 } 7996 }
7954 dasm_put(Dst, 3542, Dt8(->f), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), 31-3, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK); 7997 dasm_put(Dst, 3542);
7955 dasm_put(Dst, 3605, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 7998 if (LJ_DUALNUM) {
7999 dasm_put(Dst, 3544);
8000 }
8001 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);
8002 dasm_put(Dst, 3615, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
7956#if LJ_HASJIT 8003#if LJ_HASJIT
7957 dasm_put(Dst, 3631); 8004 dasm_put(Dst, 3641);
7958#endif 8005#endif
7959 dasm_put(Dst, 3633, 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)); 8006 dasm_put(Dst, 3643, 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));
7960 dasm_put(Dst, 3680, GG_DISP2STATIC); 8007 dasm_put(Dst, 3690, GG_DISP2STATIC);
7961#if LJ_HASJIT 8008#if LJ_HASJIT
7962 dasm_put(Dst, 3698); 8009 dasm_put(Dst, 3708);
7963#endif 8010#endif
7964 dasm_put(Dst, 3700); 8011 dasm_put(Dst, 3710);
7965#if LJ_HASJIT 8012#if LJ_HASJIT
7966 dasm_put(Dst, 3703); 8013 dasm_put(Dst, 3713);
7967#endif 8014#endif
7968 dasm_put(Dst, 3706); 8015 dasm_put(Dst, 3716);
7969#if LJ_HASJIT 8016#if LJ_HASJIT
7970 dasm_put(Dst, 3708); 8017 dasm_put(Dst, 3718);
7971#endif 8018#endif
7972 dasm_put(Dst, 3711, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 8019 dasm_put(Dst, 3721, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
7973#if LJ_HASJIT 8020#if LJ_HASJIT
7974 dasm_put(Dst, 3733); 8021 dasm_put(Dst, 3743);
7975#endif 8022#endif
7976 dasm_put(Dst, 3735); 8023 dasm_put(Dst, 3745);
7977#if LJ_HASJIT 8024#if LJ_HASJIT
7978 dasm_put(Dst, 3737); 8025 dasm_put(Dst, 3747);
7979#endif 8026#endif
7980 dasm_put(Dst, 3739); 8027 dasm_put(Dst, 3749);
7981#if LJ_HASJIT 8028#if LJ_HASJIT
7982 dasm_put(Dst, 3747); 8029 dasm_put(Dst, 3757);
7983#endif 8030#endif
7984 dasm_put(Dst, 3750); 8031 dasm_put(Dst, 3760);
7985#if LJ_HASJIT 8032#if LJ_HASJIT
7986 dasm_put(Dst, 3763); 8033 dasm_put(Dst, 3773);
7987#endif 8034#endif
7988 dasm_put(Dst, 3765); 8035 dasm_put(Dst, 3775);
7989#if LJ_HASJIT 8036#if LJ_HASJIT
7990 dasm_put(Dst, 3767); 8037 dasm_put(Dst, 3777);
7991#endif 8038#endif
7992 dasm_put(Dst, 3769); 8039 dasm_put(Dst, 3779);
7993#if LJ_HASFFI 8040#if LJ_HASFFI
7994#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V) 8041#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V)
7995 dasm_put(Dst, 3833, 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])); 8042 dasm_put(Dst, 3843, 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]));
7996 dasm_put(Dst, 3889, 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])); 8043 dasm_put(Dst, 3899, 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]));
7997#endif 8044#endif
7998} 8045}
7999 8046
@@ -8001,7 +8048,7 @@ static void build_subroutines(BuildCtx *ctx)
8001static void build_ins(BuildCtx *ctx, BCOp op, int defop) 8048static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8002{ 8049{
8003 int vk = 0; 8050 int vk = 0;
8004 dasm_put(Dst, 3920, defop); 8051 dasm_put(Dst, 3930, defop);
8005 8052
8006 switch (op) { 8053 switch (op) {
8007 8054
@@ -8011,224 +8058,224 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8011 8058
8012 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 8059 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
8013 if (LJ_DUALNUM) { 8060 if (LJ_DUALNUM) {
8014 dasm_put(Dst, 3922, -(BCBIAS_J*4 >> 16)); 8061 dasm_put(Dst, 3932, -(BCBIAS_J*4 >> 16));
8015 if (op == BC_ISLT) { 8062 if (op == BC_ISLT) {
8016 dasm_put(Dst, 3939); 8063 dasm_put(Dst, 3949);
8017 } else if (op == BC_ISGE) { 8064 } else if (op == BC_ISGE) {
8018 dasm_put(Dst, 3942); 8065 dasm_put(Dst, 3952);
8019 } else if (op == BC_ISLE) { 8066 } else if (op == BC_ISLE) {
8020 dasm_put(Dst, 3945); 8067 dasm_put(Dst, 3955);
8021 } else { 8068 } else {
8022 dasm_put(Dst, 3948); 8069 dasm_put(Dst, 3958);
8023 } 8070 }
8024 dasm_put(Dst, 3951); 8071 dasm_put(Dst, 3961);
8025 if (op == BC_ISLT) { 8072 if (op == BC_ISLT) {
8026 dasm_put(Dst, 3990); 8073 dasm_put(Dst, 4000);
8027 } else if (op == BC_ISGE) { 8074 } else if (op == BC_ISGE) {
8028 dasm_put(Dst, 3993); 8075 dasm_put(Dst, 4003);
8029 } else if (op == BC_ISLE) { 8076 } else if (op == BC_ISLE) {
8030 dasm_put(Dst, 3996); 8077 dasm_put(Dst, 4006);
8031 } else { 8078 } else {
8032 dasm_put(Dst, 4000); 8079 dasm_put(Dst, 4010);
8033 } 8080 }
8034 dasm_put(Dst, 4004); 8081 dasm_put(Dst, 4014);
8035 } else { 8082 } else {
8036 dasm_put(Dst, 4007, -(BCBIAS_J*4 >> 16)); 8083 dasm_put(Dst, 4017, -(BCBIAS_J*4 >> 16));
8037 if (op == BC_ISLT) { 8084 if (op == BC_ISLT) {
8038 dasm_put(Dst, 4024); 8085 dasm_put(Dst, 4034);
8039 } else if (op == BC_ISGE) { 8086 } else if (op == BC_ISGE) {
8040 dasm_put(Dst, 4027); 8087 dasm_put(Dst, 4037);
8041 } else if (op == BC_ISLE) { 8088 } else if (op == BC_ISLE) {
8042 dasm_put(Dst, 4030); 8089 dasm_put(Dst, 4040);
8043 } else { 8090 } else {
8044 dasm_put(Dst, 4034); 8091 dasm_put(Dst, 4044);
8045 } 8092 }
8046 dasm_put(Dst, 4038); 8093 dasm_put(Dst, 4048);
8047 } 8094 }
8048 break; 8095 break;
8049 8096
8050 case BC_ISEQV: case BC_ISNEV: 8097 case BC_ISEQV: case BC_ISNEV:
8051 vk = op == BC_ISEQV; 8098 vk = op == BC_ISEQV;
8052 if (LJ_DUALNUM) { 8099 if (LJ_DUALNUM) {
8053 dasm_put(Dst, 4051, -(BCBIAS_J*4 >> 16)); 8100 dasm_put(Dst, 4061, -(BCBIAS_J*4 >> 16));
8054 if (vk) { 8101 if (vk) {
8055 dasm_put(Dst, 4064); 8102 dasm_put(Dst, 4074);
8056 } else { 8103 } else {
8057 dasm_put(Dst, 4067); 8104 dasm_put(Dst, 4077);
8058 } 8105 }
8059 } else { 8106 } else {
8060 dasm_put(Dst, 4070, -(BCBIAS_J*4 >> 16)); 8107 dasm_put(Dst, 4080, -(BCBIAS_J*4 >> 16));
8061 if (vk) { 8108 if (vk) {
8062 dasm_put(Dst, 4087); 8109 dasm_put(Dst, 4097);
8063 } else { 8110 } else {
8064 dasm_put(Dst, 4091); 8111 dasm_put(Dst, 4101);
8065 } 8112 }
8066 dasm_put(Dst, 4095); 8113 dasm_put(Dst, 4105);
8067 } 8114 }
8068 dasm_put(Dst, 4107); 8115 dasm_put(Dst, 4117);
8069 if (!LJ_DUALNUM) { 8116 if (!LJ_DUALNUM) {
8070 dasm_put(Dst, 4109); 8117 dasm_put(Dst, 4119);
8071 } 8118 }
8072 if (LJ_HASFFI) { 8119 if (LJ_HASFFI) {
8073 dasm_put(Dst, 4112, LJ_TCDATA, LJ_TCDATA); 8120 dasm_put(Dst, 4122, LJ_TCDATA, LJ_TCDATA);
8074 } 8121 }
8075 dasm_put(Dst, 4117, ~LJ_TISPRI); 8122 dasm_put(Dst, 4127, ~LJ_TISPRI);
8076 if (LJ_HASFFI) { 8123 if (LJ_HASFFI) {
8077 dasm_put(Dst, 4122); 8124 dasm_put(Dst, 4132);
8078 } 8125 }
8079 dasm_put(Dst, 4124, ~LJ_TISTABUD); 8126 dasm_put(Dst, 4134, ~LJ_TISTABUD);
8080 if (LJ_HASFFI) { 8127 if (LJ_HASFFI) {
8081 dasm_put(Dst, 4127); 8128 dasm_put(Dst, 4137);
8082 } 8129 }
8083 dasm_put(Dst, 4130); 8130 dasm_put(Dst, 4140);
8084 if (vk) { 8131 if (vk) {
8085 dasm_put(Dst, 4138); 8132 dasm_put(Dst, 4148);
8086 } else { 8133 } else {
8087 dasm_put(Dst, 4143); 8134 dasm_put(Dst, 4153);
8088 } 8135 }
8089 if (LJ_DUALNUM) { 8136 if (LJ_DUALNUM) {
8090 dasm_put(Dst, 4148); 8137 dasm_put(Dst, 4158);
8091 } else { 8138 } else {
8092 dasm_put(Dst, 4163); 8139 dasm_put(Dst, 4173);
8093 } 8140 }
8094 dasm_put(Dst, 4166, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<<MM_eq); 8141 dasm_put(Dst, 4176, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<<MM_eq);
8095 break; 8142 break;
8096 8143
8097 case BC_ISEQS: case BC_ISNES: 8144 case BC_ISEQS: case BC_ISNES:
8098 vk = op == BC_ISEQS; 8145 vk = op == BC_ISEQS;
8099 dasm_put(Dst, 4185, 32-1); 8146 dasm_put(Dst, 4195, 32-1);
8100 if (LJ_HASFFI) { 8147 if (LJ_HASFFI) {
8101 dasm_put(Dst, 4193, LJ_TCDATA); 8148 dasm_put(Dst, 4203, LJ_TCDATA);
8102 } 8149 }
8103 dasm_put(Dst, 4196, LJ_TSTR); 8150 dasm_put(Dst, 4206, LJ_TSTR);
8104 if (LJ_HASFFI) { 8151 if (LJ_HASFFI) {
8105 dasm_put(Dst, 4200); 8152 dasm_put(Dst, 4210);
8106 } 8153 }
8107 dasm_put(Dst, 4203, -(BCBIAS_J*4 >> 16)); 8154 dasm_put(Dst, 4213, -(BCBIAS_J*4 >> 16));
8108 if (vk) { 8155 if (vk) {
8109 dasm_put(Dst, 4211); 8156 dasm_put(Dst, 4221);
8110 } else { 8157 } else {
8111 dasm_put(Dst, 4213); 8158 dasm_put(Dst, 4223);
8112 } 8159 }
8113 dasm_put(Dst, 4215); 8160 dasm_put(Dst, 4225);
8114 break; 8161 break;
8115 8162
8116 case BC_ISEQN: case BC_ISNEN: 8163 case BC_ISEQN: case BC_ISNEN:
8117 vk = op == BC_ISEQN; 8164 vk = op == BC_ISEQN;
8118 if (LJ_DUALNUM) { 8165 if (LJ_DUALNUM) {
8119 dasm_put(Dst, 4227, -(BCBIAS_J*4 >> 16)); 8166 dasm_put(Dst, 4237, -(BCBIAS_J*4 >> 16));
8120 if (vk) { 8167 if (vk) {
8121 dasm_put(Dst, 4239); 8168 dasm_put(Dst, 4249);
8122 } else { 8169 } else {
8123 dasm_put(Dst, 4241); 8170 dasm_put(Dst, 4251);
8124 } 8171 }
8125 dasm_put(Dst, 4243); 8172 dasm_put(Dst, 4253);
8126 } else { 8173 } else {
8127 if (vk) { 8174 if (vk) {
8128 dasm_put(Dst, 4250); 8175 dasm_put(Dst, 4260);
8129 } else { 8176 } else {
8130 dasm_put(Dst, 4252); 8177 dasm_put(Dst, 4262);
8131 } 8178 }
8132 dasm_put(Dst, 4254, -(BCBIAS_J*4 >> 16)); 8179 dasm_put(Dst, 4264, -(BCBIAS_J*4 >> 16));
8133 } 8180 }
8134 if (vk) { 8181 if (vk) {
8135 dasm_put(Dst, 4267); 8182 dasm_put(Dst, 4277);
8136 if (!LJ_HASFFI) { 8183 if (!LJ_HASFFI) {
8137 dasm_put(Dst, 4272); 8184 dasm_put(Dst, 4282);
8138 } 8185 }
8139 } else { 8186 } else {
8140 dasm_put(Dst, 4274); 8187 dasm_put(Dst, 4284);
8141 if (!LJ_HASFFI) { 8188 if (!LJ_HASFFI) {
8142 dasm_put(Dst, 4278); 8189 dasm_put(Dst, 4288);
8143 } 8190 }
8144 dasm_put(Dst, 4280); 8191 dasm_put(Dst, 4290);
8145 } 8192 }
8146 dasm_put(Dst, 4283); 8193 dasm_put(Dst, 4293);
8147 if (LJ_HASFFI) { 8194 if (LJ_HASFFI) {
8148 dasm_put(Dst, 4294, LJ_TCDATA); 8195 dasm_put(Dst, 4304, LJ_TCDATA);
8149 } 8196 }
8150 if (LJ_DUALNUM) { 8197 if (LJ_DUALNUM) {
8151 dasm_put(Dst, 4302); 8198 dasm_put(Dst, 4312);
8152 } 8199 }
8153 break; 8200 break;
8154 8201
8155 case BC_ISEQP: case BC_ISNEP: 8202 case BC_ISEQP: case BC_ISNEP:
8156 vk = op == BC_ISEQP; 8203 vk = op == BC_ISEQP;
8157 dasm_put(Dst, 4326, 32-3); 8204 dasm_put(Dst, 4336, 32-3);
8158 if (LJ_HASFFI) { 8205 if (LJ_HASFFI) {
8159 dasm_put(Dst, 4333, LJ_TCDATA); 8206 dasm_put(Dst, 4343, LJ_TCDATA);
8160 } 8207 }
8161 dasm_put(Dst, 4336); 8208 dasm_put(Dst, 4346);
8162 if (LJ_HASFFI) { 8209 if (LJ_HASFFI) {
8163 dasm_put(Dst, 4338); 8210 dasm_put(Dst, 4348);
8164 } 8211 }
8165 dasm_put(Dst, 4341, -(BCBIAS_J*4 >> 16)); 8212 dasm_put(Dst, 4351, -(BCBIAS_J*4 >> 16));
8166 if (vk) { 8213 if (vk) {
8167 dasm_put(Dst, 4347); 8214 dasm_put(Dst, 4357);
8168 } else { 8215 } else {
8169 dasm_put(Dst, 4349); 8216 dasm_put(Dst, 4359);
8170 } 8217 }
8171 dasm_put(Dst, 4351); 8218 dasm_put(Dst, 4361);
8172 break; 8219 break;
8173 8220
8174 /* -- Unary test and copy ops ------------------------------------------- */ 8221 /* -- Unary test and copy ops ------------------------------------------- */
8175 8222
8176 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 8223 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
8177 dasm_put(Dst, 4363); 8224 dasm_put(Dst, 4373);
8178 if (op == BC_IST || op == BC_ISF) { 8225 if (op == BC_IST || op == BC_ISF) {
8179 dasm_put(Dst, 4367, LJ_TTRUE, -(BCBIAS_J*4 >> 16)); 8226 dasm_put(Dst, 4377, LJ_TTRUE, -(BCBIAS_J*4 >> 16));
8180 if (op == BC_IST) { 8227 if (op == BC_IST) {
8181 dasm_put(Dst, 4374); 8228 dasm_put(Dst, 4384);
8182 } else { 8229 } else {
8183 dasm_put(Dst, 4376); 8230 dasm_put(Dst, 4386);
8184 } 8231 }
8185 dasm_put(Dst, 4378); 8232 dasm_put(Dst, 4388);
8186 } else { 8233 } else {
8187 dasm_put(Dst, 4380, LJ_TFALSE); 8234 dasm_put(Dst, 4390, LJ_TFALSE);
8188 if (op == BC_ISTC) { 8235 if (op == BC_ISTC) {
8189 dasm_put(Dst, 4385); 8236 dasm_put(Dst, 4395);
8190 } else { 8237 } else {
8191 dasm_put(Dst, 4388); 8238 dasm_put(Dst, 4398);
8192 } 8239 }
8193 dasm_put(Dst, 4391, -(BCBIAS_J*4 >> 16)); 8240 dasm_put(Dst, 4401, -(BCBIAS_J*4 >> 16));
8194 } 8241 }
8195 dasm_put(Dst, 4398); 8242 dasm_put(Dst, 4408);
8196 break; 8243 break;
8197 8244
8198 /* -- Unary ops --------------------------------------------------------- */ 8245 /* -- Unary ops --------------------------------------------------------- */
8199 8246
8200 case BC_MOV: 8247 case BC_MOV:
8201 dasm_put(Dst, 4409); 8248 dasm_put(Dst, 4419);
8202 break; 8249 break;
8203 case BC_NOT: 8250 case BC_NOT:
8204 dasm_put(Dst, 4422, LJ_TTRUE); 8251 dasm_put(Dst, 4432, LJ_TTRUE);
8205 break; 8252 break;
8206 case BC_UNM: 8253 case BC_UNM:
8207 dasm_put(Dst, 4438); 8254 dasm_put(Dst, 4448);
8208 if (LJ_DUALNUM) { 8255 if (LJ_DUALNUM) {
8209 dasm_put(Dst, 4442); 8256 dasm_put(Dst, 4452);
8210 } 8257 }
8211 dasm_put(Dst, 4470); 8258 dasm_put(Dst, 4480);
8212 if (LJ_DUALNUM) { 8259 if (LJ_DUALNUM) {
8213 dasm_put(Dst, 4480); 8260 dasm_put(Dst, 4490);
8214 } else { 8261 } else {
8215 dasm_put(Dst, 4483); 8262 dasm_put(Dst, 4493);
8216 } 8263 }
8217 break; 8264 break;
8218 case BC_LEN: 8265 case BC_LEN:
8219 dasm_put(Dst, 4492, LJ_TSTR, Dt5(->len)); 8266 dasm_put(Dst, 4502, LJ_TSTR, Dt5(->len));
8220 if (LJ_DUALNUM) { 8267 if (LJ_DUALNUM) {
8221 dasm_put(Dst, 4502); 8268 dasm_put(Dst, 4512);
8222 } else { 8269 } else {
8223 dasm_put(Dst, 4507); 8270 dasm_put(Dst, 4517);
8224 } 8271 }
8225 dasm_put(Dst, 4514, LJ_TTAB); 8272 dasm_put(Dst, 4524, LJ_TTAB);
8226#ifdef LUAJIT_ENABLE_LUA52COMPAT 8273#ifdef LUAJIT_ENABLE_LUA52COMPAT
8227 dasm_put(Dst, 4528, Dt6(->metatable)); 8274 dasm_put(Dst, 4538, Dt6(->metatable));
8228#endif 8275#endif
8229 dasm_put(Dst, 4535); 8276 dasm_put(Dst, 4545);
8230#ifdef LUAJIT_ENABLE_LUA52COMPAT 8277#ifdef LUAJIT_ENABLE_LUA52COMPAT
8231 dasm_put(Dst, 4541, Dt6(->nomm), 1<<MM_len); 8278 dasm_put(Dst, 4551, Dt6(->nomm), 1<<MM_len);
8232#endif 8279#endif
8233 break; 8280 break;
8234 8281
@@ -8240,77 +8287,77 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8240 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8287 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8241 switch (vk) { 8288 switch (vk) {
8242 case 0: 8289 case 0:
8243 dasm_put(Dst, 4551); 8290 dasm_put(Dst, 4561);
8244 break; 8291 break;
8245 case 1: 8292 case 1:
8246 dasm_put(Dst, 4557); 8293 dasm_put(Dst, 4567);
8247 break; 8294 break;
8248 default: 8295 default:
8249 dasm_put(Dst, 4563); 8296 dasm_put(Dst, 4573);
8250 break; 8297 break;
8251 } 8298 }
8252 dasm_put(Dst, 4569); 8299 dasm_put(Dst, 4579);
8253 switch (vk) { 8300 switch (vk) {
8254 case 0: 8301 case 0:
8255 dasm_put(Dst, 4595); 8302 dasm_put(Dst, 4606);
8256 break; 8303 break;
8257 case 1: 8304 case 1:
8258 dasm_put(Dst, 4598); 8305 dasm_put(Dst, 4609);
8259 break; 8306 break;
8260 default: 8307 default:
8261 dasm_put(Dst, 4601); 8308 dasm_put(Dst, 4612);
8262 break; 8309 break;
8263 } 8310 }
8264 dasm_put(Dst, 4604); 8311 dasm_put(Dst, 4615);
8265 if (vk == 1) { 8312 if (vk == 1) {
8266 dasm_put(Dst, 4606); 8313 dasm_put(Dst, 4617);
8267 } else { 8314 } else {
8268 dasm_put(Dst, 4610); 8315 dasm_put(Dst, 4621);
8269 } 8316 }
8270 switch (vk) { 8317 switch (vk) {
8271 case 0: 8318 case 0:
8272 dasm_put(Dst, 4614); 8319 dasm_put(Dst, 4625);
8273 break; 8320 break;
8274 case 1: 8321 case 1:
8275 dasm_put(Dst, 4617); 8322 dasm_put(Dst, 4628);
8276 break; 8323 break;
8277 default: 8324 default:
8278 dasm_put(Dst, 4620); 8325 dasm_put(Dst, 4631);
8279 break; 8326 break;
8280 } 8327 }
8281 dasm_put(Dst, 4623); 8328 dasm_put(Dst, 4634);
8282 } else { 8329 } else {
8283 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8330 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8284 switch (vk) { 8331 switch (vk) {
8285 case 0: 8332 case 0:
8286 dasm_put(Dst, 4630); 8333 dasm_put(Dst, 4641);
8287 if (LJ_DUALNUM) { 8334 if (LJ_DUALNUM) {
8288 dasm_put(Dst, 4632); 8335 dasm_put(Dst, 4643);
8289 } 8336 }
8290 dasm_put(Dst, 4634); 8337 dasm_put(Dst, 4645);
8291 if (LJ_DUALNUM) { 8338 if (LJ_DUALNUM) {
8292 dasm_put(Dst, 4637); 8339 dasm_put(Dst, 4648);
8293 } else { 8340 } else {
8294 dasm_put(Dst, 4643); 8341 dasm_put(Dst, 4654);
8295 } 8342 }
8296 break; 8343 break;
8297 case 1: 8344 case 1:
8298 dasm_put(Dst, 4647); 8345 dasm_put(Dst, 4658);
8299 if (LJ_DUALNUM) { 8346 if (LJ_DUALNUM) {
8300 dasm_put(Dst, 4649); 8347 dasm_put(Dst, 4660);
8301 } 8348 }
8302 dasm_put(Dst, 4651); 8349 dasm_put(Dst, 4662);
8303 if (LJ_DUALNUM) { 8350 if (LJ_DUALNUM) {
8304 dasm_put(Dst, 4654); 8351 dasm_put(Dst, 4665);
8305 } else { 8352 } else {
8306 dasm_put(Dst, 4660); 8353 dasm_put(Dst, 4671);
8307 } 8354 }
8308 break; 8355 break;
8309 default: 8356 default:
8310 dasm_put(Dst, 4664); 8357 dasm_put(Dst, 4675);
8311 break; 8358 break;
8312 } 8359 }
8313 dasm_put(Dst, 4674); 8360 dasm_put(Dst, 4685);
8314 } 8361 }
8315 break; 8362 break;
8316 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 8363 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
@@ -8318,77 +8365,77 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8318 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8365 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8319 switch (vk) { 8366 switch (vk) {
8320 case 0: 8367 case 0:
8321 dasm_put(Dst, 4687); 8368 dasm_put(Dst, 4698);
8322 break; 8369 break;
8323 case 1: 8370 case 1:
8324 dasm_put(Dst, 4693); 8371 dasm_put(Dst, 4704);
8325 break; 8372 break;
8326 default: 8373 default:
8327 dasm_put(Dst, 4699); 8374 dasm_put(Dst, 4710);
8328 break; 8375 break;
8329 } 8376 }
8330 dasm_put(Dst, 4705); 8377 dasm_put(Dst, 4716);
8331 switch (vk) { 8378 switch (vk) {
8332 case 0: 8379 case 0:
8333 dasm_put(Dst, 4731); 8380 dasm_put(Dst, 4743);
8334 break; 8381 break;
8335 case 1: 8382 case 1:
8336 dasm_put(Dst, 4734); 8383 dasm_put(Dst, 4746);
8337 break; 8384 break;
8338 default: 8385 default:
8339 dasm_put(Dst, 4737); 8386 dasm_put(Dst, 4749);
8340 break; 8387 break;
8341 } 8388 }
8342 dasm_put(Dst, 4740); 8389 dasm_put(Dst, 4752);
8343 if (vk == 1) { 8390 if (vk == 1) {
8344 dasm_put(Dst, 4742); 8391 dasm_put(Dst, 4754);
8345 } else { 8392 } else {
8346 dasm_put(Dst, 4746); 8393 dasm_put(Dst, 4758);
8347 } 8394 }
8348 switch (vk) { 8395 switch (vk) {
8349 case 0: 8396 case 0:
8350 dasm_put(Dst, 4750); 8397 dasm_put(Dst, 4762);
8351 break; 8398 break;
8352 case 1: 8399 case 1:
8353 dasm_put(Dst, 4753); 8400 dasm_put(Dst, 4765);
8354 break; 8401 break;
8355 default: 8402 default:
8356 dasm_put(Dst, 4756); 8403 dasm_put(Dst, 4768);
8357 break; 8404 break;
8358 } 8405 }
8359 dasm_put(Dst, 4759); 8406 dasm_put(Dst, 4771);
8360 } else { 8407 } else {
8361 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8408 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8362 switch (vk) { 8409 switch (vk) {
8363 case 0: 8410 case 0:
8364 dasm_put(Dst, 4766); 8411 dasm_put(Dst, 4778);
8365 if (LJ_DUALNUM) { 8412 if (LJ_DUALNUM) {
8366 dasm_put(Dst, 4768); 8413 dasm_put(Dst, 4780);
8367 } 8414 }
8368 dasm_put(Dst, 4770); 8415 dasm_put(Dst, 4782);
8369 if (LJ_DUALNUM) { 8416 if (LJ_DUALNUM) {
8370 dasm_put(Dst, 4773); 8417 dasm_put(Dst, 4785);
8371 } else { 8418 } else {
8372 dasm_put(Dst, 4779); 8419 dasm_put(Dst, 4791);
8373 } 8420 }
8374 break; 8421 break;
8375 case 1: 8422 case 1:
8376 dasm_put(Dst, 4783); 8423 dasm_put(Dst, 4795);
8377 if (LJ_DUALNUM) { 8424 if (LJ_DUALNUM) {
8378 dasm_put(Dst, 4785); 8425 dasm_put(Dst, 4797);
8379 } 8426 }
8380 dasm_put(Dst, 4787); 8427 dasm_put(Dst, 4799);
8381 if (LJ_DUALNUM) { 8428 if (LJ_DUALNUM) {
8382 dasm_put(Dst, 4790); 8429 dasm_put(Dst, 4802);
8383 } else { 8430 } else {
8384 dasm_put(Dst, 4796); 8431 dasm_put(Dst, 4808);
8385 } 8432 }
8386 break; 8433 break;
8387 default: 8434 default:
8388 dasm_put(Dst, 4800); 8435 dasm_put(Dst, 4812);
8389 break; 8436 break;
8390 } 8437 }
8391 dasm_put(Dst, 4810); 8438 dasm_put(Dst, 4822);
8392 } 8439 }
8393 break; 8440 break;
8394 case BC_MULVN: case BC_MULNV: case BC_MULVV: 8441 case BC_MULVN: case BC_MULNV: case BC_MULVV:
@@ -8396,194 +8443,188 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8396 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8443 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8397 switch (vk) { 8444 switch (vk) {
8398 case 0: 8445 case 0:
8399 dasm_put(Dst, 4823); 8446 dasm_put(Dst, 4835);
8400 break; 8447 break;
8401 case 1: 8448 case 1:
8402 dasm_put(Dst, 4829); 8449 dasm_put(Dst, 4841);
8403 break; 8450 break;
8404 default: 8451 default:
8405 dasm_put(Dst, 4835); 8452 dasm_put(Dst, 4847);
8406 break; 8453 break;
8407 } 8454 }
8408 dasm_put(Dst, 4841); 8455 dasm_put(Dst, 4853);
8409 switch (vk) { 8456 switch (vk) {
8410 case 0: 8457 case 0:
8411 dasm_put(Dst, 4867); 8458 dasm_put(Dst, 4880);
8412 break; 8459 break;
8413 case 1: 8460 case 1:
8414 dasm_put(Dst, 4870); 8461 dasm_put(Dst, 4883);
8415 break; 8462 break;
8416 default: 8463 default:
8417 dasm_put(Dst, 4873); 8464 dasm_put(Dst, 4886);
8418 break; 8465 break;
8419 } 8466 }
8420 dasm_put(Dst, 4876); 8467 dasm_put(Dst, 4889);
8421 if (vk == 1) { 8468 if (vk == 1) {
8422 dasm_put(Dst, 4878); 8469 dasm_put(Dst, 4891);
8423 } else { 8470 } else {
8424 dasm_put(Dst, 4882); 8471 dasm_put(Dst, 4895);
8425 } 8472 }
8426 switch (vk) { 8473 switch (vk) {
8427 case 0: 8474 case 0:
8428 dasm_put(Dst, 4886); 8475 dasm_put(Dst, 4899);
8429 break; 8476 break;
8430 case 1: 8477 case 1:
8431 dasm_put(Dst, 4889); 8478 dasm_put(Dst, 4902);
8432 break; 8479 break;
8433 default: 8480 default:
8434 dasm_put(Dst, 4892); 8481 dasm_put(Dst, 4905);
8435 break; 8482 break;
8436 } 8483 }
8437 dasm_put(Dst, 4895); 8484 dasm_put(Dst, 4908);
8438 } else { 8485 } else {
8439 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8486 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8440 switch (vk) { 8487 switch (vk) {
8441 case 0: 8488 case 0:
8442 dasm_put(Dst, 4902); 8489 dasm_put(Dst, 4915);
8443 if (LJ_DUALNUM) { 8490 if (LJ_DUALNUM) {
8444 dasm_put(Dst, 4904); 8491 dasm_put(Dst, 4917);
8445 } 8492 }
8446 dasm_put(Dst, 4906); 8493 dasm_put(Dst, 4919);
8447 if (LJ_DUALNUM) { 8494 if (LJ_DUALNUM) {
8448 dasm_put(Dst, 4909); 8495 dasm_put(Dst, 4922);
8449 } else { 8496 } else {
8450 dasm_put(Dst, 4915); 8497 dasm_put(Dst, 4928);
8451 } 8498 }
8452 break; 8499 break;
8453 case 1: 8500 case 1:
8454 dasm_put(Dst, 4919); 8501 dasm_put(Dst, 4932);
8455 if (LJ_DUALNUM) { 8502 if (LJ_DUALNUM) {
8456 dasm_put(Dst, 4921); 8503 dasm_put(Dst, 4934);
8457 } 8504 }
8458 dasm_put(Dst, 4923); 8505 dasm_put(Dst, 4936);
8459 if (LJ_DUALNUM) { 8506 if (LJ_DUALNUM) {
8460 dasm_put(Dst, 4926); 8507 dasm_put(Dst, 4939);
8461 } else { 8508 } else {
8462 dasm_put(Dst, 4932); 8509 dasm_put(Dst, 4945);
8463 } 8510 }
8464 break; 8511 break;
8465 default: 8512 default:
8466 dasm_put(Dst, 4936); 8513 dasm_put(Dst, 4949);
8467 break; 8514 break;
8468 } 8515 }
8469 dasm_put(Dst, 4946); 8516 dasm_put(Dst, 4959);
8470 } 8517 }
8471 break; 8518 break;
8472 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 8519 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
8473 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8520 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8474 switch (vk) { 8521 switch (vk) {
8475 case 0: 8522 case 0:
8476 dasm_put(Dst, 4959); 8523 dasm_put(Dst, 4972);
8477 if (LJ_DUALNUM) { 8524 if (LJ_DUALNUM) {
8478 dasm_put(Dst, 4961); 8525 dasm_put(Dst, 4974);
8479 } 8526 }
8480 dasm_put(Dst, 4963); 8527 dasm_put(Dst, 4976);
8481 if (LJ_DUALNUM) { 8528 if (LJ_DUALNUM) {
8482 dasm_put(Dst, 4966); 8529 dasm_put(Dst, 4979);
8483 } else { 8530 } else {
8484 dasm_put(Dst, 4972); 8531 dasm_put(Dst, 4985);
8485 } 8532 }
8486 break; 8533 break;
8487 case 1: 8534 case 1:
8488 dasm_put(Dst, 4976); 8535 dasm_put(Dst, 4989);
8489 if (LJ_DUALNUM) { 8536 if (LJ_DUALNUM) {
8490 dasm_put(Dst, 4978); 8537 dasm_put(Dst, 4991);
8491 } 8538 }
8492 dasm_put(Dst, 4980); 8539 dasm_put(Dst, 4993);
8493 if (LJ_DUALNUM) { 8540 if (LJ_DUALNUM) {
8494 dasm_put(Dst, 4983); 8541 dasm_put(Dst, 4996);
8495 } else { 8542 } else {
8496 dasm_put(Dst, 4989); 8543 dasm_put(Dst, 5002);
8497 } 8544 }
8498 break; 8545 break;
8499 default: 8546 default:
8500 dasm_put(Dst, 4993); 8547 dasm_put(Dst, 5006);
8501 break; 8548 break;
8502 } 8549 }
8503 dasm_put(Dst, 5003); 8550 dasm_put(Dst, 5016);
8504 break; 8551 break;
8505 case BC_MODVN: 8552 case BC_MODVN:
8506 if (LJ_DUALNUM) { 8553 if (LJ_DUALNUM) {
8507 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8554 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8508 switch (vk) { 8555 switch (vk) {
8509 case 0: 8556 case 0:
8510 dasm_put(Dst, 5016); 8557 dasm_put(Dst, 5029);
8511 break; 8558 break;
8512 case 1: 8559 case 1:
8513 dasm_put(Dst, 5022); 8560 dasm_put(Dst, 5035);
8514 break; 8561 break;
8515 default: 8562 default:
8516 dasm_put(Dst, 5028); 8563 dasm_put(Dst, 5041);
8517 break; 8564 break;
8518 } 8565 }
8519 dasm_put(Dst, 5034); 8566 dasm_put(Dst, 5047);
8520 switch (vk) { 8567 switch (vk) {
8521 case 0: 8568 case 0:
8522 dasm_put(Dst, 5062); 8569 dasm_put(Dst, 5075);
8523 break; 8570 break;
8524 case 1: 8571 case 1:
8525 dasm_put(Dst, 5065); 8572 dasm_put(Dst, 5078);
8526 break; 8573 break;
8527 default: 8574 default:
8528 dasm_put(Dst, 5068); 8575 dasm_put(Dst, 5081);
8529 break; 8576 break;
8530 } 8577 }
8531 dasm_put(Dst, 5071); 8578 dasm_put(Dst, 5084);
8532 if (vk == 1) { 8579 if (vk == 1) {
8533 dasm_put(Dst, 5073); 8580 dasm_put(Dst, 5086);
8534 } else { 8581 } else {
8535 dasm_put(Dst, 5077); 8582 dasm_put(Dst, 5090);
8536 } 8583 }
8537 switch (vk) { 8584 switch (vk) {
8538 case 0: 8585 case 0:
8539 dasm_put(Dst, 5081); 8586 dasm_put(Dst, 5094);
8540 break; 8587 break;
8541 case 1: 8588 case 1:
8542 dasm_put(Dst, 5084); 8589 dasm_put(Dst, 5097);
8543 break; 8590 break;
8544 default: 8591 default:
8545 dasm_put(Dst, 5087); 8592 dasm_put(Dst, 5100);
8546 break; 8593 break;
8547 } 8594 }
8548 if (!LJ_DUALNUM) { 8595 dasm_put(Dst, 5103);
8549 dasm_put(Dst, 5090);
8550 }
8551 dasm_put(Dst, 5092);
8552 } else { 8596 } else {
8553 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8597 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8554 switch (vk) { 8598 switch (vk) {
8555 case 0: 8599 case 0:
8556 dasm_put(Dst, 5104); 8600 dasm_put(Dst, 5115);
8557 if (LJ_DUALNUM) { 8601 if (LJ_DUALNUM) {
8558 dasm_put(Dst, 5106); 8602 dasm_put(Dst, 5117);
8559 } 8603 }
8560 dasm_put(Dst, 5108); 8604 dasm_put(Dst, 5119);
8561 if (LJ_DUALNUM) { 8605 if (LJ_DUALNUM) {
8562 dasm_put(Dst, 5111); 8606 dasm_put(Dst, 5122);
8563 } else { 8607 } else {
8564 dasm_put(Dst, 5117); 8608 dasm_put(Dst, 5128);
8565 } 8609 }
8566 break; 8610 break;
8567 case 1: 8611 case 1:
8568 dasm_put(Dst, 5121); 8612 dasm_put(Dst, 5132);
8569 if (LJ_DUALNUM) { 8613 if (LJ_DUALNUM) {
8570 dasm_put(Dst, 5123); 8614 dasm_put(Dst, 5134);
8571 } 8615 }
8572 dasm_put(Dst, 5125); 8616 dasm_put(Dst, 5136);
8573 if (LJ_DUALNUM) { 8617 if (LJ_DUALNUM) {
8574 dasm_put(Dst, 5128); 8618 dasm_put(Dst, 5139);
8575 } else { 8619 } else {
8576 dasm_put(Dst, 5134); 8620 dasm_put(Dst, 5145);
8577 } 8621 }
8578 break; 8622 break;
8579 default: 8623 default:
8580 dasm_put(Dst, 5138); 8624 dasm_put(Dst, 5149);
8581 break; 8625 break;
8582 } 8626 }
8583 if (!LJ_DUALNUM) { 8627 dasm_put(Dst, 5159);
8584 dasm_put(Dst, 5148);
8585 }
8586 dasm_put(Dst, 5150);
8587 } 8628 }
8588 break; 8629 break;
8589 case BC_MODNV: case BC_MODVV: 8630 case BC_MODNV: case BC_MODVV:
@@ -8591,286 +8632,298 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8591 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8632 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8592 switch (vk) { 8633 switch (vk) {
8593 case 0: 8634 case 0:
8594 dasm_put(Dst, 5168); 8635 dasm_put(Dst, 5177);
8636 break;
8637 case 1:
8638 dasm_put(Dst, 5183);
8639 break;
8640 default:
8641 dasm_put(Dst, 5189);
8642 break;
8643 }
8644 dasm_put(Dst, 5195);
8645 switch (vk) {
8646 case 0:
8647 dasm_put(Dst, 5223);
8595 break; 8648 break;
8596 case 1: 8649 case 1:
8597 dasm_put(Dst, 5174); 8650 dasm_put(Dst, 5226);
8598 break; 8651 break;
8599 default: 8652 default:
8600 dasm_put(Dst, 5180); 8653 dasm_put(Dst, 5229);
8601 break; 8654 break;
8602 } 8655 }
8603 dasm_put(Dst, 5186); 8656 dasm_put(Dst, 5232);
8604 if (vk == 1) { 8657 if (vk == 1) {
8605 dasm_put(Dst, 5194); 8658 dasm_put(Dst, 5234);
8606 } else { 8659 } else {
8607 dasm_put(Dst, 5198); 8660 dasm_put(Dst, 5238);
8608 } 8661 }
8609 switch (vk) { 8662 switch (vk) {
8610 case 0: 8663 case 0:
8611 dasm_put(Dst, 5202); 8664 dasm_put(Dst, 5242);
8612 break; 8665 break;
8613 case 1: 8666 case 1:
8614 dasm_put(Dst, 5205); 8667 dasm_put(Dst, 5245);
8615 break; 8668 break;
8616 default: 8669 default:
8617 dasm_put(Dst, 5208); 8670 dasm_put(Dst, 5248);
8618 break; 8671 break;
8619 } 8672 }
8620 dasm_put(Dst, 5211); 8673 dasm_put(Dst, 5251);
8621 } else { 8674 } else {
8622 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 8675 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
8623 switch (vk) { 8676 switch (vk) {
8624 case 0: 8677 case 0:
8625 dasm_put(Dst, 5214); 8678 dasm_put(Dst, 5254);
8626 if (LJ_DUALNUM) { 8679 if (LJ_DUALNUM) {
8627 dasm_put(Dst, 5216); 8680 dasm_put(Dst, 5256);
8628 } 8681 }
8629 dasm_put(Dst, 5218); 8682 dasm_put(Dst, 5258);
8630 if (LJ_DUALNUM) { 8683 if (LJ_DUALNUM) {
8631 dasm_put(Dst, 5221); 8684 dasm_put(Dst, 5261);
8632 } else { 8685 } else {
8633 dasm_put(Dst, 5227); 8686 dasm_put(Dst, 5267);
8634 } 8687 }
8635 break; 8688 break;
8636 case 1: 8689 case 1:
8637 dasm_put(Dst, 5231); 8690 dasm_put(Dst, 5271);
8638 if (LJ_DUALNUM) { 8691 if (LJ_DUALNUM) {
8639 dasm_put(Dst, 5233); 8692 dasm_put(Dst, 5273);
8640 } 8693 }
8641 dasm_put(Dst, 5235); 8694 dasm_put(Dst, 5275);
8642 if (LJ_DUALNUM) { 8695 if (LJ_DUALNUM) {
8643 dasm_put(Dst, 5238); 8696 dasm_put(Dst, 5278);
8644 } else { 8697 } else {
8645 dasm_put(Dst, 5244); 8698 dasm_put(Dst, 5284);
8646 } 8699 }
8647 break; 8700 break;
8648 default: 8701 default:
8649 dasm_put(Dst, 5248); 8702 dasm_put(Dst, 5288);
8650 break; 8703 break;
8651 } 8704 }
8652 dasm_put(Dst, 5258); 8705 dasm_put(Dst, 5298);
8653 } 8706 }
8654 break; 8707 break;
8655 case BC_POW: 8708 case BC_POW:
8656 dasm_put(Dst, 5261); 8709 dasm_put(Dst, 5301);
8657 break; 8710 break;
8658 8711
8659 case BC_CAT: 8712 case BC_CAT:
8660 dasm_put(Dst, 5284, Dt1(->base), 32-3, Dt1(->base)); 8713 dasm_put(Dst, 5324, Dt1(->base), 32-3, Dt1(->base));
8661 break; 8714 break;
8662 8715
8663 /* -- Constant ops ------------------------------------------------------ */ 8716 /* -- Constant ops ------------------------------------------------------ */
8664 8717
8665 case BC_KSTR: 8718 case BC_KSTR:
8666 dasm_put(Dst, 5314, 32-1, LJ_TSTR); 8719 dasm_put(Dst, 5354, 32-1, LJ_TSTR);
8667 break; 8720 break;
8668 case BC_KCDATA: 8721 case BC_KCDATA:
8669#if LJ_HASFFI 8722#if LJ_HASFFI
8670 dasm_put(Dst, 5333, 32-1, LJ_TCDATA); 8723 dasm_put(Dst, 5373, 32-1, LJ_TCDATA);
8671#endif 8724#endif
8672 break; 8725 break;
8673 case BC_KSHORT: 8726 case BC_KSHORT:
8674 if (LJ_DUALNUM) { 8727 if (LJ_DUALNUM) {
8675 dasm_put(Dst, 5352, 31-13); 8728 dasm_put(Dst, 5392, 31-13);
8676 } else { 8729 } else {
8677 dasm_put(Dst, 5368, 31-13); 8730 dasm_put(Dst, 5408, 31-13, 31-20);
8678 } 8731 }
8679 break; 8732 break;
8680 case BC_KNUM: 8733 case BC_KNUM:
8681 dasm_put(Dst, 5387); 8734 dasm_put(Dst, 5436);
8682 break; 8735 break;
8683 case BC_KPRI: 8736 case BC_KPRI:
8684 dasm_put(Dst, 5400, 32-3); 8737 dasm_put(Dst, 5449, 32-3);
8685 break; 8738 break;
8686 case BC_KNIL: 8739 case BC_KNIL:
8687 dasm_put(Dst, 5415); 8740 dasm_put(Dst, 5464);
8688 break; 8741 break;
8689 8742
8690 /* -- Upvalue and function ops ------------------------------------------ */ 8743 /* -- Upvalue and function ops ------------------------------------------ */
8691 8744
8692 case BC_UGET: 8745 case BC_UGET:
8693 dasm_put(Dst, 5434, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); 8746 dasm_put(Dst, 5483, 32-1, offsetof(GCfuncL, uvptr), DtA(->v));
8694 break; 8747 break;
8695 case BC_USETV: 8748 case BC_USETV:
8696 dasm_put(Dst, 5455, 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); 8749 dasm_put(Dst, 5504, 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);
8697 break; 8750 break;
8698 case BC_USETS: 8751 case BC_USETS:
8699 dasm_put(Dst, 5508, 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); 8752 dasm_put(Dst, 5557, 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);
8700 break; 8753 break;
8701 case BC_USETN: 8754 case BC_USETN:
8702 dasm_put(Dst, 5559, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); 8755 dasm_put(Dst, 5608, 32-1, offsetof(GCfuncL, uvptr), DtA(->v));
8703 break; 8756 break;
8704 case BC_USETP: 8757 case BC_USETP:
8705 dasm_put(Dst, 5580, 32-1, offsetof(GCfuncL, uvptr), 32-3, DtA(->v)); 8758 dasm_put(Dst, 5629, 32-1, 32-3, offsetof(GCfuncL, uvptr), DtA(->v));
8706 break; 8759 break;
8707 8760
8708 case BC_UCLO: 8761 case BC_UCLO:
8709 dasm_put(Dst, 5603, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base)); 8762 dasm_put(Dst, 5652, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base));
8710 break; 8763 break;
8711 8764
8712 case BC_FNEW: 8765 case BC_FNEW:
8713 dasm_put(Dst, 5633, 32-1, Dt1(->base), Dt1(->base), LJ_TFUNC); 8766 dasm_put(Dst, 5682, 32-1, Dt1(->base), Dt1(->base), LJ_TFUNC);
8714 break; 8767 break;
8715 8768
8716 /* -- Table ops --------------------------------------------------------- */ 8769 /* -- Table ops --------------------------------------------------------- */
8717 8770
8718 case BC_TNEW: 8771 case BC_TNEW:
8719 case BC_TDUP: 8772 case BC_TDUP:
8720 dasm_put(Dst, 5661, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base)); 8773 dasm_put(Dst, 5710, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base));
8721 if (op == BC_TNEW) { 8774 if (op == BC_TNEW) {
8722 dasm_put(Dst, 5674); 8775 dasm_put(Dst, 5723);
8723 } else { 8776 } else {
8724 dasm_put(Dst, 5683, 32-1); 8777 dasm_put(Dst, 5732, 32-1);
8725 } 8778 }
8726 dasm_put(Dst, 5690, Dt1(->base), LJ_TTAB); 8779 dasm_put(Dst, 5739, Dt1(->base), LJ_TTAB);
8727 if (op == BC_TNEW) { 8780 if (op == BC_TNEW) {
8728 dasm_put(Dst, 5707); 8781 dasm_put(Dst, 5756);
8729 } 8782 }
8730 dasm_put(Dst, 5712); 8783 dasm_put(Dst, 5761);
8731 break; 8784 break;
8732 8785
8733 case BC_GGET: 8786 case BC_GGET:
8734 case BC_GSET: 8787 case BC_GSET:
8735 dasm_put(Dst, 5721, 32-1, Dt7(->env)); 8788 dasm_put(Dst, 5770, 32-1, Dt7(->env));
8736 if (op == BC_GGET) { 8789 if (op == BC_GGET) {
8737 dasm_put(Dst, 5729); 8790 dasm_put(Dst, 5778);
8738 } else { 8791 } else {
8739 dasm_put(Dst, 5732); 8792 dasm_put(Dst, 5781);
8740 } 8793 }
8741 break; 8794 break;
8742 8795
8743 case BC_TGETV: 8796 case BC_TGETV:
8744 dasm_put(Dst, 5735); 8797 dasm_put(Dst, 5784);
8745 if (LJ_DUALNUM) { 8798 if (LJ_DUALNUM) {
8746 dasm_put(Dst, 5739); 8799 dasm_put(Dst, 5788);
8747 } else { 8800 } else {
8748 dasm_put(Dst, 5741); 8801 dasm_put(Dst, 5790);
8749 } 8802 }
8750 dasm_put(Dst, 5743, LJ_TTAB); 8803 dasm_put(Dst, 5792, LJ_TTAB);
8751 if (LJ_DUALNUM) { 8804 if (LJ_DUALNUM) {
8752 dasm_put(Dst, 5749, Dt6(->asize), Dt6(->array), 31-3); 8805 dasm_put(Dst, 5798, Dt6(->asize), Dt6(->array), 31-3);
8753 } else { 8806 } else {
8754 dasm_put(Dst, 5759, Dt6(->asize), Dt6(->array), 31-3); 8807 dasm_put(Dst, 5808, Dt6(->asize), Dt6(->array), 31-3);
8755 } 8808 }
8756 dasm_put(Dst, 5776, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index, LJ_TSTR); 8809 dasm_put(Dst, 5825, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index, LJ_TSTR);
8757 if (!LJ_DUALNUM) { 8810 if (!LJ_DUALNUM) {
8758 dasm_put(Dst, 5816); 8811 dasm_put(Dst, 5865);
8759 } 8812 }
8760 dasm_put(Dst, 5818); 8813 dasm_put(Dst, 5867);
8761 break; 8814 break;
8762 case BC_TGETS: 8815 case BC_TGETS:
8763 dasm_put(Dst, 5821, 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)); 8816 dasm_put(Dst, 5870, 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));
8764 dasm_put(Dst, 5882, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 8817 dasm_put(Dst, 5931, LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
8765 break; 8818 break;
8766 case BC_TGETB: 8819 case BC_TGETB:
8767 dasm_put(Dst, 5902, 32-3, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 8820 dasm_put(Dst, 5951, 32-3, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
8768 break; 8821 break;
8769 8822
8770 case BC_TSETV: 8823 case BC_TSETV:
8771 dasm_put(Dst, 5950); 8824 dasm_put(Dst, 5999);
8772 if (LJ_DUALNUM) { 8825 if (LJ_DUALNUM) {
8773 dasm_put(Dst, 5954); 8826 dasm_put(Dst, 6003);
8774 } else { 8827 } else {
8775 dasm_put(Dst, 5956); 8828 dasm_put(Dst, 6005);
8776 } 8829 }
8777 dasm_put(Dst, 5958, LJ_TTAB); 8830 dasm_put(Dst, 6007, LJ_TTAB);
8778 if (LJ_DUALNUM) { 8831 if (LJ_DUALNUM) {
8779 dasm_put(Dst, 5964, Dt6(->asize), Dt6(->array), 31-3); 8832 dasm_put(Dst, 6013, Dt6(->asize), Dt6(->array), 31-3);
8780 } else { 8833 } else {
8781 dasm_put(Dst, 5974, Dt6(->asize), Dt6(->array), 31-3); 8834 dasm_put(Dst, 6023, Dt6(->asize), Dt6(->array), 31-3);
8782 } 8835 }
8783 dasm_put(Dst, 5991, Dt6(->marked), LJ_TNIL, LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR); 8836 dasm_put(Dst, 6040, Dt6(->marked), LJ_TNIL, LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR);
8784 if (!LJ_DUALNUM) { 8837 if (!LJ_DUALNUM) {
8785 dasm_put(Dst, 6038); 8838 dasm_put(Dst, 6087);
8786 } 8839 }
8787 dasm_put(Dst, 6040, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 8840 dasm_put(Dst, 6089, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
8788 break; 8841 break;
8789 dasm_put(Dst, 6055, LJ_TSTR, LJ_TNIL); 8842 dasm_put(Dst, 6104, LJ_TSTR, LJ_TNIL);
8790 case BC_TSETS: 8843 case BC_TSETS:
8791 dasm_put(Dst, 6081, 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); 8844 dasm_put(Dst, 6130, 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);
8792 dasm_put(Dst, 6132, 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); 8845 dasm_put(Dst, 6181, 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);
8793 dasm_put(Dst, 6188, LJ_TSTR, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 8846 dasm_put(Dst, 6237, LJ_TSTR, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
8794 break; 8847 break;
8795 case BC_TSETB: 8848 case BC_TSETB:
8796 dasm_put(Dst, 6213, 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)); 8849 dasm_put(Dst, 6262, 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));
8797 dasm_put(Dst, 6271, DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 8850 dasm_put(Dst, 6320, DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
8798 break; 8851 break;
8799 8852
8800 case BC_TSETM: 8853 case BC_TSETM:
8801 dasm_put(Dst, 6281, 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)); 8854 dasm_put(Dst, 6330, 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));
8802 dasm_put(Dst, 6350); 8855 dasm_put(Dst, 6399);
8803 break; 8856 break;
8804 8857
8805 /* -- Calls and vararg handling ----------------------------------------- */ 8858 /* -- Calls and vararg handling ----------------------------------------- */
8806 8859
8807 case BC_CALLM: 8860 case BC_CALLM:
8808 dasm_put(Dst, 6353); 8861 dasm_put(Dst, 6402);
8809 break; 8862 break;
8810 case BC_CALL: 8863 case BC_CALL:
8811 dasm_put(Dst, 6355, LJ_TFUNC, Dt7(->pc)); 8864 dasm_put(Dst, 6404, LJ_TFUNC, Dt7(->pc));
8812 break; 8865 break;
8813 8866
8814 case BC_CALLMT: 8867 case BC_CALLMT:
8815 dasm_put(Dst, 6376); 8868 dasm_put(Dst, 6425);
8816 break; 8869 break;
8817 case BC_CALLT: 8870 case BC_CALLT:
8818 dasm_put(Dst, 6378, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); 8871 dasm_put(Dst, 6427, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP);
8819 dasm_put(Dst, 6442, FRAME_TYPE); 8872 dasm_put(Dst, 6491, FRAME_TYPE);
8820 break; 8873 break;
8821 8874
8822 case BC_ITERC: 8875 case BC_ITERC:
8823 dasm_put(Dst, 6451, LJ_TFUNC, Dt7(->pc)); 8876 dasm_put(Dst, 6500, LJ_TFUNC, Dt7(->pc));
8824 break; 8877 break;
8825 8878
8826 case BC_ITERN: 8879 case BC_ITERN:
8827#if LJ_HASJIT 8880#if LJ_HASJIT
8828#endif 8881#endif
8829 dasm_put(Dst, 6478, Dt6(->asize), Dt6(->array), 31-3, LJ_TNIL); 8882 dasm_put(Dst, 6527, Dt6(->asize), Dt6(->array), 31-3, LJ_TNIL);
8830 if (LJ_DUALNUM) { 8883 if (LJ_DUALNUM) {
8831 dasm_put(Dst, 6500); 8884 dasm_put(Dst, 6549);
8832 } else { 8885 } else {
8833 dasm_put(Dst, 6503); 8886 dasm_put(Dst, 6552);
8834 } 8887 }
8835 dasm_put(Dst, 6507, -(BCBIAS_J*4 >> 16)); 8888 dasm_put(Dst, 6556, -(BCBIAS_J*4 >> 16));
8836 if (!LJ_DUALNUM) { 8889 if (!LJ_DUALNUM) {
8837 dasm_put(Dst, 6515); 8890 dasm_put(Dst, 6564);
8838 } 8891 }
8839 dasm_put(Dst, 6517, Dt6(->hmask), Dt6(->node), 31-5, 31-3, LJ_TNIL, DtB(->key), -(BCBIAS_J*4 >> 16)); 8892 dasm_put(Dst, 6566, Dt6(->hmask), Dt6(->node), 31-5, 31-3, LJ_TNIL, DtB(->key), -(BCBIAS_J*4 >> 16));
8840 break; 8893 break;
8841 8894
8842 case BC_ISNEXT: 8895 case BC_ISNEXT:
8843 dasm_put(Dst, 6573, 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)); 8896 dasm_put(Dst, 6622, 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));
8844 break; 8897 break;
8845 8898
8846 case BC_VARG: 8899 case BC_VARG:
8847 dasm_put(Dst, 6623, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base)); 8900 dasm_put(Dst, 6672, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base));
8848 dasm_put(Dst, 6703); 8901 dasm_put(Dst, 6752);
8849 break; 8902 break;
8850 8903
8851 /* -- Returns ----------------------------------------------------------- */ 8904 /* -- Returns ----------------------------------------------------------- */
8852 8905
8853 case BC_RETM: 8906 case BC_RETM:
8854 dasm_put(Dst, 6709); 8907 dasm_put(Dst, 6758);
8855 break; 8908 break;
8856 8909
8857 case BC_RET: 8910 case BC_RET:
8858 dasm_put(Dst, 6711, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); 8911 dasm_put(Dst, 6760, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP);
8859 break; 8912 break;
8860 8913
8861 case BC_RET0: case BC_RET1: 8914 case BC_RET0: case BC_RET1:
8862 dasm_put(Dst, 6781, FRAME_TYPE, FRAME_VARG); 8915 dasm_put(Dst, 6830, FRAME_TYPE, FRAME_VARG);
8863 if (op == BC_RET1) { 8916 if (op == BC_RET1) {
8864 dasm_put(Dst, 6794); 8917 dasm_put(Dst, 6843);
8865 } 8918 }
8866 dasm_put(Dst, 6797, Dt7(->pc), PC2PROTO(k)); 8919 dasm_put(Dst, 6846, Dt7(->pc), PC2PROTO(k));
8867 break; 8920 break;
8868 8921
8869 /* -- Loops and branches ------------------------------------------------ */ 8922 /* -- Loops and branches ------------------------------------------------ */
8870 8923
8871 case BC_FORL: 8924 case BC_FORL:
8872#if LJ_HASJIT 8925#if LJ_HASJIT
8873 dasm_put(Dst, 6825); 8926 dasm_put(Dst, 6874);
8874#endif 8927#endif
8875 break; 8928 break;
8876 8929
@@ -8883,93 +8936,93 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8883 case BC_IFORL: 8936 case BC_IFORL:
8884 vk = (op == BC_IFORL || op == BC_JFORL); 8937 vk = (op == BC_IFORL || op == BC_JFORL);
8885 if (LJ_DUALNUM) { 8938 if (LJ_DUALNUM) {
8886 dasm_put(Dst, 6827, FORL_IDX*8+4); 8939 dasm_put(Dst, 6876, FORL_IDX*8+4);
8887 if (vk) { 8940 if (vk) {
8888 dasm_put(Dst, 6832, FORL_STEP*8+4, FORL_STOP*8+4, FORL_IDX*8+4); 8941 dasm_put(Dst, 6881, FORL_STEP*8+4, FORL_STOP*8+4, FORL_IDX*8+4);
8889 } else { 8942 } else {
8890 dasm_put(Dst, 6846, FORL_STEP*8, FORL_STEP*8+4, FORL_STOP*8, FORL_STOP*8+4); 8943 dasm_put(Dst, 6895, FORL_STEP*8, FORL_STEP*8+4, FORL_STOP*8, FORL_STOP*8+4);
8891 } 8944 }
8892 dasm_put(Dst, 6862, FORL_EXT*8); 8945 dasm_put(Dst, 6911, FORL_EXT*8);
8893 if (op != BC_JFORL) { 8946 if (op != BC_JFORL) {
8894 dasm_put(Dst, 6869, 32-1); 8947 dasm_put(Dst, 6918, 32-1);
8895 } 8948 }
8896 dasm_put(Dst, 6872, FORL_EXT*8+4); 8949 dasm_put(Dst, 6921, FORL_EXT*8+4);
8897 if (op != BC_JFORL) { 8950 if (op != BC_JFORL) {
8898 dasm_put(Dst, 6875); 8951 dasm_put(Dst, 6924);
8899 } 8952 }
8900 if (op == BC_FORI) { 8953 if (op == BC_FORI) {
8901 dasm_put(Dst, 6877); 8954 dasm_put(Dst, 6926);
8902 } else if (op == BC_JFORI) { 8955 } else if (op == BC_JFORI) {
8903 dasm_put(Dst, 6880, -(BCBIAS_J*4 >> 16), BC_JLOOP); 8956 dasm_put(Dst, 6929, -(BCBIAS_J*4 >> 16), BC_JLOOP);
8904 } else if (op == BC_IFORL) { 8957 } else if (op == BC_IFORL) {
8905 dasm_put(Dst, 6885, -(BCBIAS_J*4 >> 16)); 8958 dasm_put(Dst, 6934, -(BCBIAS_J*4 >> 16));
8906 } else { 8959 } else {
8907 dasm_put(Dst, 6890, BC_JLOOP); 8960 dasm_put(Dst, 6939, BC_JLOOP);
8908 } 8961 }
8909 dasm_put(Dst, 6893); 8962 dasm_put(Dst, 6942);
8910 if (vk) { 8963 if (vk) {
8911 dasm_put(Dst, 6909); 8964 dasm_put(Dst, 6958);
8912 } 8965 }
8913 } 8966 }
8914 if (vk) { 8967 if (vk) {
8915 if (LJ_DUALNUM) { 8968 if (LJ_DUALNUM) {
8916 dasm_put(Dst, 6916, FORL_IDX*8); 8969 dasm_put(Dst, 6965, FORL_IDX*8);
8917 } else { 8970 } else {
8918 dasm_put(Dst, 6920); 8971 dasm_put(Dst, 6969);
8919 } 8972 }
8920 dasm_put(Dst, 6922, FORL_STEP*8, FORL_STOP*8, FORL_STEP*8, FORL_IDX*8); 8973 dasm_put(Dst, 6971, FORL_STEP*8, FORL_STOP*8, FORL_STEP*8, FORL_IDX*8);
8921 } else { 8974 } else {
8922 if (LJ_DUALNUM) { 8975 if (LJ_DUALNUM) {
8923 dasm_put(Dst, 6932); 8976 dasm_put(Dst, 6981);
8924 } else { 8977 } else {
8925 dasm_put(Dst, 6934, FORL_STEP*8, FORL_STOP*8); 8978 dasm_put(Dst, 6983, FORL_STEP*8, FORL_STOP*8);
8926 } 8979 }
8927 dasm_put(Dst, 6943, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8); 8980 dasm_put(Dst, 6992, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8);
8928 } 8981 }
8929 dasm_put(Dst, 6954); 8982 dasm_put(Dst, 7003);
8930 if (op != BC_JFORL) { 8983 if (op != BC_JFORL) {
8931 dasm_put(Dst, 6956, 32-1); 8984 dasm_put(Dst, 7005, 32-1);
8932 } 8985 }
8933 dasm_put(Dst, 6959, FORL_EXT*8); 8986 dasm_put(Dst, 7008, FORL_EXT*8);
8934 if (op != BC_JFORL) { 8987 if (op != BC_JFORL) {
8935 dasm_put(Dst, 6962); 8988 dasm_put(Dst, 7011);
8936 } 8989 }
8937 dasm_put(Dst, 6964); 8990 dasm_put(Dst, 7013);
8938 if (op == BC_JFORI) { 8991 if (op == BC_JFORI) {
8939 dasm_put(Dst, 6966, -(BCBIAS_J*4 >> 16)); 8992 dasm_put(Dst, 7015, -(BCBIAS_J*4 >> 16));
8940 } 8993 }
8941 dasm_put(Dst, 6969); 8994 dasm_put(Dst, 7018);
8942 if (op == BC_FORI) { 8995 if (op == BC_FORI) {
8943 dasm_put(Dst, 6972); 8996 dasm_put(Dst, 7021);
8944 } else if (op == BC_IFORL) { 8997 } else if (op == BC_IFORL) {
8945 if (LJ_DUALNUM) { 8998 if (LJ_DUALNUM) {
8946 dasm_put(Dst, 6975); 8999 dasm_put(Dst, 7024);
8947 } else { 9000 } else {
8948 dasm_put(Dst, 6978); 9001 dasm_put(Dst, 7027);
8949 } 9002 }
8950 dasm_put(Dst, 6981, -(BCBIAS_J*4 >> 16)); 9003 dasm_put(Dst, 7030, -(BCBIAS_J*4 >> 16));
8951 } else { 9004 } else {
8952 dasm_put(Dst, 6985, BC_JLOOP); 9005 dasm_put(Dst, 7034, BC_JLOOP);
8953 } 9006 }
8954 if (LJ_DUALNUM) { 9007 if (LJ_DUALNUM) {
8955 dasm_put(Dst, 6988); 9008 dasm_put(Dst, 7037);
8956 } else { 9009 } else {
8957 dasm_put(Dst, 6991); 9010 dasm_put(Dst, 7040);
8958 } 9011 }
8959 dasm_put(Dst, 7003); 9012 dasm_put(Dst, 7052);
8960 if (op == BC_FORI) { 9013 if (op == BC_FORI) {
8961 dasm_put(Dst, 7005, -(BCBIAS_J*4 >> 16)); 9014 dasm_put(Dst, 7054, -(BCBIAS_J*4 >> 16));
8962 } else if (op == BC_IFORL) { 9015 } else if (op == BC_IFORL) {
8963 dasm_put(Dst, 7011); 9016 dasm_put(Dst, 7060);
8964 } else { 9017 } else {
8965 dasm_put(Dst, 7014, BC_JLOOP); 9018 dasm_put(Dst, 7063, BC_JLOOP);
8966 } 9019 }
8967 dasm_put(Dst, 7017); 9020 dasm_put(Dst, 7066);
8968 break; 9021 break;
8969 9022
8970 case BC_ITERL: 9023 case BC_ITERL:
8971#if LJ_HASJIT 9024#if LJ_HASJIT
8972 dasm_put(Dst, 7020); 9025 dasm_put(Dst, 7069);
8973#endif 9026#endif
8974 break; 9027 break;
8975 9028
@@ -8978,40 +9031,40 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
8978 break; 9031 break;
8979#endif 9032#endif
8980 case BC_IITERL: 9033 case BC_IITERL:
8981 dasm_put(Dst, 7022, LJ_TNIL); 9034 dasm_put(Dst, 7071, LJ_TNIL);
8982 if (op == BC_JITERL) { 9035 if (op == BC_JITERL) {
8983 dasm_put(Dst, 7029); 9036 dasm_put(Dst, 7078);
8984 } else { 9037 } else {
8985 dasm_put(Dst, 7031, 32-1, -(BCBIAS_J*4 >> 16)); 9038 dasm_put(Dst, 7080, 32-1, -(BCBIAS_J*4 >> 16));
8986 } 9039 }
8987 dasm_put(Dst, 7039); 9040 dasm_put(Dst, 7088);
8988 break; 9041 break;
8989 9042
8990 case BC_LOOP: 9043 case BC_LOOP:
8991#if LJ_HASJIT 9044#if LJ_HASJIT
8992 dasm_put(Dst, 7051); 9045 dasm_put(Dst, 7100);
8993#endif 9046#endif
8994 break; 9047 break;
8995 9048
8996 case BC_ILOOP: 9049 case BC_ILOOP:
8997 dasm_put(Dst, 7053); 9050 dasm_put(Dst, 7102);
8998 break; 9051 break;
8999 9052
9000 case BC_JLOOP: 9053 case BC_JLOOP:
9001#if LJ_HASJIT 9054#if LJ_HASJIT
9002 dasm_put(Dst, 7064); 9055 dasm_put(Dst, 7113);
9003#endif 9056#endif
9004 break; 9057 break;
9005 9058
9006 case BC_JMP: 9059 case BC_JMP:
9007 dasm_put(Dst, 7066, 32-1, -(BCBIAS_J*4 >> 16)); 9060 dasm_put(Dst, 7115, 32-1, -(BCBIAS_J*4 >> 16));
9008 break; 9061 break;
9009 9062
9010 /* -- Function headers -------------------------------------------------- */ 9063 /* -- Function headers -------------------------------------------------- */
9011 9064
9012 case BC_FUNCF: 9065 case BC_FUNCF:
9013#if LJ_HASJIT 9066#if LJ_HASJIT
9014 dasm_put(Dst, 7082); 9067 dasm_put(Dst, 7131);
9015#endif 9068#endif
9016 case BC_FUNCV: /* NYI: compiled vararg functions. */ 9069 case BC_FUNCV: /* NYI: compiled vararg functions. */
9017 break; 9070 break;
@@ -9021,38 +9074,38 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
9021 break; 9074 break;
9022#endif 9075#endif
9023 case BC_IFUNCF: 9076 case BC_IFUNCF:
9024 dasm_put(Dst, 7084, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3); 9077 dasm_put(Dst, 7133, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3);
9025 if (op == BC_JFUNCF) { 9078 if (op == BC_JFUNCF) {
9026 dasm_put(Dst, 7102); 9079 dasm_put(Dst, 7151);
9027 } else { 9080 } else {
9028 dasm_put(Dst, 7104); 9081 dasm_put(Dst, 7153);
9029 } 9082 }
9030 dasm_put(Dst, 7113); 9083 dasm_put(Dst, 7162);
9031 break; 9084 break;
9032 9085
9033 case BC_JFUNCV: 9086 case BC_JFUNCV:
9034#if !LJ_HASJIT 9087#if !LJ_HASJIT
9035 break; 9088 break;
9036#endif 9089#endif
9037 dasm_put(Dst, 7119); 9090 dasm_put(Dst, 7168);
9038 break; /* NYI: compiled vararg functions. */ 9091 break; /* NYI: compiled vararg functions. */
9039 9092
9040 case BC_IFUNCV: 9093 case BC_IFUNCV:
9041 dasm_put(Dst, 7121, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams), LJ_TNIL); 9094 dasm_put(Dst, 7170, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams), LJ_TNIL);
9042 break; 9095 break;
9043 9096
9044 case BC_FUNCC: 9097 case BC_FUNCC:
9045 case BC_FUNCCW: 9098 case BC_FUNCCW:
9046 if (op == BC_FUNCC) { 9099 if (op == BC_FUNCC) {
9047 dasm_put(Dst, 7174, Dt8(->f)); 9100 dasm_put(Dst, 7223, Dt8(->f));
9048 } else { 9101 } else {
9049 dasm_put(Dst, 7177, DISPATCH_GL(wrapf)); 9102 dasm_put(Dst, 7226, DISPATCH_GL(wrapf));
9050 } 9103 }
9051 dasm_put(Dst, 7180, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C); 9104 dasm_put(Dst, 7229, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C);
9052 if (op == BC_FUNCCW) { 9105 if (op == BC_FUNCCW) {
9053 dasm_put(Dst, 7193, Dt8(->f)); 9106 dasm_put(Dst, 7242, Dt8(->f));
9054 } 9107 }
9055 dasm_put(Dst, 7196, DISPATCH_GL(vmstate), Dt1(->top), 31-3, Dt1(->base), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate)); 9108 dasm_put(Dst, 7245, DISPATCH_GL(vmstate), Dt1(->base), 31-3, Dt1(->top), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate));
9056 break; 9109 break;
9057 9110
9058 /* ---------------------------------------------------------------------- */ 9111 /* ---------------------------------------------------------------------- */
@@ -9072,7 +9125,7 @@ static int build_backend(BuildCtx *ctx)
9072 9125
9073 build_subroutines(ctx); 9126 build_subroutines(ctx);
9074 9127
9075 dasm_put(Dst, 7217); 9128 dasm_put(Dst, 7266);
9076 for (op = 0; op < BC__MAX; op++) 9129 for (op = 0; op < BC__MAX; op++)
9077 build_ins(ctx, (BCOp)op, op); 9130 build_ins(ctx, (BCOp)op, op);
9078 9131
@@ -9107,7 +9160,8 @@ static void emit_asm_debug(BuildCtx *ctx)
9107 "\t.long .Lbegin\n" 9160 "\t.long .Lbegin\n"
9108 "\t.long %d\n" 9161 "\t.long %d\n"
9109 "\t.byte 0xe\n\t.uleb128 %d\n" 9162 "\t.byte 0xe\n\t.uleb128 %d\n"
9110 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n", 9163 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n"
9164 "\t.byte 0x5\n\t.uleb128 70\n\t.uleb128 55\n",
9111 (int)ctx->codesz, CFRAME_SIZE); 9165 (int)ctx->codesz, CFRAME_SIZE);
9112 for (i = 14; i <= 31; i++) 9166 for (i = 14; i <= 31; i++)
9113 fprintf(ctx->fp, 9167 fprintf(ctx->fp,
@@ -9144,7 +9198,8 @@ static void emit_asm_debug(BuildCtx *ctx)
9144 "\t.long %d\n" 9198 "\t.long %d\n"
9145 "\t.uleb128 0\n" /* augmentation length */ 9199 "\t.uleb128 0\n" /* augmentation length */
9146 "\t.byte 0xe\n\t.uleb128 %d\n" 9200 "\t.byte 0xe\n\t.uleb128 %d\n"
9147 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n", 9201 "\t.byte 0x11\n\t.uleb128 65\n\t.sleb128 -1\n"
9202 "\t.byte 0x5\n\t.uleb128 70\n\t.uleb128 55\n",
9148 (int)ctx->codesz, CFRAME_SIZE); 9203 (int)ctx->codesz, CFRAME_SIZE);
9149 for (i = 14; i <= 31; i++) 9204 for (i = 14; i <= 31; i++)
9150 fprintf(ctx->fp, 9205 fprintf(ctx->fp,
diff --git a/src/lj_frame.h b/src/lj_frame.h
index 2baf44a8..b8b7a727 100644
--- a/src/lj_frame.h
+++ b/src/lj_frame.h
@@ -100,13 +100,13 @@ enum {
100#define CFRAME_SIZE 64 100#define CFRAME_SIZE 64
101#define CFRAME_SHIFT_MULTRES 3 101#define CFRAME_SHIFT_MULTRES 3
102#elif LJ_TARGET_PPC 102#elif LJ_TARGET_PPC
103#define CFRAME_OFS_ERRF 28 103#define CFRAME_OFS_ERRF 48
104#define CFRAME_OFS_NRES 24 104#define CFRAME_OFS_NRES 44
105#define CFRAME_OFS_PREV 20 105#define CFRAME_OFS_PREV 40
106#define CFRAME_OFS_L 16 106#define CFRAME_OFS_L 36
107#define CFRAME_OFS_PC 8 107#define CFRAME_OFS_PC 32
108#define CFRAME_OFS_MULTRES 12 108#define CFRAME_OFS_MULTRES 28
109#define CFRAME_SIZE 256 109#define CFRAME_SIZE 272
110#define CFRAME_SHIFT_MULTRES 3 110#define CFRAME_SHIFT_MULTRES 3
111#elif LJ_TARGET_PPCSPE 111#elif LJ_TARGET_PPCSPE
112#define CFRAME_OFS_ERRF 28 112#define CFRAME_OFS_ERRF 28