aboutsummaryrefslogtreecommitdiff
path: root/src/buildvm_ppcspe.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildvm_ppcspe.h')
-rw-r--r--src/buildvm_ppcspe.h1110
1 files changed, 580 insertions, 530 deletions
diff --git a/src/buildvm_ppcspe.h b/src/buildvm_ppcspe.h
index 59cd96fa..257fe353 100644
--- a/src/buildvm_ppcspe.h
+++ b/src/buildvm_ppcspe.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[4961] = { 15static const unsigned int build_actionlist[4992] = {
160x00010001, 160x00010001,
170x00060014, 170x00060014,
180x72000000, 180x72000000,
@@ -740,6 +740,9 @@ static const unsigned int build_actionlist[4961] = {
7400x48000000, 7400x48000000,
7410x00050024, 7410x00050024,
7420x0006003e, 7420x0006003e,
7430x00000000,
7440x7c751b78,
7450x00000000,
7430x7c8e6214, 7460x7c8e6214,
7440x91d20000, 7470x91d20000,
7450x00098200, 7480x00098200,
@@ -747,8 +750,17 @@ static const unsigned int build_actionlist[4961] = {
7470x9201000c, 7500x9201000c,
7480x48000001, 7510x48000001,
7490x00030006, 7520x00030006,
7530x00000000,
7540x28030000,
7550x40820000,
7560x00050835,
7570x7ea3ab78,
7580x48000000,
7590x0005003f,
7600x00000000,
7500x48000000, 7610x48000000,
7510x00050035, 7620x00050035,
7630x00000000,
7520x00060025, 7640x00060025,
7530x7e439378, 7650x7e439378,
7540x91320000, 7660x91320000,
@@ -772,7 +784,7 @@ static const unsigned int build_actionlist[4961] = {
7720x7e947214, 7840x7e947214,
7730x7c0903a6, 7850x7c0903a6,
7740x4e800420, 7860x4e800420,
7750x0006003f, 7870x00060040,
7760x7e439378, 7880x7e439378,
7770x91d20000, 7890x91d20000,
7780x00098200, 7900x00098200,
@@ -786,8 +798,8 @@ static const unsigned int build_actionlist[4961] = {
7860x39750008, 7980x39750008,
7870x8154fffc, 7990x8154fffc,
7880x48000000, 8000x48000000,
7890x00050040, 8010x00050041,
7900x00060041, 8020x00060042,
7910x7e439378, 8030x7e439378,
7920x91d20000, 8040x91d20000,
7930x00098200, 8050x00098200,
@@ -811,21 +823,21 @@ static const unsigned int build_actionlist[4961] = {
8110x00000000, 8230x00000000,
8120x48000000, 8240x48000000,
8130x00070000, 8250x00070000,
8140x00060042, 8260x00060043,
8150x280b0008, 8270x280b0008,
8160x100e0301, 8280x100e0301,
8170x41800000, 8290x41800000,
8180x00050843, 8300x00050844,
8190x111ad200, 8310x111ad200,
8200x3a8efff8, 8320x3a8efff8,
8210x10804232, 8330x10804232,
8220x820efff8, 8340x820efff8,
8230x40840000, 8350x40840000,
8240x00050843, 8360x00050844,
8250x10140321, 8370x10140321,
8260x398b0008, 8380x398b0008,
8270x41820000, 8390x41820000,
8280x00050844, 8400x00050845,
8290x39000008, 8410x39000008,
8300x396bfff8, 8420x396bfff8,
8310x0006000b, 8430x0006000b,
@@ -836,12 +848,12 @@ static const unsigned int build_actionlist[4961] = {
8360x40820000, 8480x40820000,
8370x0005080b, 8490x0005080b,
8380x48000000, 8500x48000000,
8390x00050044, 8510x00050045,
8400x00060045, 8520x00060046,
8410x280b0008, 8530x280b0008,
8420x806e0000, 8540x806e0000,
8430x41800000, 8550x41800000,
8440x00050843, 8560x00050844,
8450x39200000, 8570x39200000,
8460x00098200, 8580x00098200,
8470x7c03b040, 8590x7c03b040,
@@ -853,12 +865,12 @@ static const unsigned int build_actionlist[4961] = {
8530x00098200, 8650x00098200,
8540x10694300, 8660x10694300,
8550x48000000, 8670x48000000,
8560x00050046, 8680x00050047,
8570x00060047, 8690x00060048,
8580x280b0008, 8700x280b0008,
8590x106e0301, 8710x106e0301,
8600x41800000, 8720x41800000,
8610x00050843, 8730x00050844,
8620x1003c234, 8740x1003c234,
8630x11031a2c, 8750x11031a2c,
8640x40800000, 8760x40800000,
@@ -872,7 +884,7 @@ static const unsigned int build_actionlist[4961] = {
8720x81710000, 8840x81710000,
8730x00098200, 8850x00098200,
8740x41820000, 8860x41820000,
8750x00050846, 8870x00050847,
8760x00000000, 8880x00000000,
8770x800a0000, 8890x800a0000,
8780x00098200, 8900x00098200,
@@ -901,16 +913,16 @@ static const unsigned int build_actionlist[4961] = {
9010x00050805, 9130x00050805,
9020x28090000, 9140x28090000,
9030x41820000, 9150x41820000,
9040x00050846, 9160x00050847,
9050x48000000, 9170x48000000,
9060x0005000d, 9180x0005000d,
9070x0006000f, 9190x0006000f,
9080x1008d234, 9200x1008d234,
9090x41800000, 9210x41800000,
9100x00050846, 9220x00050847,
9110x10684217, 9230x10684217,
9120x48000000, 9240x48000000,
9130x00050046, 9250x00050047,
9140x00060010, 9260x00060010,
9150x2c080000, 9270x2c080000,
9160x00098200, 9280x00098200,
@@ -928,30 +940,30 @@ static const unsigned int build_actionlist[4961] = {
9280x7d49402e, 9400x7d49402e,
9290x48000000, 9410x48000000,
9300x0005000c, 9420x0005000c,
9310x00060048, 9430x00060049,
9320x00000000, 9440x00000000,
9330x280b0010, 9450x280b0010,
9340x106e0301, 9460x106e0301,
9350x108e0b01, 9470x108e0b01,
9360x41800000, 9480x41800000,
9370x00050843, 9490x00050844,
9380x1003222c, 9500x1003222c,
9390x1000c234, 9510x1000c234,
9400x40830000, 9520x40830000,
9410x00050843, 9530x00050844,
9420x81030000, 9540x81030000,
9430x00098200, 9550x00098200,
9440x28080000, 9560x28080000,
9450x88c30000, 9570x88c30000,
9460x00098200, 9580x00098200,
9470x40820000, 9590x40820000,
9480x00050843, 9600x00050844,
9490x70c00000, 9610x70c00000,
9500x00090200, 9620x00090200,
9510x90830000, 9630x90830000,
9520x00098200, 9640x00098200,
9530x41820000, 9650x41820000,
9540x00050846, 9660x00050847,
9550x80110000, 9670x80110000,
9560x00098200, 9680x00098200,
9570x54c607b8, 9690x54c607b8,
@@ -962,41 +974,41 @@ static const unsigned int build_actionlist[4961] = {
9620x90030000, 9740x90030000,
9630x00098200, 9750x00098200,
9640x48000000, 9760x48000000,
9650x00050046, 9770x00050047,
9660x00060049, 9780x0006004a,
9670x280b0010, 9790x280b0010,
9680x108e0301, 9800x108e0301,
9690x41800000, 9810x41800000,
9700x00050843, 9820x00050844,
9710x1004c234, 9830x1004c234,
9720x38ae0008, 9840x38ae0008,
9730x40800000, 9850x40800000,
9740x00050843, 9860x00050844,
9750x7e439378, 9870x7e439378,
9760x48000001, 9880x48000001,
9770x00030009, 9890x00030009,
9780x10630301, 9900x10630301,
9790x48000000, 9910x48000000,
9800x00050046, 9920x00050047,
9810x0006004a, 9930x0006004b,
9820x280b0008, 9940x280b0008,
9830x106e0301, 9950x106e0301,
9840x40820000, 9960x40820000,
9850x00050843, 9970x00050844,
9860x1003b232, 9980x1003b232,
9870x41800000, 9990x41800000,
9880x00050846, 10000x00050847,
9890x48000000, 10010x48000000,
9900x00050043, 10020x00050044,
9910x0006004b, 10030x0006004c,
9920x00000000, 10040x00000000,
9930x280b0008, 10050x280b0008,
9940x106e0301, 10060x106e0301,
9950x41800000, 10070x41800000,
9960x00050843, 10080x00050844,
9970x1003ba34, 10090x1003ba34,
9980x41800000, 10100x41800000,
9990x00050846, 10110x00050847,
10000x80110000, 10120x80110000,
10010x00098200, 10130x00098200,
10020x1003b232, 10140x1003b232,
@@ -1006,31 +1018,31 @@ static const unsigned int build_actionlist[4961] = {
10060x4c403202, 10180x4c403202,
10070x9201000c, 10190x9201000c,
10080x40820000, 10200x40820000,
10090x00050843, 10210x00050844,
10100x80110000, 10220x80110000,
10110x00098200, 10230x00098200,
10120x81110000, 10240x81110000,
10130x00098200, 10250x00098200,
10140x7c004040, 10260x7c004040,
10150x40800001, 10270x40800001,
10160x0005084c, 10280x0005084d,
10170x7e439378, 10290x7e439378,
10180x7dc47378, 10300x7dc47378,
10190x48000001, 10310x48000001,
10200x0003000a, 10320x0003000a,
10210x10771a2d, 10330x10771a2d,
10220x48000000, 10340x48000000,
10230x00050046, 10350x00050047,
10240x0006004d, 10360x0006004e,
10250x280b0008, 10370x280b0008,
10260x108e0301, 10380x108e0301,
10270x41800000, 10390x41800000,
10280x00050843, 10400x00050844,
10290x134e5b20, 10410x134e5b20,
10300x1004c234, 10420x1004c234,
10310x820efff8, 10430x820efff8,
10320x40800000, 10440x40800000,
10330x00050843, 10450x00050844,
10340x91d20000, 10460x91d20000,
10350x00098200, 10470x00098200,
10360x7e439378, 10480x7e439378,
@@ -1043,7 +1055,7 @@ static const unsigned int build_actionlist[4961] = {
10430x28030000, 10550x28030000,
10440x107ad217, 10560x107ad217,
10450x41820000, 10570x41820000,
10460x00050846, 10580x00050847,
10470x100e0b01, 10590x100e0b01,
10480x3a8efff8, 10600x3a8efff8,
10490x110e1301, 10610x110e1301,
@@ -1052,16 +1064,16 @@ static const unsigned int build_actionlist[4961] = {
10520x00098200, 10640x00098200,
10530x11140b21, 10650x11140b21,
10540x48000000, 10660x48000000,
10550x00050044, 10670x00050045,
10560x0006004e, 10680x0006004f,
10570x280b0008, 10690x280b0008,
10580x106e0301, 10700x106e0301,
10590x41800000, 10710x41800000,
10600x00050843, 10720x00050844,
10610x1003c234, 10730x1003c234,
10620x820efff8, 10740x820efff8,
10630x40800000, 10750x40800000,
10640x00050843, 10760x00050844,
10650x00000000, 10770x00000000,
10660x81230000, 10780x81230000,
10670x00098200, 10790x00098200,
@@ -1070,7 +1082,7 @@ static const unsigned int build_actionlist[4961] = {
10700x28090000, 10820x28090000,
10710x3a8efff8, 10830x3a8efff8,
10720x40820000, 10840x40820000,
10730x00050843, 10850x00050844,
10740x00000000, 10860x00000000,
10750x100a0301, 10870x100a0301,
10760x00090cab, 10880x00090cab,
@@ -1081,21 +1093,21 @@ static const unsigned int build_actionlist[4961] = {
10810x00098200, 10930x00098200,
10820x10140321, 10940x10140321,
10830x48000000, 10950x48000000,
10840x00050044, 10960x00050045,
10850x0006004f, 10970x00060050,
10860x280b0010, 10980x280b0010,
10870x106e0301, 10990x106e0301,
10880x108e0b01, 11000x108e0b01,
10890x41800000, 11010x41800000,
10900x00050843, 11020x00050844,
10910x1003c234, 11030x1003c234,
10920x820efff8, 11040x820efff8,
10930x40800000, 11050x40800000,
10940x00050843, 11060x00050844,
10950x1004b232, 11070x1004b232,
10960x3cc03ff0, 11080x3cc03ff0,
10970x40800000, 11090x40800000,
10980x00050843, 11100x00050844,
10990x112022f5, 11110x112022f5,
11000x80030000, 11120x80030000,
11010x00098200, 11130x00098200,
@@ -1117,12 +1129,12 @@ static const unsigned int build_actionlist[4961] = {
11170x39800000, 11290x39800000,
11180x00098200, 11300x00098200,
11190x41800000, 11310x41800000,
11200x00050844, 11320x00050845,
11210x39800000, 11330x39800000,
11220x00098200, 11340x00098200,
11230x11140b21, 11350x11140b21,
11240x48000000, 11360x48000000,
11250x00050044, 11370x00050045,
11260x0006000c, 11380x0006000c,
11270x80030000, 11390x80030000,
11280x00098200, 11400x00098200,
@@ -1130,7 +1142,7 @@ static const unsigned int build_actionlist[4961] = {
11300x39800000, 11420x39800000,
11310x00098200, 11430x00098200,
11320x41820000, 11440x41820000,
11330x00050844, 11450x00050845,
11340x7d244b78, 11460x7d244b78,
11350x48000001, 11470x48000001,
11360x0003000c, 11480x0003000c,
@@ -1138,20 +1150,20 @@ static const unsigned int build_actionlist[4961] = {
11380x39800000, 11500x39800000,
11390x00098200, 11510x00098200,
11400x41820000, 11520x41820000,
11410x00050844, 11530x00050845,
11420x00000000, 11540x00000000,
11430x11030301, 11550x11030301,
11440x48000000, 11560x48000000,
11450x0005000b, 11570x0005000b,
11460x00060050, 11580x00060051,
11470x280b0008, 11590x280b0008,
11480x106e0301, 11600x106e0301,
11490x41800000, 11610x41800000,
11500x00050843, 11620x00050844,
11510x1003c234, 11630x1003c234,
11520x820efff8, 11640x820efff8,
11530x40800000, 11650x40800000,
11540x00050843, 11660x00050844,
11550x00000000, 11670x00000000,
11560x81230000, 11680x81230000,
11570x00098200, 11690x00098200,
@@ -1160,7 +1172,7 @@ static const unsigned int build_actionlist[4961] = {
11600x28090000, 11720x28090000,
11610x3a8efff8, 11730x3a8efff8,
11620x40820000, 11740x40820000,
11630x00050843, 11750x00050844,
11640x00000000, 11760x00000000,
11650x100a0301, 11770x100a0301,
11660x00090cab, 11780x00090cab,
@@ -1172,13 +1184,13 @@ static const unsigned int build_actionlist[4961] = {
11720x110e0b21, 11840x110e0b21,
11730x10140321, 11850x10140321,
11740x48000000, 11860x48000000,
11750x00050044, 11870x00050045,
11760x00060051, 11880x00060052,
11770x280b0008, 11890x280b0008,
11780x88d10000, 11900x88d10000,
11790x00098200, 11910x00098200,
11800x41800000, 11920x41800000,
11810x00050843, 11930x00050844,
11820x7dc97378, 11940x7dc97378,
11830x39ce0008, 11950x39ce0008,
11840x54c607fe, 11960x54c607fe,
@@ -1188,18 +1200,18 @@ static const unsigned int build_actionlist[4961] = {
11880x00098200, 12000x00098200,
11890x48000000, 12010x48000000,
11900x00050024, 12020x00050024,
11910x00060052, 12030x00060053,
11920x280b0010, 12040x280b0010,
11930x106e0301, 12050x106e0301,
11940x108e0b01, 12060x108e0b01,
11950x41800000, 12070x41800000,
11960x00050843, 12080x00050844,
11970x88d10000, 12090x88d10000,
11980x00098200, 12100x00098200,
11990x7dc97378, 12110x7dc97378,
12000x1004ca34, 12120x1004ca34,
12010x40800000, 12130x40800000,
12020x00050843, 12140x00050844,
12030x39ce0010, 12150x39ce0010,
12040x54c607fe, 12160x54c607fe,
12050x000900ab, 12170x000900ab,
@@ -1210,16 +1222,16 @@ static const unsigned int build_actionlist[4961] = {
12100x00098200, 12220x00098200,
12110x48000000, 12230x48000000,
12120x00050024, 12240x00050024,
12130x00060053, 12250x00060054,
12140x280b0008, 12260x280b0008,
12150x106e0301, 12270x106e0301,
12160x41800000, 12280x41800000,
12170x00050843, 12290x00050844,
12180x10031a2c, 12300x10031a2c,
12190x2c000000, 12310x2c000000,
12200x00098200, 12320x00098200,
12210x40820000, 12330x40820000,
12220x00050843, 12340x00050844,
12230x88030000, 12350x88030000,
12240x00098200, 12360x00098200,
12250x81030000, 12370x81030000,
@@ -1246,7 +1258,7 @@ static const unsigned int build_actionlist[4961] = {
12460x91d20000, 12580x91d20000,
12470x00098200, 12590x00098200,
12480x41980000, 12600x41980000,
12490x00050843, 12610x00050844,
12500x0006000b, 12620x0006000b,
12510x39ce0008, 12630x39ce0008,
12520x396bfff8, 12640x396bfff8,
@@ -1348,7 +1360,7 @@ static const unsigned int build_actionlist[4961] = {
13480x38600000, 13600x38600000,
13490x48000000, 13610x48000000,
13500x0005000e, 13620x0005000e,
13510x00060054, 13630x00060055,
13520x00000000, 13640x00000000,
13530x806a0000, 13650x806a0000,
13540x00098200, 13660x00098200,
@@ -1377,7 +1389,7 @@ static const unsigned int build_actionlist[4961] = {
13770x91d20000, 13890x91d20000,
13780x00098200, 13900x00098200,
13790x41980000, 13910x41980000,
13800x00050843, 13920x00050844,
13810x0006000b, 13930x0006000b,
13820x91230000, 13940x91230000,
13830x00098200, 13950x00098200,
@@ -1462,7 +1474,7 @@ static const unsigned int build_actionlist[4961] = {
14620x38600000, 14740x38600000,
14630x48000000, 14750x48000000,
14640x0005000e, 14760x0005000e,
14650x00060055, 14770x00060056,
14660x80120000, 14780x80120000,
14670x00098200, 14790x00098200,
14680x00000000, 14800x00000000,
@@ -1476,30 +1488,30 @@ static const unsigned int build_actionlist[4961] = {
14760x38600000, 14880x38600000,
14770x00098200, 14890x00098200,
14780x41820000, 14900x41820000,
14790x00050843, 14910x00050844,
14800x93720000, 14920x93720000,
14810x00098200, 14930x00098200,
14820x98720000, 14940x98720000,
14830x00098200, 14950x00098200,
14840x48000000, 14960x48000000,
14850x0005001a, 14970x0005001a,
14860x00060056, 14980x00060057,
14870x280b0008, 14990x280b0008,
14880x106e0301, 15000x106e0301,
14890x41800000, 15010x41800000,
14900x00050843, 15020x00050844,
14910x1003b232, 15030x1003b232,
14920x40800000, 15040x40800000,
14930x00050843, 15050x00050844,
14940x106302e4, 15060x106302e4,
14950x00060046, 15070x00060047,
14960x820efff8, 15080x820efff8,
14970x3a8efff8, 15090x3a8efff8,
14980x10740321, 15100x10740321,
14990x00060057, 15110x00060058,
15000x39800000, 15120x39800000,
15010x00098200, 15130x00098200,
15020x00060044, 15140x00060045,
15030x72000000, 15150x72000000,
15040x00090200, 15160x00090200,
15050x7d936378, 15170x7d936378,
@@ -1529,312 +1541,312 @@ static const unsigned int build_actionlist[4961] = {
15290x13544320, 15410x13544320,
15300x48000000, 15420x48000000,
15310x0005000f, 15430x0005000f,
15320x00060058, 15440x00060059,
15330x00000000, 15450x00000000,
15340x280b0008, 15460x280b0008,
15350x108e0301, 15470x108e0301,
15360x41800000, 15480x41800000,
15370x00050843, 15490x00050844,
15380x1004b232, 15500x1004b232,
15390x1064222c, 15510x1064222c,
15400x40800000, 15520x40800000,
15410x00050843, 15530x00050844,
15420x820efff8, 15540x820efff8,
15430x48000001, 15550x48000001,
15440x00050059, 15560x0005005a,
15450x3a8efff8, 15570x3a8efff8,
15460x10940321, 15580x10940321,
15470x48000000, 15590x48000000,
15480x00050057, 15600x00050058,
15490x0006005a, 15610x0006005b,
15500x280b0008, 15620x280b0008,
15510x108e0301, 15630x108e0301,
15520x41800000, 15640x41800000,
15530x00050843, 15650x00050844,
15540x1004b232, 15660x1004b232,
15550x1064222c, 15670x1064222c,
15560x40800000, 15680x40800000,
15570x00050843, 15690x00050844,
15580x820efff8, 15700x820efff8,
15590x48000001, 15710x48000001,
15600x0005005b, 15720x0005005c,
15610x3a8efff8, 15730x3a8efff8,
15620x10940321, 15740x10940321,
15630x48000000, 15750x48000000,
15640x00050057, 15760x00050058,
15650x0006005c, 15770x0006005d,
15660x280b0008, 15780x280b0008,
15670x108e0301, 15790x108e0301,
15680x41800000, 15800x41800000,
15690x00050843, 15810x00050844,
15700x1004b232, 15820x1004b232,
15710x1064222c, 15830x1064222c,
15720x40800000, 15840x40800000,
15730x00050843, 15850x00050844,
15740x48000001, 15860x48000001,
15750x0003000e, 15870x0003000e,
15760x1063222d, 15880x1063222d,
15770x48000000, 15890x48000000,
15780x00050046, 15900x00050047,
15790x0006005d, 15910x0006005e,
15800x280b0008, 15920x280b0008,
15810x108e0301, 15930x108e0301,
15820x41800000, 15940x41800000,
15830x00050843, 15950x00050844,
15840x1004b232, 15960x1004b232,
15850x1064222c, 15970x1064222c,
15860x40800000, 15980x40800000,
15870x00050843, 15990x00050844,
15880x48000001, 16000x48000001,
15890x0003000f, 16010x0003000f,
15900x1063222d, 16020x1063222d,
15910x48000000, 16030x48000000,
15920x00050046, 16040x00050047,
15930x0006005e, 16050x0006005f,
15940x280b0008, 16060x280b0008,
15950x108e0301, 16070x108e0301,
15960x41800000, 16080x41800000,
15970x00050843, 16090x00050844,
15980x1004b232, 16100x1004b232,
15990x1064222c, 16110x1064222c,
16000x40800000, 16120x40800000,
16010x00050843, 16130x00050844,
16020x00000000, 16140x00000000,
16030x48000001, 16150x48000001,
16040x00030010, 16160x00030010,
16050x1063222d, 16170x1063222d,
16060x48000000, 16180x48000000,
16070x00050046, 16190x00050047,
16080x0006005f, 16200x00060060,
16090x280b0008, 16210x280b0008,
16100x108e0301, 16220x108e0301,
16110x41800000, 16230x41800000,
16120x00050843, 16240x00050844,
16130x1004b232, 16250x1004b232,
16140x1064222c, 16260x1064222c,
16150x40800000, 16270x40800000,
16160x00050843, 16280x00050844,
16170x48000001, 16290x48000001,
16180x00030011, 16300x00030011,
16190x1063222d, 16310x1063222d,
16200x48000000, 16320x48000000,
16210x00050046, 16330x00050047,
16220x00060060, 16340x00060061,
16230x280b0008, 16350x280b0008,
16240x108e0301, 16360x108e0301,
16250x41800000, 16370x41800000,
16260x00050843, 16380x00050844,
16270x1004b232, 16390x1004b232,
16280x1064222c, 16400x1064222c,
16290x40800000, 16410x40800000,
16300x00050843, 16420x00050844,
16310x48000001, 16430x48000001,
16320x00030012, 16440x00030012,
16330x1063222d, 16450x1063222d,
16340x48000000, 16460x48000000,
16350x00050046, 16470x00050047,
16360x00060061, 16480x00060062,
16370x280b0008, 16490x280b0008,
16380x108e0301, 16500x108e0301,
16390x41800000, 16510x41800000,
16400x00050843, 16520x00050844,
16410x1004b232, 16530x1004b232,
16420x1064222c, 16540x1064222c,
16430x40800000, 16550x40800000,
16440x00050843, 16560x00050844,
16450x48000001, 16570x48000001,
16460x00030013, 16580x00030013,
16470x1063222d, 16590x1063222d,
16480x48000000, 16600x48000000,
16490x00050046, 16610x00050047,
16500x00060062, 16620x00060063,
16510x280b0008, 16630x280b0008,
16520x108e0301, 16640x108e0301,
16530x41800000, 16650x41800000,
16540x00050843, 16660x00050844,
16550x1004b232, 16670x1004b232,
16560x1064222c, 16680x1064222c,
16570x40800000, 16690x40800000,
16580x00050843, 16700x00050844,
16590x48000001, 16710x48000001,
16600x00030014, 16720x00030014,
16610x1063222d, 16730x1063222d,
16620x48000000, 16740x48000000,
16630x00050046, 16750x00050047,
16640x00060063, 16760x00060064,
16650x00000000, 16770x00000000,
16660x280b0008, 16780x280b0008,
16670x108e0301, 16790x108e0301,
16680x41800000, 16800x41800000,
16690x00050843, 16810x00050844,
16700x1004b232, 16820x1004b232,
16710x1064222c, 16830x1064222c,
16720x40800000, 16840x40800000,
16730x00050843, 16850x00050844,
16740x48000001, 16860x48000001,
16750x00030015, 16870x00030015,
16760x1063222d, 16880x1063222d,
16770x48000000, 16890x48000000,
16780x00050046, 16900x00050047,
16790x00060064, 16910x00060065,
16800x280b0008, 16920x280b0008,
16810x108e0301, 16930x108e0301,
16820x41800000, 16940x41800000,
16830x00050843, 16950x00050844,
16840x1004b232, 16960x1004b232,
16850x1064222c, 16970x1064222c,
16860x40800000, 16980x40800000,
16870x00050843, 16990x00050844,
16880x48000001, 17000x48000001,
16890x00030016, 17010x00030016,
16900x1063222d, 17020x1063222d,
16910x48000000, 17030x48000000,
16920x00050046, 17040x00050047,
16930x00060065, 17050x00060066,
16940x280b0008, 17060x280b0008,
16950x108e0301, 17070x108e0301,
16960x41800000, 17080x41800000,
16970x00050843, 17090x00050844,
16980x1004b232, 17100x1004b232,
16990x1064222c, 17110x1064222c,
17000x40800000, 17120x40800000,
17010x00050843, 17130x00050844,
17020x48000001, 17140x48000001,
17030x00030017, 17150x00030017,
17040x1063222d, 17160x1063222d,
17050x48000000, 17170x48000000,
17060x00050046, 17180x00050047,
17070x00060066, 17190x00060067,
17080x280b0008, 17200x280b0008,
17090x108e0301, 17210x108e0301,
17100x41800000, 17220x41800000,
17110x00050843, 17230x00050844,
17120x1004b232, 17240x1004b232,
17130x1064222c, 17250x1064222c,
17140x40800000, 17260x40800000,
17150x00050843, 17270x00050844,
17160x48000001, 17280x48000001,
17170x00030018, 17290x00030018,
17180x1063222d, 17300x1063222d,
17190x48000000, 17310x48000000,
17200x00050046, 17320x00050047,
17210x00060067, 17330x00060068,
17220x280b0008, 17340x280b0008,
17230x108e0301, 17350x108e0301,
17240x41800000, 17360x41800000,
17250x00050843, 17370x00050844,
17260x1004b232, 17380x1004b232,
17270x1064222c, 17390x1064222c,
17280x40800000, 17400x40800000,
17290x00050843, 17410x00050844,
17300x00000000, 17420x00000000,
17310x48000001, 17430x48000001,
17320x00030019, 17440x00030019,
17330x1063222d, 17450x1063222d,
17340x48000000, 17460x48000000,
17350x00050046, 17470x00050047,
17360x00060068, 17480x00060069,
17370x280b0008, 17490x280b0008,
17380x108e0301, 17500x108e0301,
17390x41800000, 17510x41800000,
17400x00050843, 17520x00050844,
17410x1004b232, 17530x1004b232,
17420x1064222c, 17540x1064222c,
17430x40800000, 17550x40800000,
17440x00050843, 17560x00050844,
17450x48000001, 17570x48000001,
17460x0003001a, 17580x0003001a,
17470x1063222d, 17590x1063222d,
17480x48000000, 17600x48000000,
17490x00050046, 17610x00050047,
17500x00060069, 17620x0006006a,
17510x280b0010, 17630x280b0010,
17520x108e0301, 17640x108e0301,
17530x10ce0b01, 17650x10ce0b01,
17540x41800000, 17660x41800000,
17550x00050843, 17670x00050844,
17560x1066222c, 17680x1066222c,
17570x1003b232, 17690x1003b232,
17580x10a6322c, 17700x10a6322c,
17590x40830000, 17710x40830000,
17600x00050843, 17720x00050844,
17610x48000001, 17730x48000001,
17620x0003001b, 17740x0003001b,
17630x1063222d, 17750x1063222d,
17640x48000000, 17760x48000000,
17650x00050046, 17770x00050047,
17660x0006006a, 17780x0006006b,
17670x280b0010, 17790x280b0010,
17680x108e0301, 17800x108e0301,
17690x10ce0b01, 17810x10ce0b01,
17700x41800000, 17820x41800000,
17710x00050843, 17830x00050844,
17720x1066222c, 17840x1066222c,
17730x1003b232, 17850x1003b232,
17740x10a6322c, 17860x10a6322c,
17750x40830000, 17870x40830000,
17760x00050843, 17880x00050844,
17770x48000001, 17890x48000001,
17780x0003001c, 17900x0003001c,
17790x1063222d, 17910x1063222d,
17800x48000000, 17920x48000000,
17810x00050046, 17930x00050047,
17820x0006006b, 17940x0006006c,
17830x280b0010, 17950x280b0010,
17840x108e0301, 17960x108e0301,
17850x10ce0b01, 17970x10ce0b01,
17860x41800000, 17980x41800000,
17870x00050843, 17990x00050844,
17880x1066222c, 18000x1066222c,
17890x1003b232, 18010x1003b232,
17900x10a6322c, 18020x10a6322c,
17910x40830000, 18030x40830000,
17920x00050843, 18040x00050844,
17930x48000001, 18050x48000001,
17940x0003001d, 18060x0003001d,
17950x1063222d, 18070x1063222d,
17960x48000000, 18080x48000000,
17970x00050046, 18090x00050047,
17980x0006006c,
17990x0006006d, 18100x0006006d,
18110x0006006e,
18000x00000000, 18120x00000000,
18010x280b0008, 18130x280b0008,
18020x106e0301, 18140x106e0301,
18030x41800000, 18150x41800000,
18040x00050843, 18160x00050844,
18050x1003b232, 18170x1003b232,
18060x40800000, 18180x40800000,
18070x00050843, 18190x00050844,
18080x108a0301, 18200x108a0301,
18090x00090cab, 18210x00090cab,
18100x106322e8, 18220x106322e8,
18110x48000000, 18230x48000000,
18120x00050046, 18240x00050047,
18130x0006006e, 18250x0006006f,
18140x280b0010, 18260x280b0010,
18150x108e0301, 18270x108e0301,
18160x10ce0b01, 18280x10ce0b01,
18170x41800000, 18290x41800000,
18180x00050843, 18300x00050844,
18190x1066222c, 18310x1066222c,
18200x1003b232, 18320x1003b232,
18210x40830000, 18330x40830000,
18220x00050843, 18340x00050844,
18230x10a032f5, 18350x10a032f5,
18240x48000001, 18360x48000001,
18250x0003001e, 18370x0003001e,
18260x1063222d, 18380x1063222d,
18270x48000000, 18390x48000000,
18280x00050046, 18400x00050047,
18290x0006006f, 18410x00060070,
18300x280b0008, 18420x280b0008,
18310x108e0301, 18430x108e0301,
18320x41800000, 18440x41800000,
18330x00050843, 18450x00050844,
18340x1004b232, 18460x1004b232,
18350x1064222c, 18470x1064222c,
18360x40800000, 18480x40800000,
18370x00050843, 18490x00050844,
18380x38b10000, 18500x38b10000,
18390x00098200, 18510x00098200,
18400x820efff8, 18520x820efff8,
@@ -1850,16 +1862,16 @@ static const unsigned int build_actionlist[4961] = {
18500x00098200, 18620x00098200,
18510x10940b21, 18630x10940b21,
18520x48000000, 18640x48000000,
18530x00050044, 18650x00050045,
18540x00060070, 18660x00060071,
18550x280b0008, 18670x280b0008,
18560x108e0301, 18680x108e0301,
18570x41800000, 18690x41800000,
18580x00050843, 18700x00050844,
18590x1004b232, 18710x1004b232,
18600x1064222c, 18720x1064222c,
18610x40800000, 18730x40800000,
18620x00050843, 18740x00050844,
18630x38aefff8, 18750x38aefff8,
18640x820efff8, 18760x820efff8,
18650x48000001, 18770x48000001,
@@ -1871,76 +1883,76 @@ static const unsigned int build_actionlist[4961] = {
18710x00098200, 18830x00098200,
18720x00000000, 18840x00000000,
18730x48000000, 18850x48000000,
18740x00050044, 18860x00050045,
18750x00060071, 18870x00060072,
18760x280b0008, 18880x280b0008,
18770x106e0301, 18890x106e0301,
18780x41800000, 18900x41800000,
18790x00050843, 18910x00050844,
18800x1003b232, 18920x1003b232,
18810x39000008, 18930x39000008,
18820x40800000, 18940x40800000,
18830x00050843, 18950x00050844,
18840x0006000b, 18960x0006000b,
18850x108e4300, 18970x108e4300,
18860x7c885840, 18980x7c885840,
18870x1004b232, 18990x1004b232,
18880x40840000, 19000x40840000,
18890x00050846, 19010x00050847,
18900x40800000, 19020x40800000,
18910x00050843, 19030x00050844,
18920x10041afd, 19040x10041afd,
18930x39080008, 19050x39080008,
18940x4c010b82, 19060x4c010b82,
18950x10641a78, 19070x10641a78,
18960x48000000, 19080x48000000,
18970x0005000b, 19090x0005000b,
18980x00060072, 19100x00060073,
18990x280b0008, 19110x280b0008,
19000x106e0301, 19120x106e0301,
19010x41800000, 19130x41800000,
19020x00050843, 19140x00050844,
19030x1003b232, 19150x1003b232,
19040x39000008, 19160x39000008,
19050x40800000, 19170x40800000,
19060x00050843, 19180x00050844,
19070x0006000b, 19190x0006000b,
19080x108e4300, 19200x108e4300,
19090x7c885840, 19210x7c885840,
19100x1004b232, 19220x1004b232,
19110x40840000, 19230x40840000,
19120x00050846, 19240x00050847,
19130x40800000, 19250x40800000,
19140x00050843, 19260x00050844,
19150x10041afc, 19270x10041afc,
19160x39080008, 19280x39080008,
19170x4c010b82, 19290x4c010b82,
19180x10641a78, 19300x10641a78,
19190x48000000, 19310x48000000,
19200x0005000b, 19320x0005000b,
19210x00060073, 19330x00060074,
19220x280b0008, 19340x280b0008,
19230x106e0301, 19350x106e0301,
19240x41800000, 19360x41800000,
19250x00050843, 19370x00050844,
19260x1003ba34, 19380x1003ba34,
19270x40800000, 19390x40800000,
19280x00050843, 19400x00050844,
19290x80030000, 19410x80030000,
19300x00098200, 19420x00098200,
19310x106002f1, 19430x106002f1,
19320x48000000, 19440x48000000,
19330x00050046, 19450x00050047,
19340x00060074, 19460x00060075,
19350x280b0008, 19470x280b0008,
19360x106e0301, 19480x106e0301,
19370x40820000, 19490x40820000,
19380x00050843, 19500x00050844,
19390x00000000, 19510x00000000,
19400x1003ba34, 19520x1003ba34,
19410x3a8efff8, 19530x3a8efff8,
19420x40800000, 19540x40800000,
19430x00050843, 19550x00050844,
19440x80030000, 19560x80030000,
19450x00098200, 19570x00098200,
19460x39800000, 19580x39800000,
@@ -1955,31 +1967,31 @@ static const unsigned int build_actionlist[4961] = {
19550x7d8c489e, 19670x7d8c489e,
19560x10740321, 19680x10740321,
19570x48000000, 19690x48000000,
19580x00050044, 19700x00050045,
19590x00060075, 19710x00060076,
19600x80110000, 19720x80110000,
19610x00098200, 19730x00098200,
19620x81110000, 19740x81110000,
19630x00098200, 19750x00098200,
19640x7c004040, 19760x7c004040,
19650x40800001, 19770x40800001,
19660x0005084c, 19780x0005084d,
19670x280b0008, 19790x280b0008,
19680x106e0301, 19800x106e0301,
19690x40820000, 19810x40820000,
19700x00050843, 19820x00050844,
19710x1003b232, 19830x1003b232,
19720x38910000, 19840x38910000,
19730x00098200, 19850x00098200,
19740x40800000, 19860x40800000,
19750x00050843, 19870x00050844,
19760x10001afa, 19880x10001afa,
19770x38a00001, 19890x38a00001,
19780x280000ff, 19900x280000ff,
19790x98040000, 19910x98040000,
19800x41810000, 19920x41810000,
19810x00050843, 19930x00050844,
19820x00060076, 19940x00060077,
19830x7e439378, 19950x7e439378,
19840x91d20000, 19960x91d20000,
19850x00098200, 19970x00098200,
@@ -1990,8 +2002,8 @@ static const unsigned int build_actionlist[4961] = {
19900x00098200, 20020x00098200,
19910x10771a2d, 20030x10771a2d,
19920x48000000, 20040x48000000,
19930x00050046, 20050x00050047,
19940x00060077, 20060x00060078,
19950x80110000, 20070x80110000,
19960x00098200, 20080x00098200,
19970x81110000, 20090x81110000,
@@ -1999,28 +2011,28 @@ static const unsigned int build_actionlist[4961] = {
19990x00000000, 20110x00000000,
20000x7c004040, 20120x7c004040,
20010x40800001, 20130x40800001,
20020x0005084c, 20140x0005084d,
20030x280b0010, 20150x280b0010,
20040x10ae1301, 20160x10ae1301,
20050x106e0301, 20170x106e0301,
20060x41800000, 20180x41800000,
20070x00050843, 20190x00050844,
20080x108e0b01, 20200x108e0b01,
20090x3920ffff, 20210x3920ffff,
20100x41820000, 20220x41820000,
20110x00050801, 20230x00050801,
20120x1005b232, 20240x1005b232,
20130x40800000, 20250x40800000,
20140x00050843, 20260x00050844,
20150x11202afa, 20270x11202afa,
20160x0006000b, 20280x0006000b,
20170x1004b232, 20290x1004b232,
20180x40800000, 20300x40800000,
20190x00050843, 20310x00050844,
20200x1003ba34, 20320x1003ba34,
20210x110022fa, 20330x110022fa,
20220x40800000, 20340x40800000,
20230x00050843, 20350x00050844,
20240x80030000, 20360x80030000,
20250x00098200, 20370x00098200,
20260x7c004840, 20380x7c004840,
@@ -2040,7 +2052,7 @@ static const unsigned int build_actionlist[4961] = {
20400x7c844214, 20520x7c844214,
20410x7ca0281e, 20530x7ca0281e,
20420x48000000, 20540x48000000,
20430x00050076, 20550x00050077,
20440x0006000f, 20560x0006000f,
20450x7c004800, 20570x7c004800,
20460x38c60001, 20580x38c60001,
@@ -2054,27 +2066,27 @@ static const unsigned int build_actionlist[4961] = {
20540x39080001, 20660x39080001,
20550x48000000, 20670x48000000,
20560x0005000d, 20680x0005000d,
20570x00060078, 20690x00060079,
20580x80110000, 20700x80110000,
20590x00098200, 20710x00098200,
20600x81110000, 20720x81110000,
20610x00098200, 20730x00098200,
20620x7c004040, 20740x7c004040,
20630x40800001, 20750x40800001,
20640x0005084c, 20760x0005084d,
20650x00000000, 20770x00000000,
20660x280b0010, 20780x280b0010,
20670x106e0301, 20790x106e0301,
20680x108e0b01, 20800x108e0b01,
20690x41800000, 20810x41800000,
20700x00050843, 20820x00050844,
20710x1004b232, 20830x1004b232,
20720x40800000, 20840x40800000,
20730x00050843, 20850x00050844,
20740x1003ba34, 20860x1003ba34,
20750x10a022fa, 20870x10a022fa,
20760x40800000, 20880x40800000,
20770x00050843, 20890x00050844,
20780x80030000, 20900x80030000,
20790x00098200, 20910x00098200,
20800x2c050000, 20920x2c050000,
@@ -2088,13 +2100,13 @@ static const unsigned int build_actionlist[4961] = {
20880x00050802, 21000x00050802,
20890x7c882840, 21010x7c882840,
20900x40820000, 21020x40820000,
20910x00050843, 21030x00050844,
20920x88030000, 21040x88030000,
20930x00098200, 21050x00098200,
20940x80910000, 21060x80910000,
20950x00098200, 21070x00098200,
20960x41840000, 21080x41840000,
20970x00050843, 21090x00050844,
20980x0006000b, 21100x0006000b,
20990x28090000, 21110x28090000,
21000x7c0449ae, 21120x7c0449ae,
@@ -2102,31 +2114,31 @@ static const unsigned int build_actionlist[4961] = {
21020x40820000, 21140x40820000,
21030x0005080b, 21150x0005080b,
21040x48000000, 21160x48000000,
21050x00050076, 21170x00050077,
21060x0006000c, 21180x0006000c,
21070x38710000, 21190x38710000,
21080x00098200, 21200x00098200,
21090x10771a2d, 21210x10771a2d,
21100x48000000, 21220x48000000,
21110x00050046, 21230x00050047,
21120x00060079, 21240x0006007a,
21130x80110000, 21250x80110000,
21140x00098200, 21260x00098200,
21150x81110000, 21270x81110000,
21160x00098200, 21280x00098200,
21170x7c004040, 21290x7c004040,
21180x40800001, 21300x40800001,
21190x0005084c, 21310x0005084d,
21200x280b0008, 21320x280b0008,
21210x106e0301, 21330x106e0301,
21220x41800000, 21340x41800000,
21230x00050843, 21350x00050844,
21240x00000000, 21360x00000000,
21250x1003ba34, 21370x1003ba34,
21260x81110000, 21380x81110000,
21270x00098200, 21390x00098200,
21280x40800000, 21400x40800000,
21290x00050843, 21410x00050844,
21300x80a30000, 21420x80a30000,
21310x00098200, 21430x00098200,
21320x38630000, 21440x38630000,
@@ -2137,34 +2149,34 @@ static const unsigned int build_actionlist[4961] = {
21370x7c082840, 21490x7c082840,
21380x38c5ffff, 21500x38c5ffff,
21390x41800000, 21510x41800000,
21400x00050843, 21520x00050844,
21410x0006000b, 21530x0006000b,
21420x2c060000, 21540x2c060000,
21430x7d0348ae, 21550x7d0348ae,
21440x41800000, 21560x41800000,
21450x00050876, 21570x00050877,
21460x7d0431ae, 21580x7d0431ae,
21470x38c6ffff, 21590x38c6ffff,
21480x39290001, 21600x39290001,
21490x48000000, 21610x48000000,
21500x0005000b, 21620x0005000b,
21510x0006007a, 21630x0006007b,
21520x80110000, 21640x80110000,
21530x00098200, 21650x00098200,
21540x81110000, 21660x81110000,
21550x00098200, 21670x00098200,
21560x7c004040, 21680x7c004040,
21570x40800001, 21690x40800001,
21580x0005084c, 21700x0005084d,
21590x280b0008, 21710x280b0008,
21600x106e0301, 21720x106e0301,
21610x41800000, 21730x41800000,
21620x00050843, 21740x00050844,
21630x1003ba34, 21750x1003ba34,
21640x81110000, 21760x81110000,
21650x00098200, 21770x00098200,
21660x40800000, 21780x40800000,
21670x00050843, 21790x00050844,
21680x80a30000, 21800x80a30000,
21690x00098200, 21810x00098200,
21700x38630000, 21820x38630000,
@@ -2174,12 +2186,12 @@ static const unsigned int build_actionlist[4961] = {
21740x7c082840, 21860x7c082840,
21750x39200000, 21870x39200000,
21760x41800000, 21880x41800000,
21770x00050843, 21890x00050844,
21780x0006000b, 21900x0006000b,
21790x7c092840, 21910x7c092840,
21800x7d0348ae, 21920x7d0348ae,
21810x40800000, 21930x40800000,
21820x00050876, 21940x00050877,
21830x00000000, 21950x00000000,
21840x3808ffbf, 21960x3808ffbf,
21850x69060020, 21970x69060020,
@@ -2189,23 +2201,23 @@ static const unsigned int build_actionlist[4961] = {
21890x39290001, 22010x39290001,
21900x48000000, 22020x48000000,
21910x0005000b, 22030x0005000b,
21920x0006007b, 22040x0006007c,
21930x80110000, 22050x80110000,
21940x00098200, 22060x00098200,
21950x81110000, 22070x81110000,
21960x00098200, 22080x00098200,
21970x7c004040, 22090x7c004040,
21980x40800001, 22100x40800001,
21990x0005084c, 22110x0005084d,
22000x280b0008, 22120x280b0008,
22010x106e0301, 22130x106e0301,
22020x41800000, 22140x41800000,
22030x00050843, 22150x00050844,
22040x1003ba34, 22160x1003ba34,
22050x81110000, 22170x81110000,
22060x00098200, 22180x00098200,
22070x40800000, 22190x40800000,
22080x00050843, 22200x00050844,
22090x80a30000, 22210x80a30000,
22100x00098200, 22220x00098200,
22110x38630000, 22230x38630000,
@@ -2215,12 +2227,12 @@ static const unsigned int build_actionlist[4961] = {
22150x7c082840, 22270x7c082840,
22160x39200000, 22280x39200000,
22170x41800000, 22290x41800000,
22180x00050843, 22300x00050844,
22190x0006000b, 22310x0006000b,
22200x7c092840, 22320x7c092840,
22210x7d0348ae, 22330x7d0348ae,
22220x40800000, 22340x40800000,
22230x00050876, 22350x00050877,
22240x3808ff9f, 22360x3808ff9f,
22250x69060020, 22370x69060020,
22260x2800001a, 22380x2800001a,
@@ -2229,41 +2241,41 @@ static const unsigned int build_actionlist[4961] = {
22290x39290001, 22410x39290001,
22300x48000000, 22420x48000000,
22310x0005000b, 22430x0005000b,
22320x0006007c, 22440x0006007d,
22330x280b0008, 22450x280b0008,
22340x106e0301, 22460x106e0301,
22350x41800000, 22470x41800000,
22360x00050843, 22480x00050844,
22370x1003c234, 22490x1003c234,
22380x40800000, 22500x40800000,
22390x00050843, 22510x00050844,
22400x48000001, 22520x48000001,
22410x00030022, 22530x00030022,
22420x10601af1, 22540x10601af1,
22430x48000000, 22550x48000000,
22440x00050046, 22560x00050047,
22450x0006007d, 22570x0006007e,
22460x280b0008, 22580x280b0008,
22470x106e0301, 22590x106e0301,
22480x41800000, 22600x41800000,
22490x00050843, 22610x00050844,
22500x00000000, 22620x00000000,
22510x1003b232, 22630x1003b232,
22520x40800000, 22640x40800000,
22530x00050843, 22650x00050844,
22540x1063dae0, 22660x1063dae0,
22550x0006007e, 22670x0006007f,
22560x10601af1, 22680x10601af1,
22570x48000000, 22690x48000000,
22580x00050046, 22700x00050047,
22590x0006007f, 22710x00060080,
22600x280b0008, 22720x280b0008,
22610x106e0301, 22730x106e0301,
22620x41800000, 22740x41800000,
22630x00050843, 22750x00050844,
22640x1003b232, 22760x1003b232,
22650x40800000, 22770x40800000,
22660x00050843, 22780x00050844,
22670x1063dae0, 22790x1063dae0,
22680x39000008, 22800x39000008,
22690x0006000b, 22810x0006000b,
@@ -2271,22 +2283,22 @@ static const unsigned int build_actionlist[4961] = {
22710x7c885840, 22830x7c885840,
22720x1004b232, 22840x1004b232,
22730x40840000, 22850x40840000,
22740x0005087e, 22860x0005087f,
22750x40800000, 22870x40800000,
22760x00050843, 22880x00050844,
22770x1084dae0, 22890x1084dae0,
22780x7c632038, 22900x7c632038,
22790x39080008, 22910x39080008,
22800x48000000, 22920x48000000,
22810x0005000b, 22930x0005000b,
22820x00060080, 22940x00060081,
22830x280b0008, 22950x280b0008,
22840x106e0301, 22960x106e0301,
22850x41800000, 22970x41800000,
22860x00050843, 22980x00050844,
22870x1003b232, 22990x1003b232,
22880x40800000, 23000x40800000,
22890x00050843, 23010x00050844,
22900x1063dae0, 23020x1063dae0,
22910x39000008, 23030x39000008,
22920x0006000b, 23040x0006000b,
@@ -2294,22 +2306,22 @@ static const unsigned int build_actionlist[4961] = {
22940x7c885840, 23060x7c885840,
22950x1004b232, 23070x1004b232,
22960x40840000, 23080x40840000,
22970x0005087e, 23090x0005087f,
22980x40800000, 23100x40800000,
22990x00050843, 23110x00050844,
23000x1084dae0, 23120x1084dae0,
23010x7c632378, 23130x7c632378,
23020x39080008, 23140x39080008,
23030x48000000, 23150x48000000,
23040x0005000b, 23160x0005000b,
23050x00060081, 23170x00060082,
23060x280b0008, 23180x280b0008,
23070x106e0301, 23190x106e0301,
23080x41800000, 23200x41800000,
23090x00050843, 23210x00050844,
23100x1003b232, 23220x1003b232,
23110x40800000, 23230x40800000,
23120x00050843, 23240x00050844,
23130x1063dae0, 23250x1063dae0,
23140x39000008, 23260x39000008,
23150x0006000b, 23270x0006000b,
@@ -2317,129 +2329,129 @@ static const unsigned int build_actionlist[4961] = {
23170x7c885840, 23290x7c885840,
23180x1004b232, 23300x1004b232,
23190x40840000, 23310x40840000,
23200x0005087e, 23320x0005087f,
23210x00000000, 23330x00000000,
23220x40800000, 23340x40800000,
23230x00050843, 23350x00050844,
23240x1084dae0, 23360x1084dae0,
23250x7c632278, 23370x7c632278,
23260x39080008, 23380x39080008,
23270x48000000, 23390x48000000,
23280x0005000b, 23400x0005000b,
23290x00060082, 23410x00060083,
23300x280b0008, 23420x280b0008,
23310x106e0301, 23430x106e0301,
23320x41800000, 23440x41800000,
23330x00050843, 23450x00050844,
23340x1003b232, 23460x1003b232,
23350x40800000, 23470x40800000,
23360x00050843, 23480x00050844,
23370x1063dae0, 23490x1063dae0,
23380x5460403e, 23500x5460403e,
23390x5060c00e, 23510x5060c00e,
23400x5060c42e, 23520x5060c42e,
23410x106002f1, 23530x106002f1,
23420x48000000, 23540x48000000,
23430x00050046, 23550x00050047,
23440x00060083, 23560x00060084,
23450x280b0008, 23570x280b0008,
23460x106e0301, 23580x106e0301,
23470x41800000, 23590x41800000,
23480x00050843, 23600x00050844,
23490x1003b232, 23610x1003b232,
23500x40800000, 23620x40800000,
23510x00050843, 23630x00050844,
23520x1063dae0, 23640x1063dae0,
23530x7c6018f8, 23650x7c6018f8,
23540x106002f1, 23660x106002f1,
23550x48000000, 23670x48000000,
23560x00050046, 23680x00050047,
23570x00060084, 23690x00060085,
23580x280b0010, 23700x280b0010,
23590x106e0301, 23710x106e0301,
23600x108e0b01, 23720x108e0b01,
23610x41800000, 23730x41800000,
23620x00050843, 23740x00050844,
23630x1003222c, 23750x1003222c,
23640x1000b232, 23760x1000b232,
23650x40830000, 23770x40830000,
23660x00050843, 23780x00050844,
23670x1084dae0, 23790x1084dae0,
23680x1063dae0, 23800x1063dae0,
23690x548406fe, 23810x548406fe,
23700x7c602030, 23820x7c602030,
23710x106002f1, 23830x106002f1,
23720x48000000, 23840x48000000,
23730x00050046, 23850x00050047,
23740x00060085, 23860x00060086,
23750x280b0010, 23870x280b0010,
23760x106e0301, 23880x106e0301,
23770x108e0b01, 23890x108e0b01,
23780x41800000, 23900x41800000,
23790x00050843, 23910x00050844,
23800x1003222c, 23920x1003222c,
23810x1000b232, 23930x1000b232,
23820x40830000, 23940x40830000,
23830x00050843, 23950x00050844,
23840x1084dae0, 23960x1084dae0,
23850x1063dae0, 23970x1063dae0,
23860x548406fe, 23980x548406fe,
23870x7c602430, 23990x7c602430,
23880x106002f1, 24000x106002f1,
23890x48000000, 24010x48000000,
23900x00050046, 24020x00050047,
23910x00060086, 24030x00060087,
23920x280b0010, 24040x280b0010,
23930x106e0301, 24050x106e0301,
23940x108e0b01, 24060x108e0b01,
23950x41800000, 24070x41800000,
23960x00050843, 24080x00050844,
23970x1003222c, 24090x1003222c,
23980x1000b232, 24100x1000b232,
23990x40830000, 24110x40830000,
24000x00050843, 24120x00050844,
24010x1084dae0, 24130x1084dae0,
24020x1063dae0, 24140x1063dae0,
24030x548406fe, 24150x548406fe,
24040x7c602630, 24160x7c602630,
24050x106002f1, 24170x106002f1,
24060x48000000, 24180x48000000,
24070x00050046, 24190x00050047,
24080x00060087, 24200x00060088,
24090x00000000, 24210x00000000,
24100x280b0010, 24220x280b0010,
24110x106e0301, 24230x106e0301,
24120x108e0b01, 24240x108e0b01,
24130x41800000, 24250x41800000,
24140x00050843, 24260x00050844,
24150x1003222c, 24270x1003222c,
24160x1000b232, 24280x1000b232,
24170x40830000, 24290x40830000,
24180x00050843, 24300x00050844,
24190x1084dae0, 24310x1084dae0,
24200x1063dae0, 24320x1063dae0,
24210x5c60203e, 24330x5c60203e,
24220x106002f1, 24340x106002f1,
24230x48000000, 24350x48000000,
24240x00050046, 24360x00050047,
24250x00060088, 24370x00060089,
24260x280b0010, 24380x280b0010,
24270x106e0301, 24390x106e0301,
24280x108e0b01, 24400x108e0b01,
24290x41800000, 24410x41800000,
24300x00050843, 24420x00050844,
24310x1003222c, 24430x1003222c,
24320x1000b232, 24440x1000b232,
24330x40830000, 24450x40830000,
24340x00050843, 24460x00050844,
24350x1084dae0, 24470x1084dae0,
24360x1063dae0, 24480x1063dae0,
24370x7c8400d0, 24490x7c8400d0,
24380x5c60203e, 24500x5c60203e,
24390x106002f1, 24510x106002f1,
24400x48000000, 24520x48000000,
24410x00050046, 24530x00050047,
24420x00060043, 24540x00060044,
24430x80ca0000, 24550x80ca0000,
24440x00098200, 24560x00098200,
24450x7d0e5a14, 24570x7d0e5a14,
@@ -2466,7 +2478,7 @@ static const unsigned int build_actionlist[4961] = {
24660x000900a1, 24780x000900a1,
24670x3a8efff8, 24790x3a8efff8,
24680x41810000, 24800x41810000,
24690x00050844, 24810x00050845,
24700x0006000b, 24820x0006000b,
24710x80120000, 24830x80120000,
24720x00098200, 24840x00098200,
@@ -2507,7 +2519,7 @@ static const unsigned int build_actionlist[4961] = {
25070x7c000000, 25190x7c000000,
25080x48000000, 25200x48000000,
25090x0005000b, 25210x0005000b,
25100x0006004c, 25220x0006004d,
25110x7ea802a6, 25230x7ea802a6,
25120x91d20000, 25240x91d20000,
25130x00098200, 25250x00098200,
@@ -2526,11 +2538,11 @@ static const unsigned int build_actionlist[4961] = {
25260x7d6e0050, 25380x7d6e0050,
25270x814efffc, 25390x814efffc,
25280x4e800020, 25400x4e800020,
25290x00060089, 25410x0006008a,
25300x00000000, 25420x00000000,
25310x7c810808, 25430x7c810808,
25320x00000000, 25440x00000000,
25330x0006008a, 25450x0006008b,
25340x88d10000, 25460x88d10000,
25350x00098200, 25470x00098200,
25360x70c00000, 25480x70c00000,
@@ -2543,7 +2555,7 @@ static const unsigned int build_actionlist[4961] = {
25430x7c11402e, 25550x7c11402e,
25440x7c0903a6, 25560x7c0903a6,
25450x4e800420, 25570x4e800420,
25460x0006008b, 25580x0006008c,
25470x88d10000, 25590x88d10000,
25480x00098200, 25600x00098200,
25490x81310000, 25610x81310000,
@@ -2588,22 +2600,22 @@ static const unsigned int build_actionlist[4961] = {
25880x54eb9d78, 26000x54eb9d78,
25890x7c0903a6, 26010x7c0903a6,
25900x4e800420, 26020x4e800420,
25910x0006008c, 26030x0006008d,
25920x3a100004, 26040x3a100004,
25930x826affec, 26050x826affec,
25940x48000000, 26060x48000000,
25950x0005000e, 26070x0005000e,
25960x0006008d, 26080x0006008e,
25970x00000000, 26090x00000000,
25980x7c810808, 26100x7c810808,
25990x00000000, 26110x00000000,
26000x0006008e, 26120x0006008f,
26010x7e048378, 26130x7e048378,
26020x00000000, 26140x00000000,
26030x48000000, 26150x48000000,
26040x00050001, 26160x00050001,
26050x00000000, 26170x00000000,
26060x0006008f, 26180x00060090,
26070x00000000, 26190x00000000,
26080x62040001, 26200x62040001,
26090x0006000b, 26210x0006000b,
@@ -2628,24 +2640,24 @@ static const unsigned int build_actionlist[4961] = {
26280x814efffc, 26400x814efffc,
26290x7c6903a6, 26410x7c6903a6,
26300x4e800420, 26420x4e800420,
26310x00060090, 26430x00060091,
26320x00000000, 26440x00000000,
26330x7c810808, 26450x7c810808,
26340x00000000, 26460x00000000,
26350x00060091, 26470x00060092,
26360x00000000, 26480x00000000,
26370x7c810808, 26490x7c810808,
26380x00000000, 26500x00000000,
26390x00060092, 26510x00060093,
26400x7ca802a6, 26520x7ca802a6,
26410x48000001, 26530x48000001,
26420x00050059, 26540x0005005a,
26430x7ca803a6, 26550x7ca803a6,
26440x1064222c, 26560x1064222c,
26450x4e800020, 26570x4e800020,
26460x00060093, 26580x00060094,
26470x1064222c, 26590x1064222c,
26480x00060059, 26600x0006005a,
26490x5469657e, 26610x5469657e,
26500x3529fc01, 26620x3529fc01,
26510x3900ffff, 26630x3900ffff,
@@ -2681,9 +2693,9 @@ static const unsigned int build_actionlist[4961] = {
26810x5103007e, 26930x5103007e,
26820x1083022d, 26940x1083022d,
26830x4e800020, 26950x4e800020,
26840x00060094, 26960x00060095,
26850x1064222c, 26970x1064222c,
26860x0006005b, 26980x0006005c,
26870x5469657e, 26990x5469657e,
26880x3529fc01, 27000x3529fc01,
26890x3900ffff, 27010x3900ffff,
@@ -2720,9 +2732,9 @@ static const unsigned int build_actionlist[4961] = {
27200x1083022d, 27320x1083022d,
27210x4e800020, 27330x4e800020,
27220x00000000, 27340x00000000,
27230x00060095,
27240x1064222c,
27250x00060096, 27350x00060096,
27360x1064222c,
27370x00060097,
27260x5469657e, 27380x5469657e,
27270x3529fc01, 27390x3529fc01,
27280x3900ffff, 27400x3900ffff,
@@ -2743,18 +2755,18 @@ static const unsigned int build_actionlist[4961] = {
27430x1088022d, 27550x1088022d,
27440x4e800020, 27560x4e800020,
27450x00000000, 27570x00000000,
27460x00060095,
27470x00060096, 27580x00060096,
27480x00000000,
27490x00060097, 27590x00060097,
27500x00000000, 27600x00000000,
27510x7c810808,
27520x00000000,
27530x00060098, 27610x00060098,
27540x00000000, 27620x00000000,
27550x7c810808, 27630x7c810808,
27560x00000000, 27640x00000000,
27570x00060099, 27650x00060099,
27660x00000000,
27670x7c810808,
27680x00000000,
27690x0006009a,
27580x1083222d, 27700x1083222d,
27590x28070001, 27710x28070001,
27600x10c5322d, 27720x10c5322d,
@@ -2793,7 +2805,7 @@ static const unsigned int build_actionlist[4961] = {
27930x11463217, 28050x11463217,
27940x7d6802a6, 28060x7d6802a6,
27950x48000001, 28070x48000001,
27960x00050093, 28080x00050094,
27970x7d6803a6, 28090x7d6803a6,
27980x108452e8, 28100x108452e8,
27990x108522e1, 28110x108522e1,
@@ -2815,7 +2827,7 @@ static const unsigned int build_actionlist[4961] = {
28150x4e800020, 28270x4e800020,
28160x0006000c, 28280x0006000c,
28170x7c810808, 28290x7c810808,
28180x0006009a, 28300x0006009b,
28190x00000000, 28310x00000000,
28200x7c810808, 28320x7c810808,
28210x00000000, 28330x00000000,
@@ -3125,11 +3137,30 @@ static const unsigned int build_actionlist[4961] = {
31250x1003c234, 31370x1003c234,
31260x40800000, 31380x40800000,
31270x0005083e, 31390x0005083e,
31400x00000000,
31410x81230000,
31420x00098200,
31430x28090000,
31440x40820000,
31450x00050809,
31460x0006000d,
31470x00000000,
31480x0006003f,
31280x48000001, 31490x48000001,
31290x00030022, 31500x00030022,
31300x48000000, 31510x48000000,
31310x0005000b, 31520x0005000b,
31320x00000000, 31530x00000000,
31540x00060013,
31550x88090000,
31560x00098200,
31570x70000000,
31580x00090200,
31590x40820000,
31600x0005080d,
31610x48000000,
31620x0005003e,
31630x00000000,
31330x100e5300, 31640x100e5300,
31340x1000b232, 31650x1000b232,
31350x110f5b00, 31660x110f5b00,
@@ -3277,10 +3308,10 @@ static const unsigned int build_actionlist[4961] = {
32770x40830000, 33080x40830000,
32780x0005083d, 33090x0005083d,
32790x00000000, 33100x00000000,
32800x0006009b, 33110x0006009c,
32810x108caae9, 33120x108caae9,
32820x48000001, 33130x48000001,
32830x00050093, 33140x00050094,
32840x1004aae8, 33150x1004aae8,
32850x80f00000, 33160x80f00000,
32860x3a100004, 33170x3a100004,
@@ -3315,7 +3346,7 @@ static const unsigned int build_actionlist[4961] = {
33150x0005083d, 33460x0005083d,
33160x00000000, 33470x00000000,
33170x48000000, 33480x48000000,
33180x0005009b, 33490x0005009c,
33190x00000000, 33500x00000000,
33200x108e5300, 33510x108e5300,
33210x10ce5b00, 33520x10ce5b00,
@@ -3750,10 +3781,10 @@ static const unsigned int build_actionlist[4961] = {
37500x7d6f402e, 37810x7d6f402e,
37510x00000000, 37820x00000000,
37520x48000000, 37830x48000000,
37530x0005009c, 37840x0005009d,
37540x00000000, 37850x00000000,
37550x48000000, 37860x48000000,
37560x0005009d, 37870x0005009e,
37570x00000000, 37880x00000000,
37580x114e5300, 37890x114e5300,
37590x116e5b00, 37900x116e5b00,
@@ -3809,7 +3840,7 @@ static const unsigned int build_actionlist[4961] = {
38090x0006000f, 38400x0006000f,
38100x100bba34, 38410x100bba34,
38110x41800000, 38420x41800000,
38120x0005089c, 38430x0005089d,
38130x48000000, 38440x48000000,
38140x0005002f, 38450x0005002f,
38150x00000000, 38460x00000000,
@@ -3821,7 +3852,7 @@ static const unsigned int build_actionlist[4961] = {
38210x7d6f402e, 38520x7d6f402e,
38220x40800000, 38530x40800000,
38230x0005082c, 38540x0005082c,
38240x0006009c, 38550x0006009d,
38250x800a0000, 38560x800a0000,
38260x00098200, 38570x00098200,
38270x810b0000, 38580x810b0000,
@@ -3988,7 +4019,7 @@ static const unsigned int build_actionlist[4961] = {
39880x0006000f, 40190x0006000f,
39890x100bba34, 40200x100bba34,
39900x41800000, 40210x41800000,
39910x0005089d, 40220x0005089e,
39920x48000000, 40230x48000000,
39930x00050033, 40240x00050033,
39940x00060011, 40250x00060011,
@@ -4013,7 +4044,7 @@ static const unsigned int build_actionlist[4961] = {
40130x7d6f402e, 40440x7d6f402e,
40140x40800000, 40450x40800000,
40150x00050830, 40460x00050830,
40160x0006009d, 40470x0006009e,
40170x800a0000, 40480x800a0000,
40180x00098200, 40490x00098200,
40190x810b0000, 40500x810b0000,
@@ -4292,8 +4323,8 @@ static const unsigned int build_actionlist[4961] = {
42920x100aca34, 43230x100aca34,
42930x3a940008, 43240x3a940008,
42940x40800000, 43250x40800000,
42950x0005083f, 43260x00050840,
42960x00060040, 43270x00060041,
42970x71000000, 43280x71000000,
42980x00090200, 43290x00090200,
42990x88ca0000, 43300x88ca0000,
@@ -4614,7 +4645,7 @@ static const unsigned int build_actionlist[4961] = {
46140x6a080000, 46450x6a080000,
46150x00090200, 46460x00090200,
46160x40820000, 46470x40820000,
46170x0005089e, 46480x0005089f,
46180x00060017, 46490x00060017,
46190x80f0fffc, 46500x80f0fffc,
46200x2c0c0008, 46510x2c0c0008,
@@ -4665,7 +4696,7 @@ static const unsigned int build_actionlist[4961] = {
46650x13494320, 46960x13494320,
46660x48000000, 46970x48000000,
46670x0005000f, 46980x0005000f,
46680x0006009e, 46990x0006009f,
46690x71090000, 47000x71090000,
46700x00090200, 47010x00090200,
46710x40820000, 47020x40820000,
@@ -4683,7 +4714,7 @@ static const unsigned int build_actionlist[4961] = {
46830x6a080000, 47140x6a080000,
46840x00090200, 47150x00090200,
46850x40820000, 47160x40820000,
46860x0005089e, 47170x0005089f,
46870x80f0fffc, 47180x80f0fffc,
46880x392efff8, 47190x392efff8,
46890x54ea5d78, 47200x54ea5d78,
@@ -4735,7 +4766,7 @@ static const unsigned int build_actionlist[4961] = {
47350x4c00e382, 47660x4c00e382,
47360x4c002382, 47670x4c002382,
47370x41800000, 47680x41800000,
47380x00050841, 47690x00050842,
47390x00000000, 47700x00000000,
47400x110832e0, 47710x110832e0,
47410x11140321, 47720x11140321,
@@ -5020,6 +5051,7 @@ enum {
5020 GLOB_vmeta_unm, 5051 GLOB_vmeta_unm,
5021 GLOB_vmeta_arith_vv, 5052 GLOB_vmeta_arith_vv,
5022 GLOB_vmeta_len, 5053 GLOB_vmeta_len,
5054 GLOB_BC_LEN_Z,
5023 GLOB_vmeta_callt, 5055 GLOB_vmeta_callt,
5024 GLOB_BC_CALLT_Z, 5056 GLOB_BC_CALLT_Z,
5025 GLOB_vmeta_for, 5057 GLOB_vmeta_for,
@@ -5162,6 +5194,7 @@ static const char *const globnames[] = {
5162 "vmeta_unm", 5194 "vmeta_unm",
5163 "vmeta_arith_vv", 5195 "vmeta_arith_vv",
5164 "vmeta_len", 5196 "vmeta_len",
5197 "BC_LEN_Z",
5165 "vmeta_callt", 5198 "vmeta_callt",
5166 "BC_CALLT_Z", 5199 "BC_CALLT_Z",
5167 "vmeta_for", 5200 "vmeta_for",
@@ -5341,96 +5374,106 @@ static void build_subroutines(BuildCtx *ctx)
5341 dasm_put(Dst, 481, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv), DISPATCH_GL(tmptv2), DISPATCH_GL(tmptv), Dt1(->base), FRAME_CONT, Dt1(->top), DISPATCH_GL(tmptv)); 5374 dasm_put(Dst, 481, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv), DISPATCH_GL(tmptv2), DISPATCH_GL(tmptv), Dt1(->base), FRAME_CONT, Dt1(->top), DISPATCH_GL(tmptv));
5342 dasm_put(Dst, 556, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv2), DISPATCH_GL(tmptv), Dt1(->base), FRAME_CONT, Dt1(->top), Dt1(->base)); 5375 dasm_put(Dst, 556, DISPATCH_GL(tmptv), DISPATCH_GL(tmptv2), DISPATCH_GL(tmptv), Dt1(->base), FRAME_CONT, Dt1(->top), Dt1(->base));
5343 dasm_put(Dst, 637, -(BCBIAS_J*4 >> 16), LJ_TTRUE, LJ_TFALSE, Dt1(->base)); 5376 dasm_put(Dst, 637, -(BCBIAS_J*4 >> 16), LJ_TTRUE, LJ_TFALSE, Dt1(->base));
5344 dasm_put(Dst, 706, Dt1(->base), FRAME_CONT, Dt1(->base), Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base)); 5377 dasm_put(Dst, 706, Dt1(->base), FRAME_CONT);
5378#ifdef LUAJIT_ENABLE_LUA52COMPAT
5379 dasm_put(Dst, 728);
5380#endif
5381 dasm_put(Dst, 730, Dt1(->base));
5382#ifdef LUAJIT_ENABLE_LUA52COMPAT
5383 dasm_put(Dst, 738);
5384#else
5385 dasm_put(Dst, 745);
5386#endif
5387 dasm_put(Dst, 748, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base));
5345#if LJ_HASJIT 5388#if LJ_HASJIT
5346 dasm_put(Dst, 784); 5389 dasm_put(Dst, 796);
5347#endif 5390#endif
5348 dasm_put(Dst, 786); 5391 dasm_put(Dst, 798);
5349#if LJ_HASJIT 5392#if LJ_HASJIT
5350 dasm_put(Dst, 788, BC_JFORI); 5393 dasm_put(Dst, 800, BC_JFORI);
5351#endif 5394#endif
5352 dasm_put(Dst, 791); 5395 dasm_put(Dst, 803);
5353#if LJ_HASJIT 5396#if LJ_HASJIT
5354 dasm_put(Dst, 793, BC_JFORI); 5397 dasm_put(Dst, 805, BC_JFORI);
5355#endif 5398#endif
5356 dasm_put(Dst, 796, BC_FORI, ~LJ_TNUMX, 31-3, Dt8(->upvalue), Dt6(->metatable), DISPATCH_GL(gcroot[GCROOT_MMNAME+MM_metatable])); 5399 dasm_put(Dst, 808, BC_FORI, ~LJ_TNUMX, 31-3, Dt8(->upvalue), Dt6(->metatable), DISPATCH_GL(gcroot[GCROOT_MMNAME+MM_metatable]));
5357 dasm_put(Dst, 861, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), DtB(->val), DtB(->next), LJ_TUDATA, 31-2, 4*~LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT])); 5400 dasm_put(Dst, 873, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), DtB(->val), DtB(->next), LJ_TUDATA, 31-2, 4*~LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT]));
5358 dasm_put(Dst, 917, Dt6(->metatable), Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 5401 dasm_put(Dst, 929, Dt6(->metatable), Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
5359 dasm_put(Dst, 977, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->top), (2+1)*8); 5402 dasm_put(Dst, 989, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->top), (2+1)*8);
5360#ifdef LUAJIT_ENABLE_LUA52COMPAT 5403#ifdef LUAJIT_ENABLE_LUA52COMPAT
5361 dasm_put(Dst, 1050, Dt6(->metatable), Dt8(->upvalue[0])); 5404 dasm_put(Dst, 1062, Dt6(->metatable), Dt8(->upvalue[0]));
5362#else 5405#else
5363 dasm_put(Dst, 1059, Dt8(->upvalue[0])); 5406 dasm_put(Dst, 1071, Dt8(->upvalue[0]));
5364#endif 5407#endif
5365 dasm_put(Dst, 1063, (3+1)*8, Dt6(->asize), Dt6(->array), 31-3, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8); 5408 dasm_put(Dst, 1075, (3+1)*8, Dt6(->asize), Dt6(->array), 31-3, (0+1)*8, (2+1)*8, Dt6(->hmask), (0+1)*8, (0+1)*8);
5366 dasm_put(Dst, 1127); 5409 dasm_put(Dst, 1139);
5367#ifdef LUAJIT_ENABLE_LUA52COMPAT 5410#ifdef LUAJIT_ENABLE_LUA52COMPAT
5368 dasm_put(Dst, 1140, Dt6(->metatable), Dt8(->upvalue[0])); 5411 dasm_put(Dst, 1152, Dt6(->metatable), Dt8(->upvalue[0]));
5369#else 5412#else
5370 dasm_put(Dst, 1149, Dt8(->upvalue[0])); 5413 dasm_put(Dst, 1161, Dt8(->upvalue[0]));
5371#endif 5414#endif
5372 dasm_put(Dst, 1153, (3+1)*8, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 8+FRAME_PCALL, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 16+FRAME_PCALL, LJ_TTHREAD, Dt1(->status), Dt1(->cframe), Dt1(->top)); 5415 dasm_put(Dst, 1165, (3+1)*8, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 8+FRAME_PCALL, DISPATCH_GL(hookmask), 32-HOOK_ACTIVE_SHIFT, 16+FRAME_PCALL, LJ_TTHREAD, Dt1(->status), Dt1(->cframe), Dt1(->top));
5373 dasm_put(Dst, 1214, 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), Dt1(->maxstack)); 5416 dasm_put(Dst, 1226, 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), Dt1(->maxstack));
5374 dasm_put(Dst, 1277, Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8, 32-3); 5417 dasm_put(Dst, 1289, Dt1(->top), FRAME_TYPE, LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), (2+1)*8, 32-3);
5375 dasm_put(Dst, 1337, 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); 5418 dasm_put(Dst, 1349, 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);
5376 dasm_put(Dst, 1396, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, 32-3, Dt1(->cframe)); 5419 dasm_put(Dst, 1408, Dt1(->base), DISPATCH_GL(vmstate), Dt1(->maxstack), Dt1(->top), FRAME_TYPE, 32-3, Dt1(->cframe));
5377 dasm_put(Dst, 1453, Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status), (1+1)*8, FRAME_TYPE); 5420 dasm_put(Dst, 1465, Dt1(->base), CFRAME_RESUME, Dt1(->top), LUA_YIELD, Dt1(->cframe), Dt1(->status), (1+1)*8, FRAME_TYPE);
5378 dasm_put(Dst, 1518); 5421 dasm_put(Dst, 1530);
5379 dasm_put(Dst, 1587); 5422 dasm_put(Dst, 1599);
5380 dasm_put(Dst, 1650); 5423 dasm_put(Dst, 1662);
5381 dasm_put(Dst, 1715); 5424 dasm_put(Dst, 1727);
5382 dasm_put(Dst, 1785, Dt8(->upvalue[0]), DISPATCH_GL(tmptv), DISPATCH_GL(tmptv), (2+1)*8, (2+1)*8); 5425 dasm_put(Dst, 1797, Dt8(->upvalue[0]), DISPATCH_GL(tmptv), DISPATCH_GL(tmptv), (2+1)*8, (2+1)*8);
5383 dasm_put(Dst, 1857, Dt5(->len)); 5426 dasm_put(Dst, 1869, Dt5(->len));
5384 dasm_put(Dst, 1924, Dt5(->len), (0+1)*8, Dt5([1]), (1+1)*8, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmptv), Dt1(->base), Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 5427 dasm_put(Dst, 1936, Dt5(->len), (0+1)*8, Dt5([1]), (1+1)*8, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmptv), Dt1(->base), Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
5385 dasm_put(Dst, 1984, Dt5(->len), sizeof(GCstr)-1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 5428 dasm_put(Dst, 1996, Dt5(->len), sizeof(GCstr)-1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
5386 dasm_put(Dst, 2050, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(strempty), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 5429 dasm_put(Dst, 2062, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(strempty), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
5387 dasm_put(Dst, 2109, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 5430 dasm_put(Dst, 2121, DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
5388 dasm_put(Dst, 2168, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 5431 dasm_put(Dst, 2180, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), DISPATCH_GL(tmpbuf.sz), Dt5(->len), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
5389 dasm_put(Dst, 2235); 5432 dasm_put(Dst, 2247);
5390 dasm_put(Dst, 2306); 5433 dasm_put(Dst, 2318);
5391 dasm_put(Dst, 2394, Dt8(->f), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), 31-3, Dt1(->top), Dt7(->pc)); 5434 dasm_put(Dst, 2406, Dt8(->f), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), 31-3, Dt1(->top), Dt7(->pc));
5392 dasm_put(Dst, 2473, FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 5435 dasm_put(Dst, 2485, FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
5393#if LJ_HASJIT 5436#if LJ_HASJIT
5394 dasm_put(Dst, 2515); 5437 dasm_put(Dst, 2527);
5395#endif 5438#endif
5396 dasm_put(Dst, 2517, 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)); 5439 dasm_put(Dst, 2529, 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));
5397 dasm_put(Dst, 2564, GG_DISP2STATIC); 5440 dasm_put(Dst, 2576, GG_DISP2STATIC);
5398#if LJ_HASJIT 5441#if LJ_HASJIT
5399 dasm_put(Dst, 2582); 5442 dasm_put(Dst, 2594);
5400#endif 5443#endif
5401 dasm_put(Dst, 2584); 5444 dasm_put(Dst, 2596);
5402#if LJ_HASJIT 5445#if LJ_HASJIT
5403 dasm_put(Dst, 2587); 5446 dasm_put(Dst, 2599);
5404#endif 5447#endif
5405 dasm_put(Dst, 2590); 5448 dasm_put(Dst, 2602);
5406#if LJ_HASJIT 5449#if LJ_HASJIT
5407 dasm_put(Dst, 2592); 5450 dasm_put(Dst, 2604);
5408#endif 5451#endif
5409 dasm_put(Dst, 2595, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 5452 dasm_put(Dst, 2607, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
5410#if LJ_HASJIT 5453#if LJ_HASJIT
5411 dasm_put(Dst, 2617); 5454 dasm_put(Dst, 2629);
5412#endif 5455#endif
5413 dasm_put(Dst, 2619); 5456 dasm_put(Dst, 2631);
5414#if LJ_HASJIT 5457#if LJ_HASJIT
5415 dasm_put(Dst, 2621); 5458 dasm_put(Dst, 2633);
5416#endif 5459#endif
5417 dasm_put(Dst, 2623); 5460 dasm_put(Dst, 2635);
5418#if LJ_HASJIT 5461#if LJ_HASJIT
5419 dasm_put(Dst, 2707); 5462 dasm_put(Dst, 2719);
5420#else 5463#else
5421 dasm_put(Dst, 2730); 5464 dasm_put(Dst, 2742);
5422#endif 5465#endif
5423 dasm_put(Dst, 2733); 5466 dasm_put(Dst, 2745);
5424#if LJ_HASJIT 5467#if LJ_HASJIT
5425 dasm_put(Dst, 2735); 5468 dasm_put(Dst, 2747);
5426#endif 5469#endif
5427 dasm_put(Dst, 2737); 5470 dasm_put(Dst, 2749);
5428#if LJ_HASJIT 5471#if LJ_HASJIT
5429 dasm_put(Dst, 2739); 5472 dasm_put(Dst, 2751);
5430#endif 5473#endif
5431 dasm_put(Dst, 2741); 5474 dasm_put(Dst, 2753);
5432#if LJ_HASFFI 5475#if LJ_HASFFI
5433 dasm_put(Dst, 2804); 5476 dasm_put(Dst, 2816);
5434#endif 5477#endif
5435} 5478}
5436 5479
@@ -5438,7 +5481,7 @@ static void build_subroutines(BuildCtx *ctx)
5438static void build_ins(BuildCtx *ctx, BCOp op, int defop) 5481static void build_ins(BuildCtx *ctx, BCOp op, int defop)
5439{ 5482{
5440 int vk = 0; 5483 int vk = 0;
5441 dasm_put(Dst, 2806, defop); 5484 dasm_put(Dst, 2818, defop);
5442 5485
5443 switch (op) { 5486 switch (op) {
5444 5487
@@ -5447,112 +5490,119 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
5447 /* Remember: all ops branch for a true comparison, fall through otherwise. */ 5490 /* Remember: all ops branch for a true comparison, fall through otherwise. */
5448 5491
5449 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 5492 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
5450 dasm_put(Dst, 2808, -(BCBIAS_J*4 >> 16)); 5493 dasm_put(Dst, 2820, -(BCBIAS_J*4 >> 16));
5451 if (op == BC_ISLE || op == BC_ISGT) { 5494 if (op == BC_ISLE || op == BC_ISGT) {
5452 dasm_put(Dst, 2822); 5495 dasm_put(Dst, 2834);
5453 } 5496 }
5454 if (op == BC_ISLT || op == BC_ISLE) { 5497 if (op == BC_ISLT || op == BC_ISLE) {
5455 dasm_put(Dst, 2825); 5498 dasm_put(Dst, 2837);
5456 } else { 5499 } else {
5457 dasm_put(Dst, 2827); 5500 dasm_put(Dst, 2839);
5458 } 5501 }
5459 dasm_put(Dst, 2829); 5502 dasm_put(Dst, 2841);
5460 break; 5503 break;
5461 5504
5462 case BC_ISEQV: case BC_ISNEV: 5505 case BC_ISEQV: case BC_ISNEV:
5463 vk = op == BC_ISEQV; 5506 vk = op == BC_ISEQV;
5464 dasm_put(Dst, 2840, -(BCBIAS_J*4 >> 16)); 5507 dasm_put(Dst, 2852, -(BCBIAS_J*4 >> 16));
5465 if (vk) { 5508 if (vk) {
5466 dasm_put(Dst, 2854); 5509 dasm_put(Dst, 2866);
5467 } else { 5510 } else {
5468 dasm_put(Dst, 2856); 5511 dasm_put(Dst, 2868);
5469 } 5512 }
5470 dasm_put(Dst, 2858, ~LJ_TISPRI, ~LJ_TISTABUD); 5513 dasm_put(Dst, 2870, ~LJ_TISPRI, ~LJ_TISTABUD);
5471 if (vk) { 5514 if (vk) {
5472 dasm_put(Dst, 2880); 5515 dasm_put(Dst, 2892);
5473 } else { 5516 } else {
5474 dasm_put(Dst, 2882); 5517 dasm_put(Dst, 2894);
5475 } 5518 }
5476 dasm_put(Dst, 2884); 5519 dasm_put(Dst, 2896);
5477 if (vk) { 5520 if (vk) {
5478 dasm_put(Dst, 2886); 5521 dasm_put(Dst, 2898);
5479 } else { 5522 } else {
5480 dasm_put(Dst, 2888); 5523 dasm_put(Dst, 2900);
5481 } 5524 }
5482 dasm_put(Dst, 2890, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<<MM_eq); 5525 dasm_put(Dst, 2902, Dt6(->metatable), 1-vk, Dt6(->nomm), 1<<MM_eq);
5483 break; 5526 break;
5484 5527
5485 case BC_ISEQS: case BC_ISNES: 5528 case BC_ISEQS: case BC_ISNES:
5486 vk = op == BC_ISEQS; 5529 vk = op == BC_ISEQS;
5487 dasm_put(Dst, 2911, 32-1, -(BCBIAS_J*4 >> 16)); 5530 dasm_put(Dst, 2923, 32-1, -(BCBIAS_J*4 >> 16));
5488 if (vk) { 5531 if (vk) {
5489 dasm_put(Dst, 2925); 5532 dasm_put(Dst, 2937);
5490 } else { 5533 } else {
5491 dasm_put(Dst, 2927); 5534 dasm_put(Dst, 2939);
5492 } 5535 }
5493 dasm_put(Dst, 2929); 5536 dasm_put(Dst, 2941);
5494 break; 5537 break;
5495 5538
5496 case BC_ISEQN: case BC_ISNEN: 5539 case BC_ISEQN: case BC_ISNEN:
5497 vk = op == BC_ISEQN; 5540 vk = op == BC_ISEQN;
5498 dasm_put(Dst, 2940, -(BCBIAS_J*4 >> 16)); 5541 dasm_put(Dst, 2952, -(BCBIAS_J*4 >> 16));
5499 if (vk) { 5542 if (vk) {
5500 dasm_put(Dst, 2954); 5543 dasm_put(Dst, 2966);
5501 } else { 5544 } else {
5502 dasm_put(Dst, 2957); 5545 dasm_put(Dst, 2969);
5503 } 5546 }
5504 dasm_put(Dst, 2959); 5547 dasm_put(Dst, 2971);
5505 if (!vk) { 5548 if (!vk) {
5506 dasm_put(Dst, 2971); 5549 dasm_put(Dst, 2983);
5507 } 5550 }
5508 break; 5551 break;
5509 5552
5510 case BC_ISEQP: case BC_ISNEP: 5553 case BC_ISEQP: case BC_ISNEP:
5511 vk = op == BC_ISEQP; 5554 vk = op == BC_ISEQP;
5512 dasm_put(Dst, 2977, 32-3, -(BCBIAS_J*4 >> 16)); 5555 dasm_put(Dst, 2989, 32-3, -(BCBIAS_J*4 >> 16));
5513 if (vk) { 5556 if (vk) {
5514 dasm_put(Dst, 2989); 5557 dasm_put(Dst, 3001);
5515 } else { 5558 } else {
5516 dasm_put(Dst, 2991); 5559 dasm_put(Dst, 3003);
5517 } 5560 }
5518 dasm_put(Dst, 2993); 5561 dasm_put(Dst, 3005);
5519 break; 5562 break;
5520 5563
5521 /* -- Unary test and copy ops ------------------------------------------- */ 5564 /* -- Unary test and copy ops ------------------------------------------- */
5522 5565
5523 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 5566 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
5524 dasm_put(Dst, 3004); 5567 dasm_put(Dst, 3016);
5525 if (op == BC_IST || op == BC_ISF) { 5568 if (op == BC_IST || op == BC_ISF) {
5526 dasm_put(Dst, 3010, -(BCBIAS_J*4 >> 16)); 5569 dasm_put(Dst, 3022, -(BCBIAS_J*4 >> 16));
5527 if (op == BC_IST) { 5570 if (op == BC_IST) {
5528 dasm_put(Dst, 3015); 5571 dasm_put(Dst, 3027);
5529 } else { 5572 } else {
5530 dasm_put(Dst, 3017); 5573 dasm_put(Dst, 3029);
5531 } 5574 }
5532 } else { 5575 } else {
5533 if (op == BC_ISTC) { 5576 if (op == BC_ISTC) {
5534 dasm_put(Dst, 3019); 5577 dasm_put(Dst, 3031);
5535 } else { 5578 } else {
5536 dasm_put(Dst, 3022); 5579 dasm_put(Dst, 3034);
5537 } 5580 }
5538 dasm_put(Dst, 3025, -(BCBIAS_J*4 >> 16)); 5581 dasm_put(Dst, 3037, -(BCBIAS_J*4 >> 16));
5539 } 5582 }
5540 dasm_put(Dst, 3032); 5583 dasm_put(Dst, 3044);
5541 break; 5584 break;
5542 5585
5543 /* -- Unary ops --------------------------------------------------------- */ 5586 /* -- Unary ops --------------------------------------------------------- */
5544 5587
5545 case BC_MOV: 5588 case BC_MOV:
5546 dasm_put(Dst, 3043); 5589 dasm_put(Dst, 3055);
5547 break; 5590 break;
5548 case BC_NOT: 5591 case BC_NOT:
5549 dasm_put(Dst, 3056, LJ_TTRUE); 5592 dasm_put(Dst, 3068, LJ_TTRUE);
5550 break; 5593 break;
5551 case BC_UNM: 5594 case BC_UNM:
5552 dasm_put(Dst, 3072); 5595 dasm_put(Dst, 3084);
5553 break; 5596 break;
5554 case BC_LEN: 5597 case BC_LEN:
5555 dasm_put(Dst, 3089, Dt5(->len)); 5598 dasm_put(Dst, 3101, Dt5(->len));
5599#ifdef LUAJIT_ENABLE_LUA52COMPAT
5600 dasm_put(Dst, 3125, Dt6(->metatable));
5601#endif
5602 dasm_put(Dst, 3132);
5603#ifdef LUAJIT_ENABLE_LUA52COMPAT
5604 dasm_put(Dst, 3138, Dt6(->nomm), 1<<MM_len);
5605#endif
5556 break; 5606 break;
5557 5607
5558 /* -- Binary ops -------------------------------------------------------- */ 5608 /* -- Binary ops -------------------------------------------------------- */
@@ -5562,262 +5612,262 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
5562 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 5612 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
5563 switch (vk) { 5613 switch (vk) {
5564 case 0: 5614 case 0:
5565 dasm_put(Dst, 3117); 5615 dasm_put(Dst, 3148);
5566 break; 5616 break;
5567 case 1: 5617 case 1:
5568 dasm_put(Dst, 3123); 5618 dasm_put(Dst, 3154);
5569 break; 5619 break;
5570 default: 5620 default:
5571 dasm_put(Dst, 3129); 5621 dasm_put(Dst, 3160);
5572 break; 5622 break;
5573 } 5623 }
5574 dasm_put(Dst, 3136); 5624 dasm_put(Dst, 3167);
5575 break; 5625 break;
5576 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 5626 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
5577 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 5627 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
5578 switch (vk) { 5628 switch (vk) {
5579 case 0: 5629 case 0:
5580 dasm_put(Dst, 3149); 5630 dasm_put(Dst, 3180);
5581 break; 5631 break;
5582 case 1: 5632 case 1:
5583 dasm_put(Dst, 3155); 5633 dasm_put(Dst, 3186);
5584 break; 5634 break;
5585 default: 5635 default:
5586 dasm_put(Dst, 3161); 5636 dasm_put(Dst, 3192);
5587 break; 5637 break;
5588 } 5638 }
5589 dasm_put(Dst, 3168); 5639 dasm_put(Dst, 3199);
5590 break; 5640 break;
5591 case BC_MULVN: case BC_MULNV: case BC_MULVV: 5641 case BC_MULVN: case BC_MULNV: case BC_MULVV:
5592 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 5642 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
5593 switch (vk) { 5643 switch (vk) {
5594 case 0: 5644 case 0:
5595 dasm_put(Dst, 3181); 5645 dasm_put(Dst, 3212);
5596 break; 5646 break;
5597 case 1: 5647 case 1:
5598 dasm_put(Dst, 3187); 5648 dasm_put(Dst, 3218);
5599 break; 5649 break;
5600 default: 5650 default:
5601 dasm_put(Dst, 3193); 5651 dasm_put(Dst, 3224);
5602 break; 5652 break;
5603 } 5653 }
5604 dasm_put(Dst, 3200); 5654 dasm_put(Dst, 3231);
5605 break; 5655 break;
5606 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 5656 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
5607 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 5657 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
5608 switch (vk) { 5658 switch (vk) {
5609 case 0: 5659 case 0:
5610 dasm_put(Dst, 3213); 5660 dasm_put(Dst, 3244);
5611 break; 5661 break;
5612 case 1: 5662 case 1:
5613 dasm_put(Dst, 3219); 5663 dasm_put(Dst, 3250);
5614 break; 5664 break;
5615 default: 5665 default:
5616 dasm_put(Dst, 3225); 5666 dasm_put(Dst, 3256);
5617 break; 5667 break;
5618 } 5668 }
5619 dasm_put(Dst, 3232); 5669 dasm_put(Dst, 3263);
5620 break; 5670 break;
5621 case BC_MODVN: 5671 case BC_MODVN:
5622 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 5672 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
5623 switch (vk) { 5673 switch (vk) {
5624 case 0: 5674 case 0:
5625 dasm_put(Dst, 3245); 5675 dasm_put(Dst, 3276);
5626 break; 5676 break;
5627 case 1: 5677 case 1:
5628 dasm_put(Dst, 3251); 5678 dasm_put(Dst, 3282);
5629 break; 5679 break;
5630 default: 5680 default:
5631 dasm_put(Dst, 3257); 5681 dasm_put(Dst, 3288);
5632 break; 5682 break;
5633 } 5683 }
5634 dasm_put(Dst, 3264); 5684 dasm_put(Dst, 3295);
5635 break; 5685 break;
5636 case BC_MODNV: case BC_MODVV: 5686 case BC_MODNV: case BC_MODVV:
5637 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 5687 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
5638 switch (vk) { 5688 switch (vk) {
5639 case 0: 5689 case 0:
5640 dasm_put(Dst, 3282); 5690 dasm_put(Dst, 3313);
5641 break; 5691 break;
5642 case 1: 5692 case 1:
5643 dasm_put(Dst, 3288); 5693 dasm_put(Dst, 3319);
5644 break; 5694 break;
5645 default: 5695 default:
5646 dasm_put(Dst, 3294); 5696 dasm_put(Dst, 3325);
5647 break; 5697 break;
5648 } 5698 }
5649 dasm_put(Dst, 3301); 5699 dasm_put(Dst, 3332);
5650 break; 5700 break;
5651 case BC_POW: 5701 case BC_POW:
5652 dasm_put(Dst, 3304); 5702 dasm_put(Dst, 3335);
5653 break; 5703 break;
5654 5704
5655 case BC_CAT: 5705 case BC_CAT:
5656 dasm_put(Dst, 3326, Dt1(->base), 32-3, Dt1(->base)); 5706 dasm_put(Dst, 3357, Dt1(->base), 32-3, Dt1(->base));
5657 break; 5707 break;
5658 5708
5659 /* -- Constant ops ------------------------------------------------------ */ 5709 /* -- Constant ops ------------------------------------------------------ */
5660 5710
5661 case BC_KSTR: 5711 case BC_KSTR:
5662 dasm_put(Dst, 3356, 32-1); 5712 dasm_put(Dst, 3387, 32-1);
5663 break; 5713 break;
5664 case BC_KCDATA: 5714 case BC_KCDATA:
5665#if LJ_HASFFI 5715#if LJ_HASFFI
5666 dasm_put(Dst, 3373, 32-1, LJ_TCDATA); 5716 dasm_put(Dst, 3404, 32-1, LJ_TCDATA);
5667#endif 5717#endif
5668 break; 5718 break;
5669 case BC_KSHORT: 5719 case BC_KSHORT:
5670 dasm_put(Dst, 3392, 32-3); 5720 dasm_put(Dst, 3423, 32-3);
5671 break; 5721 break;
5672 case BC_KNUM: 5722 case BC_KNUM:
5673 dasm_put(Dst, 3408); 5723 dasm_put(Dst, 3439);
5674 break; 5724 break;
5675 case BC_KPRI: 5725 case BC_KPRI:
5676 dasm_put(Dst, 3421, 32-3); 5726 dasm_put(Dst, 3452, 32-3);
5677 break; 5727 break;
5678 case BC_KNIL: 5728 case BC_KNIL:
5679 dasm_put(Dst, 3436); 5729 dasm_put(Dst, 3467);
5680 break; 5730 break;
5681 5731
5682 /* -- Upvalue and function ops ------------------------------------------ */ 5732 /* -- Upvalue and function ops ------------------------------------------ */
5683 5733
5684 case BC_UGET: 5734 case BC_UGET:
5685 dasm_put(Dst, 3455, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); 5735 dasm_put(Dst, 3486, 32-1, offsetof(GCfuncL, uvptr), DtA(->v));
5686 break; 5736 break;
5687 case BC_USETV: 5737 case BC_USETV:
5688 dasm_put(Dst, 3476, 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); 5738 dasm_put(Dst, 3507, 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);
5689 break; 5739 break;
5690 case BC_USETS: 5740 case BC_USETS:
5691 dasm_put(Dst, 3528, 32-1, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, Dt5(->marked), DtA(->closed), LJ_GC_WHITES, GG_DISP2G); 5741 dasm_put(Dst, 3559, 32-1, 32-1, offsetof(GCfuncL, uvptr), DtA(->marked), DtA(->v), LJ_GC_BLACK, Dt5(->marked), DtA(->closed), LJ_GC_WHITES, GG_DISP2G);
5692 break; 5742 break;
5693 case BC_USETN: 5743 case BC_USETN:
5694 dasm_put(Dst, 3577, 32-1, offsetof(GCfuncL, uvptr), DtA(->v)); 5744 dasm_put(Dst, 3608, 32-1, offsetof(GCfuncL, uvptr), DtA(->v));
5695 break; 5745 break;
5696 case BC_USETP: 5746 case BC_USETP:
5697 dasm_put(Dst, 3598, 32-1, offsetof(GCfuncL, uvptr), 32-3, DtA(->v)); 5747 dasm_put(Dst, 3629, 32-1, offsetof(GCfuncL, uvptr), 32-3, DtA(->v));
5698 break; 5748 break;
5699 5749
5700 case BC_UCLO: 5750 case BC_UCLO:
5701 dasm_put(Dst, 3621, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base)); 5751 dasm_put(Dst, 3652, Dt1(->openupval), 32-1, -(BCBIAS_J*4 >> 16), Dt1(->base), Dt1(->base));
5702 break; 5752 break;
5703 5753
5704 case BC_FNEW: 5754 case BC_FNEW:
5705 dasm_put(Dst, 3651, 32-1, Dt1(->base), Dt1(->base)); 5755 dasm_put(Dst, 3682, 32-1, Dt1(->base), Dt1(->base));
5706 break; 5756 break;
5707 5757
5708 /* -- Table ops --------------------------------------------------------- */ 5758 /* -- Table ops --------------------------------------------------------- */
5709 5759
5710 case BC_TNEW: 5760 case BC_TNEW:
5711 case BC_TDUP: 5761 case BC_TDUP:
5712 dasm_put(Dst, 3677, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base)); 5762 dasm_put(Dst, 3708, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base));
5713 if (op == BC_TNEW) { 5763 if (op == BC_TNEW) {
5714 dasm_put(Dst, 3690); 5764 dasm_put(Dst, 3721);
5715 } else { 5765 } else {
5716 dasm_put(Dst, 3698, 32-1); 5766 dasm_put(Dst, 3729, 32-1);
5717 } 5767 }
5718 dasm_put(Dst, 3705, Dt1(->base)); 5768 dasm_put(Dst, 3736, Dt1(->base));
5719 break; 5769 break;
5720 5770
5721 case BC_GGET: 5771 case BC_GGET:
5722 case BC_GSET: 5772 case BC_GSET:
5723 dasm_put(Dst, 3728, 32-1, Dt7(->env)); 5773 dasm_put(Dst, 3759, 32-1, Dt7(->env));
5724 if (op == BC_GGET) { 5774 if (op == BC_GGET) {
5725 dasm_put(Dst, 3736); 5775 dasm_put(Dst, 3767);
5726 } else { 5776 } else {
5727 dasm_put(Dst, 3739); 5777 dasm_put(Dst, 3770);
5728 } 5778 }
5729 break; 5779 break;
5730 5780
5731 case BC_TGETV: 5781 case BC_TGETV:
5732 dasm_put(Dst, 3742, Dt6(->asize), Dt6(->array), 31-3, Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 5782 dasm_put(Dst, 3773, Dt6(->asize), Dt6(->array), 31-3, Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
5733 break; 5783 break;
5734 case BC_TGETS: 5784 case BC_TGETS:
5735 dasm_put(Dst, 3800, 32-1, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), DtB(->val), DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 5785 dasm_put(Dst, 3831, 32-1, Dt6(->hmask), Dt5(->hash), Dt6(->node), 31-5, 31-3, DtB(->key), DtB(->val), DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
5736 dasm_put(Dst, 3864); 5786 dasm_put(Dst, 3895);
5737 break; 5787 break;
5738 case BC_TGETB: 5788 case BC_TGETB:
5739 dasm_put(Dst, 3869, 32-3, Dt6(->asize), Dt6(->array), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 5789 dasm_put(Dst, 3900, 32-3, Dt6(->asize), Dt6(->array), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
5740 break; 5790 break;
5741 5791
5742 case BC_TSETV: 5792 case BC_TSETV:
5743 dasm_put(Dst, 3913, Dt6(->asize), Dt6(->array), 31-3, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex); 5793 dasm_put(Dst, 3944, Dt6(->asize), Dt6(->array), 31-3, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex);
5744 dasm_put(Dst, 3980, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist)); 5794 dasm_put(Dst, 4011, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked), Dt6(->gclist));
5745 break; 5795 break;
5746 case BC_TSETS: 5796 case BC_TSETS:
5747 dasm_put(Dst, 3992, 32-1, Dt6(->hmask), Dt5(->hash), Dt6(->node), Dt6(->nomm), 31-5, 31-3, Dt6(->marked), DtB(->key), DtB(->val), LJ_GC_BLACK, DtB(->val), Dt6(->metatable)); 5797 dasm_put(Dst, 4023, 32-1, Dt6(->hmask), Dt5(->hash), Dt6(->node), Dt6(->nomm), 31-5, 31-3, Dt6(->marked), DtB(->key), DtB(->val), LJ_GC_BLACK, DtB(->val), Dt6(->metatable));
5748 dasm_put(Dst, 4053, Dt6(->nomm), 1<<MM_newindex, DtB(->next), Dt6(->metatable), DISPATCH_GL(tmptv), Dt1(->base), Dt6(->nomm), 1<<MM_newindex, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain)); 5798 dasm_put(Dst, 4084, Dt6(->nomm), 1<<MM_newindex, DtB(->next), Dt6(->metatable), DISPATCH_GL(tmptv), Dt1(->base), Dt6(->nomm), 1<<MM_newindex, Dt1(->base), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain));
5749 dasm_put(Dst, 4104, Dt6(->marked), Dt6(->gclist)); 5799 dasm_put(Dst, 4135, Dt6(->marked), Dt6(->gclist));
5750 break; 5800 break;
5751 case BC_TSETB: 5801 case BC_TSETB:
5752 dasm_put(Dst, 4111, 32-3, Dt6(->asize), Dt6(->array), Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked)); 5802 dasm_put(Dst, 4142, 32-3, Dt6(->asize), Dt6(->array), Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->marked));
5753 dasm_put(Dst, 4171, Dt6(->gclist)); 5803 dasm_put(Dst, 4202, Dt6(->gclist));
5754 break; 5804 break;
5755 5805
5756 case BC_TSETM: 5806 case BC_TSETM:
5757 dasm_put(Dst, 4176, 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)); 5807 dasm_put(Dst, 4207, 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));
5758 dasm_put(Dst, 4245); 5808 dasm_put(Dst, 4276);
5759 break; 5809 break;
5760 5810
5761 /* -- Calls and vararg handling ----------------------------------------- */ 5811 /* -- Calls and vararg handling ----------------------------------------- */
5762 5812
5763 case BC_CALLM: 5813 case BC_CALLM:
5764 dasm_put(Dst, 4248); 5814 dasm_put(Dst, 4279);
5765 break; 5815 break;
5766 case BC_CALL: 5816 case BC_CALL:
5767 dasm_put(Dst, 4250, Dt7(->pc)); 5817 dasm_put(Dst, 4281, Dt7(->pc));
5768 break; 5818 break;
5769 5819
5770 case BC_CALLMT: 5820 case BC_CALLMT:
5771 dasm_put(Dst, 4270); 5821 dasm_put(Dst, 4301);
5772 break; 5822 break;
5773 case BC_CALLT: 5823 case BC_CALLT:
5774 dasm_put(Dst, 4272, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); 5824 dasm_put(Dst, 4303, FRAME_TYPE, Dt7(->ffid), FRAME_VARG, Dt7(->pc), -4-8, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP);
5775 dasm_put(Dst, 4337, FRAME_TYPE); 5825 dasm_put(Dst, 4368, FRAME_TYPE);
5776 break; 5826 break;
5777 5827
5778 case BC_ITERC: 5828 case BC_ITERC:
5779 dasm_put(Dst, 4344, Dt7(->pc)); 5829 dasm_put(Dst, 4375, Dt7(->pc));
5780 break; 5830 break;
5781 5831
5782 case BC_ITERN: 5832 case BC_ITERN:
5783#if LJ_HASJIT 5833#if LJ_HASJIT
5784#endif 5834#endif
5785 dasm_put(Dst, 4370, Dt6(->asize), Dt6(->array), 31-3, -(BCBIAS_J*4 >> 16), Dt6(->hmask), Dt6(->node), 31-5, 31-3, DtB(->key), -(BCBIAS_J*4 >> 16)); 5835 dasm_put(Dst, 4401, Dt6(->asize), Dt6(->array), 31-3, -(BCBIAS_J*4 >> 16), Dt6(->hmask), Dt6(->node), 31-5, 31-3, DtB(->key), -(BCBIAS_J*4 >> 16));
5786 dasm_put(Dst, 4449); 5836 dasm_put(Dst, 4480);
5787 break; 5837 break;
5788 5838
5789 case BC_ISNEXT: 5839 case BC_ISNEXT:
5790 dasm_put(Dst, 4453, 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)); 5840 dasm_put(Dst, 4484, 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));
5791 break; 5841 break;
5792 5842
5793 case BC_VARG: 5843 case BC_VARG:
5794 dasm_put(Dst, 4504, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base)); 5844 dasm_put(Dst, 4535, FRAME_VARG, Dt1(->maxstack), Dt1(->top), Dt1(->base), 32-3, Dt1(->base));
5795 dasm_put(Dst, 4584); 5845 dasm_put(Dst, 4615);
5796 break; 5846 break;
5797 5847
5798 /* -- Returns ----------------------------------------------------------- */ 5848 /* -- Returns ----------------------------------------------------------- */
5799 5849
5800 case BC_RETM: 5850 case BC_RETM:
5801 dasm_put(Dst, 4590); 5851 dasm_put(Dst, 4621);
5802 break; 5852 break;
5803 5853
5804 case BC_RET: 5854 case BC_RET:
5805 dasm_put(Dst, 4592, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP); 5855 dasm_put(Dst, 4623, FRAME_TYPE, FRAME_VARG, Dt7(->pc), PC2PROTO(k), FRAME_TYPEP);
5806 break; 5856 break;
5807 5857
5808 case BC_RET0: case BC_RET1: 5858 case BC_RET0: case BC_RET1:
5809 dasm_put(Dst, 4662, FRAME_TYPE, FRAME_VARG); 5859 dasm_put(Dst, 4693, FRAME_TYPE, FRAME_VARG);
5810 if (op == BC_RET1) { 5860 if (op == BC_RET1) {
5811 dasm_put(Dst, 4675); 5861 dasm_put(Dst, 4706);
5812 } 5862 }
5813 dasm_put(Dst, 4678, Dt7(->pc), PC2PROTO(k)); 5863 dasm_put(Dst, 4709, Dt7(->pc), PC2PROTO(k));
5814 break; 5864 break;
5815 5865
5816 /* -- Loops and branches ------------------------------------------------ */ 5866 /* -- Loops and branches ------------------------------------------------ */
5817 5867
5818 case BC_FORL: 5868 case BC_FORL:
5819#if LJ_HASJIT 5869#if LJ_HASJIT
5820 dasm_put(Dst, 4706); 5870 dasm_put(Dst, 4737);
5821#endif 5871#endif
5822 break; 5872 break;
5823 5873
@@ -5829,35 +5879,35 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
5829 case BC_FORI: 5879 case BC_FORI:
5830 case BC_IFORL: 5880 case BC_IFORL:
5831 vk = (op == BC_IFORL || op == BC_JFORL); 5881 vk = (op == BC_IFORL || op == BC_JFORL);
5832 dasm_put(Dst, 4708, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8); 5882 dasm_put(Dst, 4739, FORL_IDX*8, FORL_STEP*8, FORL_STOP*8);
5833 if (!vk) { 5883 if (!vk) {
5834 dasm_put(Dst, 4716); 5884 dasm_put(Dst, 4747);
5835 } 5885 }
5836 if (vk) { 5886 if (vk) {
5837 dasm_put(Dst, 4724, FORL_IDX*8); 5887 dasm_put(Dst, 4755, FORL_IDX*8);
5838 } 5888 }
5839 dasm_put(Dst, 4728, FORL_EXT*8); 5889 dasm_put(Dst, 4759, FORL_EXT*8);
5840 if (op != BC_JFORL) { 5890 if (op != BC_JFORL) {
5841 dasm_put(Dst, 4736, 32-1); 5891 dasm_put(Dst, 4767, 32-1);
5842 if (op == BC_JFORI) { 5892 if (op == BC_JFORI) {
5843 dasm_put(Dst, 4740, -(BCBIAS_J*4 >> 16)); 5893 dasm_put(Dst, 4771, -(BCBIAS_J*4 >> 16));
5844 } else { 5894 } else {
5845 dasm_put(Dst, 4743, -(BCBIAS_J*4 >> 16)); 5895 dasm_put(Dst, 4774, -(BCBIAS_J*4 >> 16));
5846 } 5896 }
5847 } 5897 }
5848 if (op == BC_FORI) { 5898 if (op == BC_FORI) {
5849 dasm_put(Dst, 4746); 5899 dasm_put(Dst, 4777);
5850 } else if (op == BC_IFORL) { 5900 } else if (op == BC_IFORL) {
5851 dasm_put(Dst, 4748); 5901 dasm_put(Dst, 4779);
5852 } else { 5902 } else {
5853 dasm_put(Dst, 4750, BC_JLOOP); 5903 dasm_put(Dst, 4781, BC_JLOOP);
5854 } 5904 }
5855 dasm_put(Dst, 4753); 5905 dasm_put(Dst, 4784);
5856 break; 5906 break;
5857 5907
5858 case BC_ITERL: 5908 case BC_ITERL:
5859#if LJ_HASJIT 5909#if LJ_HASJIT
5860 dasm_put(Dst, 4768); 5910 dasm_put(Dst, 4799);
5861#endif 5911#endif
5862 break; 5912 break;
5863 5913
@@ -5866,40 +5916,40 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
5866 break; 5916 break;
5867#endif 5917#endif
5868 case BC_IITERL: 5918 case BC_IITERL:
5869 dasm_put(Dst, 4770); 5919 dasm_put(Dst, 4801);
5870 if (op == BC_JITERL) { 5920 if (op == BC_JITERL) {
5871 dasm_put(Dst, 4776); 5921 dasm_put(Dst, 4807);
5872 } else { 5922 } else {
5873 dasm_put(Dst, 4778, 32-1, -(BCBIAS_J*4 >> 16)); 5923 dasm_put(Dst, 4809, 32-1, -(BCBIAS_J*4 >> 16));
5874 } 5924 }
5875 dasm_put(Dst, 4785); 5925 dasm_put(Dst, 4816);
5876 break; 5926 break;
5877 5927
5878 case BC_LOOP: 5928 case BC_LOOP:
5879#if LJ_HASJIT 5929#if LJ_HASJIT
5880 dasm_put(Dst, 4797); 5930 dasm_put(Dst, 4828);
5881#endif 5931#endif
5882 break; 5932 break;
5883 5933
5884 case BC_ILOOP: 5934 case BC_ILOOP:
5885 dasm_put(Dst, 4799); 5935 dasm_put(Dst, 4830);
5886 break; 5936 break;
5887 5937
5888 case BC_JLOOP: 5938 case BC_JLOOP:
5889#if LJ_HASJIT 5939#if LJ_HASJIT
5890 dasm_put(Dst, 4810); 5940 dasm_put(Dst, 4841);
5891#endif 5941#endif
5892 break; 5942 break;
5893 5943
5894 case BC_JMP: 5944 case BC_JMP:
5895 dasm_put(Dst, 4812, 32-1, -(BCBIAS_J*4 >> 16)); 5945 dasm_put(Dst, 4843, 32-1, -(BCBIAS_J*4 >> 16));
5896 break; 5946 break;
5897 5947
5898 /* -- Function headers -------------------------------------------------- */ 5948 /* -- Function headers -------------------------------------------------- */
5899 5949
5900 case BC_FUNCF: 5950 case BC_FUNCF:
5901#if LJ_HASJIT 5951#if LJ_HASJIT
5902 dasm_put(Dst, 4828); 5952 dasm_put(Dst, 4859);
5903#endif 5953#endif
5904 case BC_FUNCV: /* NYI: compiled vararg functions. */ 5954 case BC_FUNCV: /* NYI: compiled vararg functions. */
5905 break; 5955 break;
@@ -5909,38 +5959,38 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
5909 break; 5959 break;
5910#endif 5960#endif
5911 case BC_IFUNCF: 5961 case BC_IFUNCF:
5912 dasm_put(Dst, 4830, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3); 5962 dasm_put(Dst, 4861, Dt1(->maxstack), -4+PC2PROTO(numparams), -4+PC2PROTO(k), 31-3);
5913 if (op == BC_JFUNCF) { 5963 if (op == BC_JFUNCF) {
5914 dasm_put(Dst, 4848); 5964 dasm_put(Dst, 4879);
5915 } else { 5965 } else {
5916 dasm_put(Dst, 4850); 5966 dasm_put(Dst, 4881);
5917 } 5967 }
5918 dasm_put(Dst, 4859); 5968 dasm_put(Dst, 4890);
5919 break; 5969 break;
5920 5970
5921 case BC_JFUNCV: 5971 case BC_JFUNCV:
5922#if !LJ_HASJIT 5972#if !LJ_HASJIT
5923 break; 5973 break;
5924#endif 5974#endif
5925 dasm_put(Dst, 4865); 5975 dasm_put(Dst, 4896);
5926 break; /* NYI: compiled vararg functions. */ 5976 break; /* NYI: compiled vararg functions. */
5927 5977
5928 case BC_IFUNCV: 5978 case BC_IFUNCV:
5929 dasm_put(Dst, 4867, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams)); 5979 dasm_put(Dst, 4898, Dt1(->maxstack), 8+FRAME_VARG, -4+PC2PROTO(k), -4+PC2PROTO(numparams));
5930 break; 5980 break;
5931 5981
5932 case BC_FUNCC: 5982 case BC_FUNCC:
5933 case BC_FUNCCW: 5983 case BC_FUNCCW:
5934 if (op == BC_FUNCC) { 5984 if (op == BC_FUNCC) {
5935 dasm_put(Dst, 4917, Dt8(->f)); 5985 dasm_put(Dst, 4948, Dt8(->f));
5936 } else { 5986 } else {
5937 dasm_put(Dst, 4920, DISPATCH_GL(wrapf)); 5987 dasm_put(Dst, 4951, DISPATCH_GL(wrapf));
5938 } 5988 }
5939 dasm_put(Dst, 4923, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C); 5989 dasm_put(Dst, 4954, Dt1(->maxstack), Dt1(->base), Dt1(->top), ~LJ_VMST_C);
5940 if (op == BC_FUNCCW) { 5990 if (op == BC_FUNCCW) {
5941 dasm_put(Dst, 4936, Dt8(->f)); 5991 dasm_put(Dst, 4967, Dt8(->f));
5942 } 5992 }
5943 dasm_put(Dst, 4939, DISPATCH_GL(vmstate), Dt1(->top), 31-3, Dt1(->base), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate)); 5993 dasm_put(Dst, 4970, DISPATCH_GL(vmstate), Dt1(->top), 31-3, Dt1(->base), ~LJ_VMST_INTERP, DISPATCH_GL(vmstate));
5944 break; 5994 break;
5945 5995
5946 /* ---------------------------------------------------------------------- */ 5996 /* ---------------------------------------------------------------------- */
@@ -5960,7 +6010,7 @@ static int build_backend(BuildCtx *ctx)
5960 6010
5961 build_subroutines(ctx); 6011 build_subroutines(ctx);
5962 6012
5963 dasm_put(Dst, 4960); 6013 dasm_put(Dst, 4991);
5964 for (op = 0; op < BC__MAX; op++) 6014 for (op = 0; op < BC__MAX; op++)
5965 build_ins(ctx, (BCOp)op, op); 6015 build_ins(ctx, (BCOp)op, op);
5966 6016