summaryrefslogtreecommitdiff
path: root/src/buildvm_x64.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildvm_x64.h')
-rw-r--r--src/buildvm_x64.h2060
1 files changed, 1032 insertions, 1028 deletions
diff --git a/src/buildvm_x64.h b/src/buildvm_x64.h
index 927ecc6b..fb6f57f9 100644
--- a/src/buildvm_x64.h
+++ b/src/buildvm_x64.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 char build_actionlist[15992] = { 15static const unsigned char build_actionlist[16015] = {
16 254,1,248,10,252,247,195,237,15,132,244,11,131,227,252,248,41,218,72,141, 16 254,1,248,10,252,247,195,237,15,132,244,11,131,227,252,248,41,218,72,141,
17 76,25,252,248,139,90,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,4, 17 76,25,252,248,139,90,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,4,
18 252,247,195,237,15,132,244,13,248,14,129,252,243,239,252,247,195,237,15,133, 18 252,247,195,237,15,132,244,13,248,14,129,252,243,239,252,247,195,237,15,133,
@@ -52,111 +52,112 @@ static const unsigned char build_actionlist[15992] = {
52 68,137,124,36,16,76,139,189,233,76,137,124,36,32,72,137,165,233,252,255,209, 52 68,137,124,36,16,76,139,189,233,76,137,124,36,32,72,137,165,233,252,255,209,
53 133,192,15,132,244,15,137,193,187,237,252,233,244,2,248,11,1,209,131,227, 53 133,192,15,132,244,15,137,193,187,237,252,233,244,2,248,11,1,209,131,227,
54 252,248,137,213,41,218,199,68,193,252,252,237,137,200,139,93,252,244,72,99, 54 252,248,137,213,41,218,199,68,193,252,252,237,137,200,139,93,252,244,72,99,
55 77,252,240,76,141,61,245,255,76,1,252,249,68,139,122,252,248,69,139,191,233, 55 77,252,240,133,201,15,132,244,247,255,76,141,61,245,76,1,252,249,68,139,122,
56 69,139,191,233,252,255,225,248,32,15,182,75,252,255,131,252,237,16,141,12, 56 252,248,69,139,191,233,69,139,191,233,252,255,225,248,1,41,213,193,252,237,
57 202,41,252,233,15,132,244,33,252,247,217,193,252,233,3,139,124,36,24,137, 57 3,141,69,252,255,252,233,244,32,248,33,15,182,75,252,255,131,252,237,16,141,
58 151,233,137,202,72,139,8,72,137,77,0,137,252,238,252,233,244,34,248,35,137, 58 12,202,41,252,233,15,132,244,34,252,247,217,193,252,233,3,139,124,36,24,137,
59 151,233,137,202,72,139,8,72,137,77,0,137,252,238,252,233,244,35,248,36,137,
59 4,36,199,68,36,4,237,72,141,4,36,128,123,252,252,235,15,133,244,247,65,141, 60 4,36,199,68,36,4,237,72,141,4,36,128,123,252,252,235,15,133,244,247,65,141,
60 142,233,137,41,199,65,4,237,137,205,252,233,244,248,248,36,15,182,67,252, 61 142,233,137,41,199,65,4,237,255,137,205,252,233,244,248,248,37,15,182,67,
61 254,255,199,68,36,4,237,137,4,36,255,252,242,15,42,192,252,242,15,17,4,36, 62 252,254,255,199,68,36,4,237,137,4,36,255,252,242,15,42,192,252,242,15,17,
62 255,72,141,4,36,252,233,244,247,248,37,15,182,67,252,254,141,4,194,248,1, 63 4,36,255,72,141,4,36,252,233,244,247,248,38,15,182,67,252,254,141,4,194,248,
63 15,182,107,252,255,141,44,252,234,248,2,139,124,36,24,137,151,233,137,252, 64 1,15,182,107,252,255,141,44,252,234,248,2,139,124,36,24,137,151,233,137,252,
64 238,72,137,194,137,252,253,137,92,36,28,232,251,1,2,139,149,233,133,192,15, 65 238,72,137,194,137,252,253,137,92,36,28,232,251,1,2,139,149,233,133,192,15,
65 132,244,249,248,33,15,182,75,252,253,72,139,40,72,137,44,202,139,3,15,182, 66 132,244,249,248,34,15,182,75,252,253,72,139,40,72,137,44,202,139,3,15,182,
66 204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,139,141,233, 67 204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,139,141,233,
67 137,89,252,244,141,153,233,41,211,139,105,252,248,184,237,252,233,244,30, 68 137,89,252,244,141,153,233,41,211,139,105,252,248,184,237,252,233,244,30,
68 248,38,137,4,36,199,68,36,4,237,72,141,4,36,128,123,252,252,235,15,133,244, 69 248,39,137,4,36,199,68,36,4,237,72,141,4,36,128,123,252,252,235,15,133,244,
69 247,255,65,141,142,233,137,41,199,65,4,237,137,205,252,233,244,248,248,39, 70 247,255,65,141,142,233,137,41,199,65,4,237,137,205,252,233,244,248,248,40,
70 15,182,67,252,254,255,72,141,4,36,252,233,244,247,248,40,15,182,67,252,254, 71 15,182,67,252,254,255,72,141,4,36,252,233,244,247,248,41,15,182,67,252,254,
71 141,4,194,248,1,15,182,107,252,255,141,44,252,234,248,2,139,124,36,24,137, 72 141,4,194,248,1,15,182,107,252,255,141,44,252,234,248,2,139,124,36,24,137,
72 151,233,137,252,238,72,137,194,137,252,253,137,92,36,28,232,251,1,3,139,149, 73 151,233,137,252,238,72,137,194,137,252,253,137,92,36,28,232,251,1,3,139,149,
73 233,133,192,15,132,244,249,15,182,75,252,253,72,139,44,202,72,137,40,248, 74 233,133,192,15,132,244,249,15,182,75,252,253,72,139,44,202,72,137,40,248,
74 41,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238, 75 42,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,
75 248,3,139,141,233,137,89,252,244,15,182,67,252,253,72,139,44,194,72,137,105, 76 248,3,139,141,233,137,89,252,244,15,182,67,252,253,72,139,44,194,72,137,105,
76 16,141,153,233,41,211,139,105,252,248,184,237,252,233,244,30,248,42,139,108, 77 16,141,153,233,41,211,139,105,252,248,184,237,252,233,244,30,248,43,139,108,
77 36,24,137,149,233,141,52,202,141,20,194,137,252,239,15,182,75,252,252,137, 78 36,24,137,149,233,141,52,202,141,20,194,137,252,239,15,182,75,252,252,137,
78 92,36,28,232,251,1,4,248,3,139,149,233,255,131,252,248,1,15,135,244,43,248, 79 92,36,28,232,251,1,4,248,3,139,149,233,255,131,252,248,1,15,135,244,44,248,
79 4,141,91,4,15,130,244,252,248,5,15,183,67,252,254,141,156,253,131,233,248, 80 4,141,91,4,15,130,244,252,248,5,15,183,67,252,254,141,156,253,131,233,248,
80 6,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238, 81 6,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,
81 248,44,131,195,4,129,120,253,4,239,15,130,244,5,252,233,244,6,248,45,129, 82 248,45,131,195,4,129,120,253,4,239,15,130,244,5,252,233,244,6,248,46,129,
82 120,253,4,239,252,233,244,4,248,46,131,252,235,4,137,206,137,252,233,139, 83 120,253,4,239,252,233,244,4,248,47,131,252,235,4,137,206,137,252,233,139,
83 108,36,24,137,149,233,255,137,194,137,252,239,137,92,36,28,232,251,1,5,252, 84 108,36,24,137,149,233,255,137,194,137,252,239,137,92,36,28,232,251,1,5,252,
84 233,244,3,248,47,255,131,252,235,4,139,108,36,24,137,149,233,137,252,239, 85 233,244,3,248,48,255,131,252,235,4,139,108,36,24,137,149,233,137,252,239,
85 139,115,252,252,137,92,36,28,232,251,1,6,252,233,244,3,255,248,48,255,15, 86 139,115,252,252,137,92,36,28,232,251,1,6,252,233,244,3,255,248,49,255,15,
86 182,107,252,255,255,248,49,65,141,4,199,252,233,244,247,248,50,255,248,51, 87 182,107,252,255,255,248,50,65,141,4,199,252,233,244,247,248,51,255,248,52,
87 65,141,4,199,141,44,252,234,149,252,233,244,248,248,52,141,4,194,137,197, 88 65,141,4,199,141,44,252,234,149,252,233,244,248,248,53,141,4,194,137,197,
88 252,233,244,248,248,53,255,248,54,141,4,194,248,1,141,44,252,234,248,2,141, 89 252,233,244,248,248,54,255,248,55,141,4,194,248,1,141,44,252,234,248,2,141,
89 12,202,68,15,182,67,252,252,137,206,137,193,139,124,36,24,137,151,233,137, 90 12,202,68,15,182,67,252,252,137,206,137,193,139,124,36,24,137,151,233,137,
90 252,234,137,252,253,137,92,36,28,232,251,1,7,139,149,233,133,192,15,132,244, 91 252,234,137,252,253,137,92,36,28,232,251,1,7,139,149,233,133,192,15,132,244,
91 41,248,43,137,193,41,208,137,89,252,244,141,152,233,184,237,252,233,244,28, 92 42,248,44,137,193,41,208,137,89,252,244,141,152,233,184,237,252,233,244,28,
92 248,55,139,108,36,24,137,149,233,141,52,194,137,252,239,137,92,36,28,232, 93 248,56,139,108,36,24,137,149,233,141,52,194,137,252,239,137,92,36,28,232,
93 251,1,8,139,149,233,252,233,244,43,248,56,141,76,202,8,248,29,137,76,36,4, 94 251,1,8,139,149,233,252,233,244,44,248,57,141,76,202,8,248,29,137,76,36,4,
94 137,4,36,131,252,233,8,139,108,36,24,137,149,233,255,137,206,141,20,193,137, 95 137,4,36,131,252,233,8,139,108,36,24,137,149,233,255,137,206,141,20,193,137,
95 252,239,137,92,36,28,232,251,1,9,139,149,233,139,76,36,4,139,4,36,139,105, 96 252,239,137,92,36,28,232,251,1,9,139,149,233,139,76,36,4,139,4,36,139,105,
96 252,248,131,192,1,65,57,215,15,132,244,57,137,202,137,90,252,252,139,157, 97 252,248,131,192,1,65,57,215,15,132,244,58,137,202,137,90,252,252,139,157,
97 233,139,11,15,182,252,233,15,182,205,131,195,4,65,252,255,36,252,238,248, 98 233,139,11,15,182,252,233,15,182,205,131,195,4,65,252,255,36,252,238,248,
98 58,139,108,36,24,137,149,233,137,206,137,252,239,137,92,36,28,232,251,1,10, 99 59,139,108,36,24,137,149,233,137,206,137,252,239,137,92,36,28,232,251,1,10,
99 139,149,233,139,67,252,252,15,182,204,15,182,232,193,232,16,65,252,255,164, 100 139,149,233,139,67,252,252,15,182,204,15,182,232,193,232,16,65,252,255,164,
100 253,252,238,233,248,59,129,252,248,239,15,130,244,60,139,106,4,129,252,253, 101 253,252,238,233,248,60,129,252,248,239,15,130,244,61,139,106,4,129,252,253,
101 239,15,131,244,60,139,90,252,252,137,68,36,4,137,106,252,252,139,42,137,106, 102 239,15,131,244,61,139,90,252,252,137,68,36,4,137,106,252,252,139,42,137,106,
102 252,248,131,232,2,15,132,244,248,137,209,248,1,131,193,8,72,139,41,72,137, 103 252,248,131,232,2,15,132,244,248,137,209,248,1,131,193,8,72,139,41,72,137,
103 105,252,248,131,232,1,15,133,244,1,248,2,255,139,68,36,4,252,233,244,61,248, 104 105,252,248,131,232,1,15,133,244,1,248,2,255,139,68,36,4,252,233,244,62,248,
104 62,129,252,248,239,15,130,244,60,139,106,4,137,252,233,193,252,249,15,131, 105 63,129,252,248,239,15,130,244,61,139,106,4,137,252,233,193,252,249,15,131,
105 252,249,252,254,15,132,244,249,184,237,252,247,213,57,232,255,15,71,197,255, 106 252,249,252,254,15,132,244,249,184,237,252,247,213,57,232,255,15,71,197,255,
106 15,134,244,247,137,232,248,1,255,248,2,139,106,252,248,139,132,253,197,233, 107 15,134,244,247,137,232,248,1,255,248,2,139,106,252,248,139,132,253,197,233,
107 139,90,252,252,199,66,252,252,237,137,66,252,248,252,233,244,63,248,3,184, 108 139,90,252,252,199,66,252,252,237,137,66,252,248,252,233,244,64,248,3,184,
108 237,252,233,244,2,248,64,129,252,248,239,15,130,244,60,139,106,4,139,90,252, 109 237,252,233,244,2,248,65,129,252,248,239,15,130,244,61,139,106,4,139,90,252,
109 252,129,252,253,239,15,133,244,252,248,1,139,42,139,173,233,248,2,133,252, 110 252,129,252,253,239,15,133,244,252,248,1,139,42,139,173,233,248,2,133,252,
110 237,199,66,252,252,237,255,15,132,244,63,65,139,134,233,199,66,252,252,237, 111 237,199,66,252,252,237,255,15,132,244,64,65,139,134,233,199,66,252,252,237,
111 137,106,252,248,139,141,233,35,136,233,105,201,239,3,141,233,248,3,129,185, 112 137,106,252,248,139,141,233,35,136,233,105,201,239,3,141,233,248,3,129,185,
112 233,239,15,133,244,250,57,129,233,15,132,244,251,248,4,139,137,233,133,201, 113 233,239,15,133,244,250,57,129,233,15,132,244,251,248,4,139,137,233,133,201,
113 15,133,244,3,255,252,233,244,63,248,5,139,105,4,129,252,253,239,15,132,244, 114 15,133,244,3,255,252,233,244,64,248,5,139,105,4,129,252,253,239,15,132,244,
114 63,139,1,137,106,252,252,137,66,252,248,252,233,244,63,248,6,129,252,253, 115 64,139,1,137,106,252,252,137,66,252,248,252,233,244,64,248,6,129,252,253,
115 239,15,132,244,1,129,252,253,239,15,135,244,254,129,252,253,239,15,134,244, 116 239,15,132,244,1,129,252,253,239,15,135,244,254,129,252,253,239,15,134,244,
116 253,189,237,252,233,244,254,248,7,255,189,237,248,8,252,247,213,65,139,172, 117 253,189,237,252,233,244,254,248,7,255,189,237,248,8,252,247,213,65,139,172,
117 253,174,233,252,233,244,2,248,65,129,252,248,239,15,130,244,60,129,122,253, 118 253,174,233,252,233,244,2,248,66,129,252,248,239,15,130,244,61,129,122,253,
118 4,239,15,133,244,60,139,42,131,189,233,0,15,133,244,60,129,122,253,12,239, 119 4,239,15,133,244,61,139,42,131,189,233,0,15,133,244,61,129,122,253,12,239,
119 15,133,244,60,139,66,8,137,133,233,139,90,252,252,199,66,252,252,237,255, 120 15,133,244,61,139,66,8,137,133,233,139,90,252,252,199,66,252,252,237,255,
120 137,106,252,248,252,246,133,233,235,15,132,244,247,128,165,233,235,65,139, 121 137,106,252,248,252,246,133,233,235,15,132,244,247,128,165,233,235,65,139,
121 134,233,65,137,174,233,137,133,233,248,1,252,233,244,63,248,66,129,252,248, 122 134,233,65,137,174,233,137,133,233,248,1,252,233,244,64,248,67,129,252,248,
122 239,15,130,244,60,129,122,253,4,239,15,133,244,60,137,213,139,50,141,82,8, 123 239,15,130,244,61,129,122,253,4,239,15,133,244,61,137,213,139,50,141,82,8,
123 139,124,36,24,232,251,1,11,137,252,234,72,139,40,139,90,252,252,72,137,106, 124 139,124,36,24,232,251,1,11,137,252,234,72,139,40,139,90,252,252,72,137,106,
124 252,248,252,233,244,63,248,67,255,129,252,248,239,15,133,244,60,129,122,253, 125 252,248,252,233,244,64,248,68,255,129,252,248,239,15,133,244,61,129,122,253,
125 4,239,255,15,133,244,247,139,42,252,233,244,68,248,1,15,135,244,60,255,15, 126 4,239,255,15,133,244,247,139,42,252,233,244,69,248,1,15,135,244,61,255,15,
126 131,244,60,255,252,242,15,16,2,252,233,244,69,255,221,2,252,233,244,70,255, 127 131,244,61,255,252,242,15,16,2,252,233,244,70,255,221,2,252,233,244,71,255,
127 248,71,129,252,248,239,15,130,244,60,139,90,252,252,129,122,253,4,239,15, 128 248,72,129,252,248,239,15,130,244,61,139,90,252,252,129,122,253,4,239,15,
128 133,244,249,139,2,248,2,199,66,252,252,237,137,66,252,248,252,233,244,63, 129 133,244,249,139,2,248,2,199,66,252,252,237,137,66,252,248,252,233,244,64,
129 248,3,129,122,253,4,239,15,135,244,60,65,131,190,233,0,15,133,244,60,65,139, 130 248,3,129,122,253,4,239,15,135,244,61,65,131,190,233,0,15,133,244,61,65,139,
130 174,233,65,59,174,233,255,15,130,244,247,232,244,72,248,1,139,108,36,24,137, 131 174,233,65,59,174,233,255,15,130,244,247,232,244,73,248,1,139,108,36,24,137,
131 149,233,137,92,36,28,137,214,137,252,239,255,232,251,1,12,255,232,251,1,13, 132 149,233,137,92,36,28,137,214,137,252,239,255,232,251,1,12,255,232,251,1,13,
132 255,139,149,233,252,233,244,2,248,73,129,252,248,239,15,130,244,60,15,132, 133 255,139,149,233,252,233,244,2,248,74,129,252,248,239,15,130,244,61,15,132,
133 244,248,248,1,129,122,253,4,239,15,133,244,60,139,108,36,24,137,149,233,137, 134 244,248,248,1,129,122,253,4,239,15,133,244,61,139,108,36,24,137,149,233,137,
134 149,233,139,90,252,252,139,50,141,82,8,137,252,239,137,92,36,28,232,251,1, 135 149,233,139,90,252,252,139,50,141,82,8,137,252,239,137,92,36,28,232,251,1,
135 14,139,149,233,133,192,15,132,244,249,72,139,106,8,72,139,66,16,72,137,106, 136 14,139,149,233,133,192,15,132,244,249,72,139,106,8,72,139,66,16,72,137,106,
136 252,248,72,137,2,248,74,184,237,255,252,233,244,75,248,2,199,66,12,237,252, 137 252,248,72,137,2,248,75,184,237,255,252,233,244,76,248,2,199,66,12,237,252,
137 233,244,1,248,3,199,66,252,252,237,252,233,244,63,248,76,129,252,248,239, 138 233,244,1,248,3,199,66,252,252,237,252,233,244,64,248,77,129,252,248,239,
138 15,130,244,60,139,42,129,122,253,4,239,15,133,244,60,255,131,189,233,0,15, 139 15,130,244,61,139,42,129,122,253,4,239,15,133,244,61,255,131,189,233,0,15,
139 133,244,60,255,139,106,252,248,139,133,233,139,90,252,252,199,66,252,252, 140 133,244,61,255,139,106,252,248,139,133,233,139,90,252,252,199,66,252,252,
140 237,137,66,252,248,199,66,12,237,184,237,252,233,244,75,248,77,129,252,248, 141 237,137,66,252,248,199,66,12,237,184,237,252,233,244,76,248,78,129,252,248,
141 239,15,130,244,60,129,122,253,4,239,15,133,244,60,129,122,253,12,239,255, 142 239,15,130,244,61,129,122,253,4,239,15,133,244,61,129,122,253,12,239,255,
142 139,90,252,252,255,139,66,8,131,192,1,199,66,252,252,237,137,66,252,248,255, 143 139,90,252,252,255,139,66,8,131,192,1,199,66,252,252,237,137,66,252,248,255,
143 252,242,15,16,66,8,72,189,237,237,102,72,15,110,205,252,242,15,88,193,252, 144 252,242,15,16,66,8,72,189,237,237,102,72,15,110,205,252,242,15,88,193,252,
144 242,15,45,192,252,242,15,17,66,252,248,255,139,42,59,133,233,15,131,244,248, 145 242,15,45,192,252,242,15,17,66,252,248,255,139,42,59,133,233,15,131,244,248,
145 193,224,3,3,133,233,248,1,129,120,253,4,239,15,132,244,78,72,139,40,72,137, 146 193,224,3,3,133,233,248,1,129,120,253,4,239,15,132,244,79,72,139,40,72,137,
146 42,252,233,244,74,248,2,131,189,233,0,15,132,244,78,137,252,239,137,213,137, 147 42,252,233,244,75,248,2,131,189,233,0,15,132,244,79,137,252,239,137,213,137,
147 198,232,251,1,15,137,252,234,133,192,15,133,244,1,248,78,184,237,252,233, 148 198,232,251,1,15,137,252,234,133,192,15,133,244,1,248,79,184,237,252,233,
148 244,75,248,79,255,139,106,252,248,139,133,233,139,90,252,252,199,66,252,252, 149 244,76,248,80,255,139,106,252,248,139,133,233,139,90,252,252,199,66,252,252,
149 237,137,66,252,248,255,199,66,12,237,199,66,8,0,0,0,0,255,15,87,192,252,242, 150 237,137,66,252,248,255,199,66,12,237,199,66,8,0,0,0,0,255,15,87,192,252,242,
150 15,17,66,8,255,217,252,238,221,90,8,255,184,237,252,233,244,75,248,80,129, 151 15,17,66,8,255,217,252,238,221,90,8,255,184,237,252,233,244,76,248,81,129,
151 252,248,239,15,130,244,60,141,74,8,131,232,1,187,237,248,1,65,15,182,174, 152 252,248,239,15,130,244,61,141,74,8,131,232,1,187,237,248,1,65,15,182,174,
152 233,193,252,237,235,131,229,1,1,252,235,252,233,244,28,248,81,129,252,248, 153 233,193,252,237,235,131,229,1,1,252,235,252,233,244,28,248,82,129,252,248,
153 239,15,130,244,60,129,122,253,12,239,15,133,244,60,255,139,106,4,137,106, 154 239,15,130,244,61,129,122,253,12,239,15,133,244,61,255,139,106,4,137,106,
154 12,199,66,4,237,139,42,139,90,8,137,106,8,137,26,141,74,16,131,232,2,187, 155 12,199,66,4,237,139,42,139,90,8,137,106,8,137,26,141,74,16,131,232,2,187,
155 237,252,233,244,1,248,82,129,252,248,239,15,130,244,60,139,42,139,90,252, 156 237,252,233,244,1,248,83,129,252,248,239,15,130,244,61,139,42,139,90,252,
156 252,137,92,36,28,137,44,36,129,122,253,4,239,15,133,244,60,72,131,189,233, 157 252,137,92,36,28,137,44,36,129,122,253,4,239,15,133,244,61,72,131,189,233,
157 0,15,133,244,60,128,189,233,235,15,135,244,60,139,141,233,15,132,244,247, 158 0,15,133,244,61,128,189,233,235,15,135,244,61,139,141,233,15,132,244,247,
158 255,59,141,233,15,132,244,60,248,1,141,92,193,252,240,59,157,233,15,135,244, 159 255,59,141,233,15,132,244,61,248,1,141,92,193,252,240,59,157,233,15,135,244,
159 60,137,157,233,139,108,36,24,137,149,233,131,194,8,137,149,233,141,108,194, 160 61,137,157,233,139,108,36,24,137,149,233,131,194,8,137,149,233,141,108,194,
160 232,72,41,221,57,203,15,132,244,249,248,2,72,139,4,43,72,137,67,252,248,131, 161 232,72,41,221,57,203,15,132,244,249,248,2,72,139,4,43,72,137,67,252,248,131,
161 252,235,8,57,203,15,133,244,2,248,3,137,206,139,60,36,232,244,25,65,199,134, 162 252,235,8,57,203,15,133,244,2,248,3,137,206,139,60,36,232,244,25,65,199,134,
162 233,237,255,139,108,36,24,139,28,36,139,149,233,129,252,248,239,15,135,244, 163 233,237,255,139,108,36,24,139,28,36,139,149,233,129,252,248,239,15,135,244,
@@ -167,10 +168,10 @@ static const unsigned char build_actionlist[15992] = {
167 248,252,255,252,255,252,255,252,247,195,237,255,15,132,244,13,252,233,244, 168 248,252,255,252,255,252,255,252,247,195,237,255,15,132,244,13,252,233,244,
168 14,248,8,199,66,252,252,237,139,139,233,131,252,233,8,137,139,233,72,139, 169 14,248,8,199,66,252,252,237,139,139,233,131,252,233,8,137,139,233,72,139,
169 1,72,137,2,184,237,252,233,244,7,248,9,139,12,36,68,137,185,233,137,222,137, 170 1,72,137,2,184,237,252,233,244,7,248,9,139,12,36,68,137,185,233,137,222,137,
170 252,239,232,251,1,0,139,28,36,139,149,233,252,233,244,4,248,83,139,106,252, 171 252,239,232,251,1,0,139,28,36,139,149,233,252,233,244,4,248,84,139,106,252,
171 248,139,173,233,139,90,252,252,137,92,36,28,137,44,36,72,131,189,233,0,15, 172 248,139,173,233,139,90,252,252,137,92,36,28,137,44,36,72,131,189,233,0,15,
172 133,244,60,255,128,189,233,235,15,135,244,60,139,141,233,15,132,244,247,59, 173 133,244,61,255,128,189,233,235,15,135,244,61,139,141,233,15,132,244,247,59,
173 141,233,15,132,244,60,248,1,141,92,193,252,248,59,157,233,15,135,244,60,137, 174 141,233,15,132,244,61,248,1,141,92,193,252,248,59,157,233,15,135,244,61,137,
174 157,233,139,108,36,24,137,149,233,137,149,233,141,108,194,252,240,72,41,221, 175 157,233,139,108,36,24,137,149,233,137,149,233,141,108,194,252,240,72,41,221,
175 57,203,15,132,244,249,248,2,255,72,139,4,43,72,137,67,252,248,131,252,235, 176 57,203,15,132,244,249,248,2,255,72,139,4,43,72,137,67,252,248,131,252,235,
176 8,57,203,15,133,244,2,248,3,137,206,139,60,36,232,244,25,65,199,134,233,237, 177 8,57,203,15,133,244,2,248,3,137,206,139,60,36,232,244,25,65,199,134,233,237,
@@ -181,204 +182,204 @@ static const unsigned char build_actionlist[15992] = {
181 1,248,7,139,92,36,28,137,68,36,4,49,201,252,247,195,237,15,132,244,13,252, 182 1,248,7,139,92,36,28,137,68,36,4,49,201,252,247,195,237,15,132,244,13,252,
182 233,244,14,248,8,137,222,137,252,239,232,251,1,16,248,9,139,12,36,68,137, 183 233,244,14,248,8,137,222,137,252,239,232,251,1,16,248,9,139,12,36,68,137,
183 185,233,137,222,137,252,239,232,251,1,0,139,28,36,139,149,233,252,233,244, 184 185,233,137,222,137,252,239,232,251,1,0,139,28,36,139,149,233,252,233,244,
184 4,248,84,139,108,36,24,72,252,247,133,233,237,15,132,244,60,255,137,149,233, 185 4,248,85,139,108,36,24,72,252,247,133,233,237,15,132,244,61,255,137,149,233,
185 141,68,194,252,248,137,133,233,49,192,72,137,133,233,176,235,136,133,233, 186 141,68,194,252,248,137,133,233,49,192,72,137,133,233,176,235,136,133,233,
186 252,233,244,16,255,248,68,255,248,70,139,90,252,252,221,90,252,248,252,233, 187 252,233,244,16,255,248,69,255,248,71,139,90,252,252,221,90,252,248,252,233,
187 244,63,255,248,85,129,252,248,239,15,130,244,60,255,129,122,253,4,239,15, 188 244,64,255,248,86,129,252,248,239,15,130,244,61,255,129,122,253,4,239,15,
188 133,244,248,139,42,131,252,253,0,15,137,244,68,252,247,221,15,136,244,247, 189 133,244,248,139,42,131,252,253,0,15,137,244,69,252,247,221,15,136,244,247,
189 248,86,248,68,139,90,252,252,199,66,252,252,237,137,106,252,248,252,233,244, 190 248,87,248,69,139,90,252,252,199,66,252,252,237,137,106,252,248,252,233,244,
190 63,248,1,139,90,252,252,199,66,252,252,0,0,224,65,199,66,252,248,0,0,0,0, 191 64,248,1,139,90,252,252,199,66,252,252,0,0,224,65,199,66,252,248,0,0,0,0,
191 252,233,244,63,248,2,15,135,244,60,255,129,122,253,4,239,15,131,244,60,255, 192 252,233,244,64,248,2,15,135,244,61,255,129,122,253,4,239,15,131,244,61,255,
192 252,242,15,16,2,72,184,237,237,102,72,15,110,200,15,84,193,248,69,139,90, 193 252,242,15,16,2,72,184,237,237,102,72,15,110,200,15,84,193,248,70,139,90,
193 252,252,252,242,15,17,66,252,248,255,221,2,217,225,248,69,248,70,139,90,252, 194 252,252,252,242,15,17,66,252,248,255,221,2,217,225,248,70,248,71,139,90,252,
194 252,221,90,252,248,255,248,63,184,237,248,75,137,68,36,4,248,61,252,247,195, 195 252,221,90,252,248,255,248,64,184,237,248,76,137,68,36,4,248,62,252,247,195,
195 237,15,133,244,253,248,5,56,67,252,255,15,135,244,252,15,182,75,252,253,72, 196 237,15,133,244,253,248,5,56,67,252,255,15,135,244,252,15,182,75,252,253,72,
196 252,247,209,141,20,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, 197 252,247,209,141,20,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,
197 252,255,36,252,238,248,6,199,68,194,252,244,237,131,192,1,252,233,244,5,248, 198 252,255,36,252,238,248,6,199,68,194,252,244,237,131,192,1,252,233,244,5,248,
198 7,72,199,193,252,248,252,255,252,255,252,255,252,233,244,14,248,87,255,129, 199 7,72,199,193,252,248,252,255,252,255,252,255,252,233,244,14,248,88,255,129,
199 122,253,4,239,15,133,244,247,139,42,252,233,244,68,248,1,15,135,244,60,255, 200 122,253,4,239,15,133,244,247,139,42,252,233,244,69,248,1,15,135,244,61,255,
200 252,242,15,16,2,232,244,88,255,252,242,15,45,232,129,252,253,0,0,0,128,15, 201 252,242,15,16,2,232,244,89,255,252,242,15,45,232,129,252,253,0,0,0,128,15,
201 133,244,68,252,242,15,42,205,102,15,46,193,15,138,244,69,15,132,244,68,255, 202 133,244,69,252,242,15,42,205,102,15,46,193,15,138,244,70,15,132,244,69,255,
202 221,2,232,244,88,255,248,89,255,252,242,15,16,2,232,244,90,255,221,2,232, 203 221,2,232,244,89,255,248,90,255,252,242,15,16,2,232,244,91,255,221,2,232,
203 244,90,255,248,91,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131, 204 244,91,255,248,92,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,
204 244,60,252,242,15,81,2,252,233,244,69,255,248,91,129,252,248,239,15,130,244, 205 244,61,252,242,15,81,2,252,233,244,70,255,248,92,129,252,248,239,15,130,244,
205 60,129,122,253,4,239,15,131,244,60,221,2,217,252,250,252,233,244,70,255,248, 206 61,129,122,253,4,239,15,131,244,61,221,2,217,252,250,252,233,244,71,255,248,
206 92,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131,244,60,217,252, 207 93,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,244,61,217,252,
207 237,221,2,217,252,241,252,233,244,70,248,93,129,252,248,239,15,130,244,60, 208 237,221,2,217,252,241,252,233,244,71,248,94,129,252,248,239,15,130,244,61,
208 129,122,253,4,239,15,131,244,60,217,252,236,221,2,217,252,241,252,233,244, 209 129,122,253,4,239,15,131,244,61,217,252,236,221,2,217,252,241,252,233,244,
209 70,248,94,129,252,248,239,255,15,130,244,60,129,122,253,4,239,15,131,244, 210 71,248,95,129,252,248,239,255,15,130,244,61,129,122,253,4,239,15,131,244,
210 60,221,2,232,244,95,252,233,244,70,248,96,129,252,248,239,15,130,244,60,129, 211 61,221,2,232,244,96,252,233,244,71,248,97,129,252,248,239,15,130,244,61,129,
211 122,253,4,239,15,131,244,60,221,2,217,252,254,252,233,244,70,248,97,129,252, 212 122,253,4,239,15,131,244,61,221,2,217,252,254,252,233,244,71,248,98,129,252,
212 248,239,255,15,130,244,60,129,122,253,4,239,15,131,244,60,221,2,217,252,255, 213 248,239,255,15,130,244,61,129,122,253,4,239,15,131,244,61,221,2,217,252,255,
213 252,233,244,70,248,98,129,252,248,239,15,130,244,60,129,122,253,4,239,15, 214 252,233,244,71,248,99,129,252,248,239,15,130,244,61,129,122,253,4,239,15,
214 131,244,60,221,2,217,252,242,221,216,252,233,244,70,248,99,129,252,248,239, 215 131,244,61,221,2,217,252,242,221,216,252,233,244,71,248,100,129,252,248,239,
215 15,130,244,60,255,129,122,253,4,239,15,131,244,60,221,2,217,192,216,200,217, 216 15,130,244,61,255,129,122,253,4,239,15,131,244,61,221,2,217,192,216,200,217,
216 232,222,225,217,252,250,217,252,243,252,233,244,70,248,100,129,252,248,239, 217 232,222,225,217,252,250,217,252,243,252,233,244,71,248,101,129,252,248,239,
217 15,130,244,60,129,122,253,4,239,15,131,244,60,221,2,217,192,216,200,217,232, 218 15,130,244,61,129,122,253,4,239,15,131,244,61,221,2,217,192,216,200,217,232,
218 222,225,217,252,250,217,201,217,252,243,252,233,244,70,248,101,129,252,248, 219 222,225,217,252,250,217,201,217,252,243,252,233,244,71,248,102,129,252,248,
219 239,15,130,244,60,129,122,253,4,239,15,131,244,60,255,221,2,217,232,217,252, 220 239,15,130,244,61,129,122,253,4,239,15,131,244,61,255,221,2,217,232,217,252,
220 243,252,233,244,70,255,248,102,129,252,248,239,15,130,244,60,129,122,253, 221 243,252,233,244,71,255,248,103,129,252,248,239,15,130,244,61,129,122,253,
221 4,239,15,131,244,60,252,242,15,16,2,255,137,213,232,251,1,17,137,252,234, 222 4,239,15,131,244,61,252,242,15,16,2,255,137,213,232,251,1,17,137,252,234,
222 252,233,244,69,255,248,103,129,252,248,239,15,130,244,60,129,122,253,4,239, 223 252,233,244,70,255,248,104,129,252,248,239,15,130,244,61,129,122,253,4,239,
223 15,131,244,60,252,242,15,16,2,255,137,213,232,251,1,18,137,252,234,252,233, 224 15,131,244,61,252,242,15,16,2,255,137,213,232,251,1,18,137,252,234,252,233,
224 244,69,255,248,104,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131, 225 244,70,255,248,105,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,
225 244,60,252,242,15,16,2,255,137,213,232,251,1,19,137,252,234,252,233,244,69, 226 244,61,252,242,15,16,2,255,137,213,232,251,1,19,137,252,234,252,233,244,70,
226 248,105,255,248,106,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131, 227 248,106,255,248,107,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,
227 244,60,252,242,15,16,2,139,106,252,248,252,242,15,89,133,233,252,233,244, 228 244,61,252,242,15,16,2,139,106,252,248,252,242,15,89,133,233,252,233,244,
228 69,255,248,106,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131,244, 229 70,255,248,107,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,244,
229 60,221,2,139,106,252,248,220,141,233,252,233,244,70,255,248,107,129,252,248, 230 61,221,2,139,106,252,248,220,141,233,252,233,244,71,255,248,108,129,252,248,
230 239,15,130,244,60,129,122,253,4,239,15,131,244,60,129,122,253,12,239,15,131, 231 239,15,130,244,61,129,122,253,4,239,15,131,244,61,129,122,253,12,239,15,131,
231 244,60,221,2,221,66,8,217,252,243,252,233,244,70,248,108,129,252,248,239, 232 244,61,221,2,221,66,8,217,252,243,252,233,244,71,248,109,129,252,248,239,
232 15,130,244,60,129,122,253,4,239,15,131,244,60,129,122,253,12,239,255,15,131, 233 15,130,244,61,129,122,253,4,239,15,131,244,61,129,122,253,12,239,255,15,131,
233 244,60,221,66,8,221,2,217,252,253,221,217,252,233,244,70,248,109,129,252, 234 244,61,221,66,8,221,2,217,252,253,221,217,252,233,244,71,248,110,129,252,
234 248,239,15,130,244,60,139,106,4,129,252,253,239,15,131,244,60,139,90,252, 235 248,239,15,130,244,61,139,106,4,129,252,253,239,15,131,244,61,139,90,252,
235 252,139,2,137,106,252,252,137,66,252,248,209,229,129,252,253,0,0,224,252, 236 252,139,2,137,106,252,252,137,66,252,248,209,229,129,252,253,0,0,224,252,
236 255,15,131,244,249,9,232,15,132,244,249,184,252,254,3,0,0,129,252,253,0,0, 237 255,15,131,244,249,9,232,15,132,244,249,184,252,254,3,0,0,129,252,253,0,0,
237 32,0,15,130,244,250,248,1,193,252,237,21,41,197,255,252,242,15,42,197,255, 238 32,0,15,130,244,250,248,1,193,252,237,21,41,197,255,252,242,15,42,197,255,
238 137,44,36,219,4,36,255,139,106,252,252,129,229,252,255,252,255,15,128,129, 239 137,44,36,219,4,36,255,139,106,252,252,129,229,252,255,252,255,15,128,129,
239 205,0,0,224,63,137,106,252,252,248,2,255,252,242,15,17,2,255,221,26,255,184, 240 205,0,0,224,63,137,106,252,252,248,2,255,252,242,15,17,2,255,221,26,255,184,
240 237,252,233,244,75,248,3,255,15,87,192,252,233,244,2,255,217,252,238,252, 241 237,252,233,244,76,248,3,255,15,87,192,252,233,244,2,255,217,252,238,252,
241 233,244,2,255,248,4,255,252,242,15,16,2,72,189,237,237,102,72,15,110,205, 242 233,244,2,255,248,4,255,252,242,15,16,2,72,189,237,237,102,72,15,110,205,
242 252,242,15,89,193,252,242,15,17,66,252,248,255,221,2,199,4,36,0,0,128,90, 243 252,242,15,89,193,252,242,15,17,66,252,248,255,221,2,199,4,36,0,0,128,90,
243 216,12,36,221,90,252,248,255,139,106,252,252,184,52,4,0,0,209,229,252,233, 244 216,12,36,221,90,252,248,255,139,106,252,252,184,52,4,0,0,209,229,252,233,
244 244,1,255,248,110,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131, 245 244,1,255,248,111,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,
245 244,60,252,242,15,16,2,255,248,110,129,252,248,239,15,130,244,60,129,122, 246 244,61,252,242,15,16,2,255,248,111,129,252,248,239,15,130,244,61,129,122,
246 253,4,239,15,131,244,60,221,2,255,139,106,4,139,90,252,252,209,229,129,252, 247 253,4,239,15,131,244,61,221,2,255,139,106,4,139,90,252,252,209,229,129,252,
247 253,0,0,224,252,255,15,132,244,250,255,15,40,224,232,244,111,252,242,15,92, 248 253,0,0,224,252,255,15,132,244,250,255,15,40,224,232,244,112,252,242,15,92,
248 224,248,1,252,242,15,17,66,252,248,252,242,15,17,34,255,217,192,232,244,111, 249 224,248,1,252,242,15,17,66,252,248,252,242,15,17,34,255,217,192,232,244,112,
249 220,252,233,248,1,221,90,252,248,221,26,255,139,66,252,252,139,106,4,49,232, 250 220,252,233,248,1,221,90,252,248,221,26,255,139,66,252,252,139,106,4,49,232,
250 15,136,244,249,248,2,184,237,252,233,244,75,248,3,129,252,245,0,0,0,128,137, 251 15,136,244,249,248,2,184,237,252,233,244,76,248,3,129,252,245,0,0,0,128,137,
251 106,4,252,233,244,2,248,4,255,15,87,228,252,233,244,1,255,217,252,238,217, 252 106,4,252,233,244,2,248,4,255,15,87,228,252,233,244,1,255,217,252,238,217,
252 201,252,233,244,1,255,248,112,129,252,248,239,15,130,244,60,129,122,253,4, 253 201,252,233,244,1,255,248,113,129,252,248,239,15,130,244,61,129,122,253,4,
253 239,15,131,244,60,129,122,253,12,239,15,131,244,60,221,66,8,221,2,248,1,217, 254 239,15,131,244,61,129,122,253,12,239,15,131,244,61,221,66,8,221,2,248,1,217,
254 252,248,223,224,158,15,138,244,1,221,217,252,233,244,70,255,248,113,129,252, 255 252,248,223,224,158,15,138,244,1,221,217,252,233,244,71,255,248,114,129,252,
255 248,239,15,130,244,60,129,122,253,4,239,15,131,244,60,129,122,253,12,239, 256 248,239,15,130,244,61,129,122,253,4,239,15,131,244,61,129,122,253,12,239,
256 15,131,244,60,252,242,15,16,2,252,242,15,16,74,8,232,244,114,252,233,244, 257 15,131,244,61,252,242,15,16,2,252,242,15,16,74,8,232,244,115,252,233,244,
257 69,255,248,113,129,252,248,239,15,130,244,60,129,122,253,4,239,15,131,244, 258 70,255,248,114,129,252,248,239,15,130,244,61,129,122,253,4,239,15,131,244,
258 60,129,122,253,12,239,15,131,244,60,221,2,221,66,8,232,244,114,252,233,244, 259 61,129,122,253,12,239,15,131,244,61,221,2,221,66,8,232,244,115,252,233,244,
259 70,255,248,115,185,2,0,0,0,129,122,253,4,239,255,15,133,244,250,139,42,248, 260 71,255,248,116,185,2,0,0,0,129,122,253,4,239,255,15,133,244,250,139,42,248,
260 1,57,193,15,131,244,68,129,124,253,202,252,252,239,15,133,244,249,59,108, 261 1,57,193,15,131,244,69,129,124,253,202,252,252,239,15,133,244,249,59,108,
261 202,252,248,15,79,108,202,252,248,131,193,1,252,233,244,1,248,3,15,135,244, 262 202,252,248,15,79,108,202,252,248,131,193,1,252,233,244,1,248,3,15,135,244,
262 60,255,252,233,244,252,248,4,15,135,244,60,255,252,242,15,16,2,248,5,57,193, 263 61,255,252,233,244,252,248,4,15,135,244,61,255,252,242,15,16,2,248,5,57,193,
263 15,131,244,69,129,124,253,202,252,252,239,255,15,130,244,252,15,135,244,60, 264 15,131,244,70,129,124,253,202,252,252,239,255,15,130,244,252,15,135,244,61,
264 252,242,15,42,76,202,252,248,252,233,244,253,255,248,6,252,242,15,16,76,202, 265 252,242,15,42,76,202,252,248,252,233,244,253,255,248,6,252,242,15,16,76,202,
265 252,248,248,7,252,242,15,93,193,131,193,1,252,233,244,5,255,248,116,185,2, 266 252,248,248,7,252,242,15,93,193,131,193,1,252,233,244,5,255,248,117,185,2,
266 0,0,0,129,122,253,4,239,255,15,133,244,250,139,42,248,1,57,193,15,131,244, 267 0,0,0,129,122,253,4,239,255,15,133,244,250,139,42,248,1,57,193,15,131,244,
267 68,129,124,253,202,252,252,239,15,133,244,249,59,108,202,252,248,15,76,108, 268 69,129,124,253,202,252,252,239,15,133,244,249,59,108,202,252,248,15,76,108,
268 202,252,248,131,193,1,252,233,244,1,248,3,15,135,244,60,255,248,6,252,242, 269 202,252,248,131,193,1,252,233,244,1,248,3,15,135,244,61,255,248,6,252,242,
269 15,16,76,202,252,248,248,7,252,242,15,95,193,131,193,1,252,233,244,5,255, 270 15,16,76,202,252,248,248,7,252,242,15,95,193,131,193,1,252,233,244,5,255,
270 248,9,221,216,252,233,244,60,255,248,117,129,252,248,239,15,130,244,60,129, 271 248,9,221,216,252,233,244,61,255,248,118,129,252,248,239,15,130,244,61,129,
271 122,253,4,239,15,133,244,60,139,42,255,139,173,233,252,233,244,68,255,252, 272 122,253,4,239,15,133,244,61,139,42,255,139,173,233,252,233,244,69,255,252,
272 242,15,42,133,233,252,233,244,69,255,219,133,233,252,233,244,70,255,248,118, 273 242,15,42,133,233,252,233,244,70,255,219,133,233,252,233,244,71,255,248,119,
273 129,252,248,239,15,133,244,60,129,122,253,4,239,15,133,244,60,139,42,139, 274 129,252,248,239,15,133,244,61,129,122,253,4,239,15,133,244,61,139,42,139,
274 90,252,252,131,189,233,1,15,130,244,78,15,182,173,233,255,252,242,15,42,197, 275 90,252,252,131,189,233,1,15,130,244,79,15,182,173,233,255,252,242,15,42,197,
275 252,233,244,69,255,137,44,36,219,4,36,252,233,244,70,255,248,119,65,139,174, 276 252,233,244,70,255,137,44,36,219,4,36,252,233,244,71,255,248,120,65,139,174,
276 233,65,59,174,233,15,130,244,247,232,244,72,248,1,129,252,248,239,15,133, 277 233,65,59,174,233,15,130,244,247,232,244,73,248,1,129,252,248,239,15,133,
277 244,60,129,122,253,4,239,255,15,133,244,60,139,42,129,252,253,252,255,0,0, 278 244,61,129,122,253,4,239,255,15,133,244,61,139,42,129,252,253,252,255,0,0,
278 0,15,135,244,60,137,108,36,4,255,15,131,244,60,252,242,15,44,42,129,252,253, 279 0,15,135,244,61,137,108,36,4,255,15,131,244,61,252,242,15,44,42,129,252,253,
279 252,255,0,0,0,15,135,244,60,137,108,36,4,255,15,131,244,60,221,2,219,92,36, 280 252,255,0,0,0,15,135,244,61,137,108,36,4,255,15,131,244,61,221,2,219,92,36,
280 4,129,124,36,4,252,255,0,0,0,15,135,244,60,255,199,68,36,8,1,0,0,0,72,141, 281 4,129,124,36,4,252,255,0,0,0,15,135,244,61,255,199,68,36,8,1,0,0,0,72,141,
281 68,36,4,248,120,139,108,36,24,137,149,233,139,84,36,8,72,137,198,137,252, 282 68,36,4,248,121,139,108,36,24,137,149,233,139,84,36,8,72,137,198,137,252,
282 239,137,92,36,28,232,251,1,20,139,149,233,139,90,252,252,199,66,252,252,237, 283 239,137,92,36,28,232,251,1,20,139,149,233,139,90,252,252,199,66,252,252,237,
283 137,66,252,248,252,233,244,63,248,121,65,139,174,233,65,59,174,233,15,130, 284 137,66,252,248,252,233,244,64,248,122,65,139,174,233,65,59,174,233,15,130,
284 244,247,232,244,72,248,1,199,68,36,4,252,255,252,255,252,255,252,255,129, 285 244,247,232,244,73,248,1,199,68,36,4,252,255,252,255,252,255,252,255,129,
285 252,248,239,15,130,244,60,15,134,244,247,129,122,253,20,239,255,15,133,244, 286 252,248,239,15,130,244,61,15,134,244,247,129,122,253,20,239,255,15,133,244,
286 60,139,106,16,137,108,36,4,255,15,131,244,60,252,242,15,44,106,16,137,108, 287 61,139,106,16,137,108,36,4,255,15,131,244,61,252,242,15,44,106,16,137,108,
287 36,4,255,15,131,244,60,221,66,16,219,92,36,4,255,248,1,129,122,253,4,239, 288 36,4,255,15,131,244,61,221,66,16,219,92,36,4,255,248,1,129,122,253,4,239,
288 15,133,244,60,129,122,253,12,239,255,139,42,137,108,36,8,139,173,233,255, 289 15,133,244,61,129,122,253,12,239,255,139,42,137,108,36,8,139,173,233,255,
289 139,74,8,255,252,242,15,44,74,8,255,139,68,36,4,57,197,15,130,244,251,248, 290 139,74,8,255,252,242,15,44,74,8,255,139,68,36,4,57,197,15,130,244,251,248,
290 2,133,201,15,142,244,253,248,3,139,108,36,8,41,200,15,140,244,122,141,172, 291 2,133,201,15,142,244,253,248,3,139,108,36,8,41,200,15,140,244,123,141,172,
291 253,13,233,131,192,1,248,4,137,68,36,8,137,232,252,233,244,120,248,5,15,140, 292 253,13,233,131,192,1,248,4,137,68,36,8,137,232,252,233,244,121,248,5,15,140,
292 244,252,141,68,40,1,252,233,244,2,248,6,137,232,252,233,244,2,248,7,255,15, 293 244,252,141,68,40,1,252,233,244,2,248,6,137,232,252,233,244,2,248,7,255,15,
293 132,244,254,1,252,233,131,193,1,15,143,244,3,248,8,185,1,0,0,0,252,233,244, 294 132,244,254,1,252,233,131,193,1,15,143,244,3,248,8,185,1,0,0,0,252,233,244,
294 3,248,122,49,192,252,233,244,4,248,123,129,252,248,239,15,130,244,60,65,139, 295 3,248,123,49,192,252,233,244,4,248,124,129,252,248,239,15,130,244,61,65,139,
295 174,233,65,59,174,233,15,130,244,247,232,244,72,248,1,255,129,122,253,4,239, 296 174,233,65,59,174,233,15,130,244,247,232,244,73,248,1,255,129,122,253,4,239,
296 15,133,244,60,129,122,253,12,239,139,42,255,15,133,244,60,139,66,8,255,15, 297 15,133,244,61,129,122,253,12,239,139,42,255,15,133,244,61,139,66,8,255,15,
297 131,244,60,252,242,15,44,66,8,255,15,131,244,60,221,66,8,219,92,36,4,139, 298 131,244,61,252,242,15,44,66,8,255,15,131,244,61,221,66,8,219,92,36,4,139,
298 68,36,4,255,133,192,15,142,244,122,131,189,233,1,15,130,244,122,15,133,244, 299 68,36,4,255,133,192,15,142,244,123,131,189,233,1,15,130,244,123,15,133,244,
299 124,65,57,134,233,15,130,244,124,15,182,141,233,65,139,174,233,137,68,36, 300 125,65,57,134,233,15,130,244,125,15,182,141,233,65,139,174,233,137,68,36,
300 8,248,1,136,77,0,131,197,1,131,232,1,15,133,244,1,65,139,134,233,252,233, 301 8,248,1,136,77,0,131,197,1,131,232,1,15,133,244,1,65,139,134,233,252,233,
301 244,120,248,125,129,252,248,239,255,15,130,244,60,65,139,174,233,65,59,174, 302 244,121,248,126,129,252,248,239,255,15,130,244,61,65,139,174,233,65,59,174,
302 233,15,130,244,247,232,244,72,248,1,129,122,253,4,239,15,133,244,60,139,42, 303 233,15,130,244,247,232,244,73,248,1,129,122,253,4,239,15,133,244,61,139,42,
303 139,133,233,133,192,15,132,244,122,65,57,134,233,15,130,244,126,129,197,239, 304 139,133,233,133,192,15,132,244,123,65,57,134,233,15,130,244,127,129,197,239,
304 137,92,36,4,137,68,36,8,65,139,158,233,248,1,255,15,182,77,0,131,197,1,131, 305 137,92,36,4,137,68,36,8,65,139,158,233,248,1,255,15,182,77,0,131,197,1,131,
305 232,1,136,12,3,15,133,244,1,137,216,139,92,36,4,252,233,244,120,248,127,129, 306 232,1,136,12,3,15,133,244,1,137,216,139,92,36,4,252,233,244,121,248,128,129,
306 252,248,239,15,130,244,60,65,139,174,233,65,59,174,233,15,130,244,247,232, 307 252,248,239,15,130,244,61,65,139,174,233,65,59,174,233,15,130,244,247,232,
307 244,72,248,1,129,122,253,4,239,15,133,244,60,139,42,139,133,233,65,57,134, 308 244,73,248,1,129,122,253,4,239,15,133,244,61,139,42,139,133,233,65,57,134,
308 233,255,15,130,244,126,129,197,239,137,92,36,4,137,68,36,8,65,139,158,233, 309 233,255,15,130,244,127,129,197,239,137,92,36,4,137,68,36,8,65,139,158,233,
309 252,233,244,249,248,1,15,182,76,5,0,131,252,249,65,15,130,244,248,131,252, 310 252,233,244,249,248,1,15,182,76,5,0,131,252,249,65,15,130,244,248,131,252,
310 249,90,15,135,244,248,131,252,241,32,248,2,136,12,3,248,3,131,232,1,15,137, 311 249,90,15,135,244,248,131,252,241,32,248,2,136,12,3,248,3,131,232,1,15,137,
311 244,1,137,216,139,92,36,4,252,233,244,120,248,128,129,252,248,239,15,130, 312 244,1,137,216,139,92,36,4,252,233,244,121,248,129,129,252,248,239,15,130,
312 244,60,255,65,139,174,233,65,59,174,233,15,130,244,247,232,244,72,248,1,129, 313 244,61,255,65,139,174,233,65,59,174,233,15,130,244,247,232,244,73,248,1,129,
313 122,253,4,239,15,133,244,60,139,42,139,133,233,65,57,134,233,15,130,244,126, 314 122,253,4,239,15,133,244,61,139,42,139,133,233,65,57,134,233,15,130,244,127,
314 129,197,239,137,92,36,4,137,68,36,8,65,139,158,233,252,233,244,249,248,1, 315 129,197,239,137,92,36,4,137,68,36,8,65,139,158,233,252,233,244,249,248,1,
315 15,182,76,5,0,131,252,249,97,15,130,244,248,255,131,252,249,122,15,135,244, 316 15,182,76,5,0,131,252,249,97,15,130,244,248,255,131,252,249,122,15,135,244,
316 248,131,252,241,32,248,2,136,12,3,248,3,131,232,1,15,137,244,1,137,216,139, 317 248,131,252,241,32,248,2,136,12,3,248,3,131,232,1,15,137,244,1,137,216,139,
317 92,36,4,252,233,244,120,248,129,129,252,248,239,15,130,244,60,129,122,253, 318 92,36,4,252,233,244,121,248,130,129,252,248,239,15,130,244,61,129,122,253,
318 4,239,15,133,244,60,137,213,139,58,232,251,1,21,137,252,234,255,137,197,252, 319 4,239,15,133,244,61,137,213,139,58,232,251,1,21,137,252,234,255,137,197,252,
319 233,244,68,255,252,242,15,42,192,252,233,244,69,255,248,130,129,122,253,4, 320 233,244,69,255,252,242,15,42,192,252,233,244,70,255,248,131,129,122,253,4,
320 239,255,15,133,244,247,139,42,252,233,244,86,248,1,15,135,244,60,255,252, 321 239,255,15,133,244,247,139,42,252,233,244,87,248,1,15,135,244,61,255,252,
321 242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,126, 322 242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,126,
322 197,255,252,233,244,86,255,248,131,255,72,189,237,237,102,72,15,110,205,255, 323 197,255,252,233,244,87,255,248,132,255,72,189,237,237,102,72,15,110,205,255,
323 199,4,36,0,0,192,89,255,15,133,244,247,139,42,252,233,244,248,248,1,15,135, 324 199,4,36,0,0,192,89,255,15,133,244,247,139,42,252,233,244,248,248,1,15,135,
324 244,60,255,252,242,15,16,2,252,242,15,88,193,102,15,126,197,255,248,2,137, 325 244,61,255,252,242,15,16,2,252,242,15,88,193,102,15,126,197,255,248,2,137,
325 68,36,4,141,68,194,252,240,248,1,57,208,15,134,244,86,129,120,253,4,239,255, 326 68,36,4,141,68,194,252,240,248,1,57,208,15,134,244,87,129,120,253,4,239,255,
326 15,133,244,248,35,40,131,232,8,252,233,244,1,248,2,15,135,244,132,255,15, 327 15,133,244,248,35,40,131,232,8,252,233,244,1,248,2,15,135,244,133,255,15,
327 131,244,132,255,252,242,15,16,0,252,242,15,88,193,102,15,126,193,33,205,255, 328 131,244,133,255,252,242,15,16,0,252,242,15,88,193,102,15,126,193,33,205,255,
328 131,232,8,252,233,244,1,248,133,255,15,133,244,248,11,40,131,232,8,252,233, 329 131,232,8,252,233,244,1,248,134,255,15,133,244,248,11,40,131,232,8,252,233,
329 244,1,248,2,15,135,244,132,255,252,242,15,16,0,252,242,15,88,193,102,15,126, 330 244,1,248,2,15,135,244,133,255,252,242,15,16,0,252,242,15,88,193,102,15,126,
330 193,9,205,255,131,232,8,252,233,244,1,248,134,255,15,133,244,248,51,40,131, 331 193,9,205,255,131,232,8,252,233,244,1,248,135,255,15,133,244,248,51,40,131,
331 232,8,252,233,244,1,248,2,15,135,244,132,255,252,242,15,16,0,252,242,15,88, 332 232,8,252,233,244,1,248,2,15,135,244,133,255,252,242,15,16,0,252,242,15,88,
332 193,102,15,126,193,49,205,255,131,232,8,252,233,244,1,248,135,129,122,253, 333 193,102,15,126,193,49,205,255,131,232,8,252,233,244,1,248,136,129,122,253,
333 4,239,255,248,2,15,205,252,233,244,86,248,136,129,122,253,4,239,255,248,2, 334 4,239,255,248,2,15,205,252,233,244,87,248,137,129,122,253,4,239,255,248,2,
334 252,247,213,255,248,86,252,242,15,42,197,252,233,244,69,255,248,132,139,68, 335 252,247,213,255,248,87,252,242,15,42,197,252,233,244,70,255,248,133,139,68,
335 36,4,252,233,244,60,255,248,137,129,122,253,4,239,255,248,2,129,122,253,12, 336 36,4,252,233,244,61,255,248,138,129,122,253,4,239,255,248,2,129,122,253,12,
336 239,15,133,244,60,139,74,8,255,248,137,129,252,248,239,15,130,244,60,129, 337 239,15,133,244,61,139,74,8,255,248,138,129,252,248,239,15,130,244,61,129,
337 122,253,4,239,15,131,244,60,129,122,253,12,239,15,131,244,60,252,242,15,16, 338 122,253,4,239,15,131,244,61,129,122,253,12,239,15,131,244,61,252,242,15,16,
338 2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252, 339 2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,
339 242,15,88,202,102,15,126,197,102,15,126,201,255,211,229,252,233,244,86,255, 340 242,15,88,202,102,15,126,197,102,15,126,201,255,211,229,252,233,244,87,255,
340 248,138,129,122,253,4,239,255,248,138,129,252,248,239,15,130,244,60,129,122, 341 248,139,129,122,253,4,239,255,248,139,129,252,248,239,15,130,244,61,129,122,
341 253,4,239,15,131,244,60,129,122,253,12,239,15,131,244,60,252,242,15,16,2, 342 253,4,239,15,131,244,61,129,122,253,12,239,15,131,244,61,252,242,15,16,2,
342 252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252, 343 252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,
343 242,15,88,202,102,15,126,197,102,15,126,201,255,211,252,237,252,233,244,86, 344 242,15,88,202,102,15,126,197,102,15,126,201,255,211,252,237,252,233,244,87,
344 255,248,139,129,122,253,4,239,255,248,139,129,252,248,239,15,130,244,60,129, 345 255,248,140,129,122,253,4,239,255,248,140,129,252,248,239,15,130,244,61,129,
345 122,253,4,239,15,131,244,60,129,122,253,12,239,15,131,244,60,252,242,15,16, 346 122,253,4,239,15,131,244,61,129,122,253,12,239,15,131,244,61,252,242,15,16,
346 2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252, 347 2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,
347 242,15,88,202,102,15,126,197,102,15,126,201,255,211,252,253,252,233,244,86, 348 242,15,88,202,102,15,126,197,102,15,126,201,255,211,252,253,252,233,244,87,
348 255,248,140,129,122,253,4,239,255,248,140,129,252,248,239,15,130,244,60,129, 349 255,248,141,129,122,253,4,239,255,248,141,129,252,248,239,15,130,244,61,129,
349 122,253,4,239,15,131,244,60,129,122,253,12,239,15,131,244,60,252,242,15,16, 350 122,253,4,239,15,131,244,61,129,122,253,12,239,15,131,244,61,252,242,15,16,
350 2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252, 351 2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,
351 242,15,88,202,102,15,126,197,102,15,126,201,255,211,197,252,233,244,86,255, 352 242,15,88,202,102,15,126,197,102,15,126,201,255,211,197,252,233,244,87,255,
352 248,141,129,122,253,4,239,255,248,141,129,252,248,239,15,130,244,60,129,122, 353 248,142,129,122,253,4,239,255,248,142,129,252,248,239,15,130,244,61,129,122,
353 253,4,239,15,131,244,60,129,122,253,12,239,15,131,244,60,252,242,15,16,2, 354 253,4,239,15,131,244,61,129,122,253,12,239,15,131,244,61,252,242,15,16,2,
354 252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252, 355 252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,
355 242,15,88,202,102,15,126,197,102,15,126,201,255,211,205,252,233,244,86,248, 356 242,15,88,202,102,15,126,197,102,15,126,201,255,211,205,252,233,244,87,248,
356 124,184,237,252,233,244,60,248,126,184,237,248,60,139,108,36,24,139,90,252, 357 125,184,237,252,233,244,61,248,127,184,237,248,61,139,108,36,24,139,90,252,
357 252,137,92,36,28,137,149,233,141,68,194,252,248,141,136,233,137,133,233,139, 358 252,137,92,36,28,137,149,233,141,68,194,252,248,141,136,233,137,133,233,139,
358 66,252,248,59,141,233,15,135,244,251,137,252,239,252,255,144,233,139,149, 359 66,252,248,59,141,233,15,135,244,251,137,252,239,252,255,144,233,139,149,
359 233,133,192,15,143,244,75,248,1,255,139,141,233,41,209,193,252,233,3,133, 360 233,133,192,15,143,244,76,248,1,255,139,141,233,41,209,193,252,233,3,133,
360 192,141,65,1,139,106,252,248,15,133,244,248,139,157,233,139,11,15,182,252, 361 192,141,65,1,139,106,252,248,15,133,244,32,139,157,233,139,11,15,182,252,
361 233,15,182,205,131,195,4,65,252,255,36,252,238,248,2,137,209,252,247,195, 362 233,15,182,205,131,195,4,65,252,255,36,252,238,248,32,137,209,252,247,195,
362 237,15,133,244,249,15,182,107,252,253,72,252,247,213,141,20,252,234,252,233, 363 237,15,133,244,249,15,182,107,252,253,72,252,247,213,141,20,252,234,252,233,
363 244,28,248,3,137,221,131,229,252,248,41,252,234,252,233,244,28,248,5,190, 364 244,28,248,3,137,221,131,229,252,248,41,252,234,252,233,244,28,248,5,190,
364 237,137,252,239,232,251,1,0,139,149,233,49,192,252,233,244,1,248,72,93,72, 365 237,137,252,239,232,251,1,0,139,149,233,49,192,252,233,244,1,248,73,93,72,
365 137,108,36,8,139,108,36,24,137,92,36,28,137,149,233,255,141,68,194,252,248, 366 137,108,36,8,139,108,36,24,137,92,36,28,137,149,233,255,141,68,194,252,248,
366 137,252,239,137,133,233,232,251,1,22,139,149,233,139,133,233,41,208,193,232, 367 137,252,239,137,133,233,232,251,1,22,139,149,233,139,133,233,41,208,193,232,
367 3,131,192,1,72,139,108,36,8,85,195,248,142,255,65,15,182,134,233,168,235, 368 3,131,192,1,72,139,108,36,8,85,195,248,143,255,65,15,182,134,233,168,235,
368 15,133,244,251,168,235,15,133,244,247,168,235,15,132,244,247,65,252,255,142, 369 15,133,244,251,168,235,15,133,244,247,168,235,15,132,244,247,65,252,255,142,
369 233,252,233,244,247,255,248,143,65,15,182,134,233,168,235,15,133,244,251, 370 233,252,233,244,247,255,248,144,65,15,182,134,233,168,235,15,133,244,251,
370 252,233,244,247,248,144,65,15,182,134,233,168,235,15,133,244,251,168,235, 371 252,233,244,247,248,145,65,15,182,134,233,168,235,15,133,244,251,168,235,
371 15,132,244,251,65,252,255,142,233,15,132,244,247,168,235,15,132,244,251,248, 372 15,132,244,251,65,252,255,142,233,15,132,244,247,168,235,15,132,244,251,248,
372 1,255,139,108,36,24,137,149,233,137,222,137,252,239,232,251,1,23,248,3,139, 373 1,255,139,108,36,24,137,149,233,137,222,137,252,239,232,251,1,23,248,3,139,
373 149,233,248,4,15,182,75,252,253,248,5,15,182,107,252,252,15,183,67,252,254, 374 149,233,248,4,15,182,75,252,253,248,5,15,182,107,252,252,15,183,67,252,254,
374 65,252,255,164,253,252,238,233,248,145,131,195,4,139,77,232,137,76,36,4,252, 375 65,252,255,164,253,252,238,233,248,146,131,195,4,139,77,232,137,76,36,4,252,
375 233,244,4,248,146,255,139,106,252,248,139,173,233,15,182,133,233,141,4,194, 376 233,244,4,248,147,255,139,106,252,248,139,173,233,15,182,133,233,141,4,194,
376 139,108,36,24,137,149,233,137,133,233,137,222,65,141,190,233,73,137,174,233, 377 139,108,36,24,137,149,233,137,133,233,137,222,65,141,190,233,73,137,174,233,
377 137,92,36,28,232,251,1,24,252,233,244,3,255,248,147,137,92,36,28,255,248, 378 137,92,36,28,232,251,1,24,252,233,244,3,255,248,148,137,92,36,28,255,248,
378 148,255,137,92,36,28,131,203,1,248,1,255,141,68,194,252,248,139,108,36,24, 379 149,255,137,92,36,28,131,203,1,248,1,255,141,68,194,252,248,139,108,36,24,
379 137,149,233,137,133,233,137,222,137,252,239,232,251,1,25,199,68,36,28,0,0, 380 137,149,233,137,133,233,137,222,137,252,239,232,251,1,25,199,68,36,28,0,0,
380 0,0,255,131,227,252,254,255,139,149,233,72,137,193,139,133,233,41,208,72, 381 0,0,255,131,227,252,254,255,139,149,233,72,137,193,139,133,233,41,208,72,
381 137,205,15,182,75,252,253,193,232,3,131,192,1,252,255,229,248,149,255,65, 382 137,205,15,182,75,252,253,193,232,3,131,192,1,252,255,229,248,150,255,65,
382 85,65,84,65,83,65,82,65,81,65,80,87,86,85,72,141,108,36,88,85,83,82,81,80, 383 85,65,84,65,83,65,82,65,81,65,80,87,86,85,72,141,108,36,88,85,83,82,81,80,
383 15,182,69,252,248,138,101,252,240,76,137,125,252,248,76,137,117,252,240,68, 384 15,182,69,252,248,138,101,252,240,76,137,125,252,248,76,137,117,252,240,68,
384 139,117,0,65,139,142,233,65,199,134,233,237,65,137,134,233,65,137,142,233, 385 139,117,0,65,139,142,233,65,199,134,233,237,65,137,134,233,65,137,142,233,
@@ -390,30 +391,30 @@ static const unsigned char build_actionlist[15992] = {
390 15,17,77,136,252,242,15,17,69,128,65,139,174,233,65,139,150,233,73,137,174, 391 15,17,77,136,252,242,15,17,69,128,65,139,174,233,65,139,150,233,73,137,174,
391 233,65,199,134,233,0,0,0,0,137,149,233,72,137,230,65,141,190,233,232,251, 392 233,65,199,134,233,0,0,0,0,137,149,233,72,137,230,65,141,190,233,232,251,
392 1,26,72,139,141,233,72,129,225,239,72,137,204,137,169,233,139,149,233,139, 393 1,26,72,139,141,233,72,129,225,239,72,137,204,137,169,233,139,149,233,139,
393 153,233,252,233,244,247,255,248,150,255,72,131,196,16,248,1,76,139,108,36, 394 153,233,252,233,244,247,255,248,151,255,72,131,196,16,248,1,76,139,108,36,
394 8,76,139,36,36,133,192,15,136,244,249,137,68,36,4,68,139,122,252,248,69,139, 395 8,76,139,36,36,133,192,15,136,244,249,137,68,36,4,68,139,122,252,248,69,139,
395 191,233,69,139,191,233,65,199,134,233,0,0,0,0,65,199,134,233,237,139,3,15, 396 191,233,69,139,191,233,65,199,134,233,0,0,0,0,65,199,134,233,237,139,3,15,
396 182,204,15,182,232,131,195,4,193,232,16,129,252,253,239,15,130,244,248,139, 397 182,204,15,182,232,131,195,4,193,232,16,129,252,253,239,15,130,244,248,139,
397 68,36,4,248,2,65,252,255,36,252,238,248,3,252,247,216,137,252,239,137,198, 398 68,36,4,248,2,65,252,255,36,252,238,248,3,252,247,216,137,252,239,137,198,
398 232,251,1,1,255,248,88,255,217,124,36,4,137,68,36,8,102,184,0,4,102,11,68, 399 232,251,1,1,255,248,89,255,217,124,36,4,137,68,36,8,102,184,0,4,102,11,68,
399 36,4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,252,252,217, 400 36,4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,252,252,217,
400 108,36,4,139,68,36,8,195,255,248,151,72,184,237,237,102,72,15,110,208,72, 401 108,36,4,139,68,36,8,195,255,248,152,72,184,237,237,102,72,15,110,208,72,
401 184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,217,15,134, 402 184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,217,15,134,
402 244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,72, 403 244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,72,
403 184,237,237,102,72,15,110,208,252,242,15,194,193,1,102,15,84,194,252,242, 404 184,237,237,102,72,15,110,208,252,242,15,194,193,1,102,15,84,194,252,242,
404 15,92,200,15,40,193,248,1,195,248,90,255,217,124,36,4,137,68,36,8,102,184, 405 15,92,200,15,40,193,248,1,195,248,91,255,217,124,36,4,137,68,36,8,102,184,
405 0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68,36,6,217,108,36,6,217, 406 0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68,36,6,217,108,36,6,217,
406 252,252,217,108,36,4,139,68,36,8,195,255,248,152,72,184,237,237,102,72,15, 407 252,252,217,108,36,4,139,68,36,8,195,255,248,153,72,184,237,237,102,72,15,
407 110,208,72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46, 408 110,208,72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,
408 217,15,134,244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102, 409 217,15,134,244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,
409 15,86,202,72,184,237,237,102,72,15,110,208,252,242,15,194,193,6,102,15,84, 410 15,86,202,72,184,237,237,102,72,15,110,208,252,242,15,194,193,6,102,15,84,
410 194,252,242,15,92,200,15,40,193,248,1,195,248,111,255,217,124,36,4,137,68, 411 194,252,242,15,92,200,15,40,193,248,1,195,248,112,255,217,124,36,4,137,68,
411 36,8,102,184,0,12,102,11,68,36,4,102,137,68,36,6,217,108,36,6,217,252,252, 412 36,8,102,184,0,12,102,11,68,36,4,102,137,68,36,6,217,108,36,6,217,252,252,
412 217,108,36,4,139,68,36,8,195,255,248,153,72,184,237,237,102,72,15,110,208, 413 217,108,36,4,139,68,36,8,195,255,248,154,72,184,237,237,102,72,15,110,208,
413 72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,217,15, 414 72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,217,15,
414 134,244,247,102,15,85,208,15,40,193,252,242,15,88,203,252,242,15,92,203,72, 415 134,244,247,102,15,85,208,15,40,193,252,242,15,88,203,252,242,15,92,203,72,
415 184,237,237,102,72,15,110,216,252,242,15,194,193,1,102,15,84,195,252,242, 416 184,237,237,102,72,15,110,216,252,242,15,194,193,1,102,15,84,195,252,242,
416 15,92,200,102,15,86,202,15,40,193,248,1,195,248,154,255,15,40,232,252,242, 417 15,92,200,102,15,86,202,15,40,193,248,1,195,248,155,255,15,40,232,252,242,
417 15,94,193,72,184,237,237,102,72,15,110,208,72,184,237,237,102,72,15,110,216, 418 15,94,193,72,184,237,237,102,72,15,110,208,72,184,237,237,102,72,15,110,216,
418 15,40,224,102,15,84,226,102,15,46,220,15,134,244,247,102,15,85,208,252,242, 419 15,40,224,102,15,84,226,102,15,46,220,15,134,244,247,102,15,85,208,252,242,
419 15,88,227,252,242,15,92,227,102,15,86,226,72,184,237,237,102,72,15,110,208, 420 15,88,227,252,242,15,92,227,102,15,86,226,72,184,237,237,102,72,15,110,208,
@@ -421,12 +422,12 @@ static const unsigned char build_actionlist[15992] = {
421 89,204,252,242,15,92,193,195,248,1,252,242,15,89,200,15,40,197,252,242,15, 422 89,204,252,242,15,92,193,195,248,1,252,242,15,89,200,15,40,197,252,242,15,
422 92,193,195,255,217,193,216,252,241,217,124,36,4,102,184,0,4,102,11,68,36, 423 92,193,195,255,217,193,216,252,241,217,124,36,4,102,184,0,4,102,11,68,36,
423 4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,252,252,217,108, 424 4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,252,252,217,108,
424 36,4,222,201,222,252,233,195,255,248,95,217,252,234,222,201,248,155,217,84, 425 36,4,222,201,222,252,233,195,255,248,96,217,252,234,222,201,248,156,217,84,
425 36,252,248,129,124,36,252,248,0,0,128,127,15,132,244,247,129,124,36,252,248, 426 36,252,248,129,124,36,252,248,0,0,128,127,15,132,244,247,129,124,36,252,248,
426 0,0,128,252,255,15,132,244,248,248,156,217,192,217,252,252,220,252,233,217, 427 0,0,128,252,255,15,132,244,248,248,157,217,192,217,252,252,220,252,233,217,
427 201,217,252,240,217,232,222,193,217,252,253,221,217,248,1,195,248,2,221,216, 428 201,217,252,240,217,232,222,193,217,252,253,221,217,248,1,195,248,2,221,216,
428 217,252,238,195,255,248,114,255,248,157,252,242,15,45,193,252,242,15,42,208, 429 217,252,238,195,255,248,115,255,248,158,252,242,15,45,193,252,242,15,42,208,
429 102,15,46,202,15,133,244,254,15,138,244,255,248,158,131,252,248,1,15,142, 430 102,15,46,202,15,133,244,254,15,138,244,255,248,159,131,252,248,1,15,142,
430 244,252,248,1,169,1,0,0,0,15,133,244,248,252,242,15,89,192,209,232,252,233, 431 244,252,248,1,169,1,0,0,0,15,133,244,248,252,242,15,89,192,209,232,252,233,
431 244,1,248,2,209,232,15,132,244,251,15,40,200,248,3,252,242,15,89,192,209, 432 244,1,248,2,209,232,15,132,244,251,15,40,200,248,3,252,242,15,89,192,209,
432 232,15,132,244,250,15,131,244,3,255,252,242,15,89,200,252,233,244,3,248,4, 433 232,15,132,244,250,15,131,244,3,255,252,242,15,89,200,252,233,244,3,248,4,
@@ -444,27 +445,27 @@ static const unsigned char build_actionlist[15992] = {
444 1,102,15,80,193,15,87,192,136,196,15,146,208,48,224,15,133,244,1,248,3,72, 445 1,102,15,80,193,15,87,192,136,196,15,146,208,48,224,15,133,244,1,248,3,72,
445 184,237,237,255,102,72,15,110,192,195,248,4,102,15,80,193,133,192,15,133, 446 184,237,237,255,102,72,15,110,192,195,248,4,102,15,80,193,133,192,15,133,
446 244,3,15,87,192,195,248,5,102,15,80,193,133,192,15,132,244,3,15,87,192,195, 447 244,3,15,87,192,195,248,5,102,15,80,193,133,192,15,132,244,3,15,87,192,195,
447 248,159,255,131,252,255,1,15,130,244,88,15,132,244,90,131,252,255,3,15,130, 448 248,160,255,131,252,255,1,15,130,244,89,15,132,244,91,131,252,255,3,15,130,
448 244,111,15,135,244,248,252,242,15,81,192,195,248,2,252,242,15,17,68,36,252, 449 244,112,15,135,244,248,252,242,15,81,192,195,248,2,252,242,15,17,68,36,252,
449 248,221,68,36,252,248,131,252,255,5,15,135,244,248,15,132,244,247,232,244, 450 248,221,68,36,252,248,131,252,255,5,15,135,244,248,15,132,244,247,232,244,
450 95,252,233,244,253,248,1,232,244,155,255,252,233,244,253,248,2,131,252,255, 451 96,252,233,244,253,248,1,232,244,156,255,252,233,244,253,248,2,131,252,255,
451 7,15,132,244,247,15,135,244,248,217,252,237,217,201,217,252,241,252,233,244, 452 7,15,132,244,247,15,135,244,248,217,252,237,217,201,217,252,241,252,233,244,
452 253,248,1,217,232,217,201,217,252,241,252,233,244,253,248,2,131,252,255,9, 453 253,248,1,217,232,217,201,217,252,241,252,233,244,253,248,2,131,252,255,9,
453 15,132,244,247,15,135,244,248,217,252,236,217,201,217,252,241,252,233,244, 454 15,132,244,247,15,135,244,248,217,252,236,217,201,217,252,241,252,233,244,
454 253,248,1,255,217,252,254,252,233,244,253,248,2,131,252,255,11,15,132,244, 455 253,248,1,255,217,252,254,252,233,244,253,248,2,131,252,255,11,15,132,244,
455 247,15,135,244,255,217,252,255,252,233,244,253,248,1,217,252,242,221,216, 456 247,15,135,244,255,217,252,255,252,233,244,253,248,1,217,252,242,221,216,
456 248,7,221,92,36,252,248,252,242,15,16,68,36,252,248,195,255,139,124,36,12, 457 248,7,221,92,36,252,248,252,242,15,16,68,36,252,248,195,255,139,124,36,12,
457 221,68,36,4,131,252,255,1,15,130,244,88,15,132,244,90,131,252,255,3,15,130, 458 221,68,36,4,131,252,255,1,15,130,244,89,15,132,244,91,131,252,255,3,15,130,
458 244,111,15,135,244,248,217,252,250,195,248,2,131,252,255,5,15,130,244,95, 459 244,112,15,135,244,248,217,252,250,195,248,2,131,252,255,5,15,130,244,96,
459 15,132,244,155,131,252,255,7,15,132,244,247,15,135,244,248,217,252,237,217, 460 15,132,244,156,131,252,255,7,15,132,244,247,15,135,244,248,217,252,237,217,
460 201,217,252,241,195,248,1,217,232,217,201,217,252,241,195,248,2,131,252,255, 461 201,217,252,241,195,248,1,217,232,217,201,217,252,241,195,248,2,131,252,255,
461 9,15,132,244,247,255,15,135,244,248,217,252,236,217,201,217,252,241,195,248, 462 9,15,132,244,247,255,15,135,244,248,217,252,236,217,201,217,252,241,195,248,
462 1,217,252,254,195,248,2,131,252,255,11,15,132,244,247,15,135,244,255,217, 463 1,217,252,254,195,248,2,131,252,255,11,15,132,244,247,15,135,244,255,217,
463 252,255,195,248,1,217,252,242,221,216,195,255,248,9,204,255,248,160,255,131, 464 252,255,195,248,1,217,252,242,221,216,195,255,248,9,204,255,248,161,255,131,
464 252,255,1,15,132,244,247,15,135,244,248,252,242,15,88,193,195,248,1,252,242, 465 252,255,1,15,132,244,247,15,135,244,248,252,242,15,88,193,195,248,1,252,242,
465 15,92,193,195,248,2,131,252,255,3,15,132,244,247,15,135,244,248,252,242,15, 466 15,92,193,195,248,2,131,252,255,3,15,132,244,247,15,135,244,248,252,242,15,
466 89,193,195,248,1,252,242,15,94,193,195,248,2,131,252,255,5,15,130,244,154, 467 89,193,195,248,1,252,242,15,94,193,195,248,2,131,252,255,5,15,130,244,155,
467 15,132,244,114,131,252,255,7,15,132,244,247,15,135,244,248,72,184,237,237, 468 15,132,244,115,131,252,255,7,15,132,244,247,15,135,244,248,72,184,237,237,
468 255,102,72,15,110,200,15,87,193,195,248,1,72,184,237,237,102,72,15,110,200, 469 255,102,72,15,110,200,15,87,193,195,248,1,72,184,237,237,102,72,15,110,200,
469 15,84,193,195,248,2,131,252,255,9,15,135,244,248,252,242,15,17,68,36,252, 470 15,84,193,195,248,2,131,252,255,9,15,135,244,248,252,242,15,17,68,36,252,
470 248,252,242,15,17,76,36,252,240,221,68,36,252,248,221,68,36,252,240,15,132, 471 248,252,242,15,17,76,36,252,240,221,68,36,252,248,221,68,36,252,240,15,132,
@@ -474,14 +475,14 @@ static const unsigned char build_actionlist[15992] = {
474 248,9,204,255,139,68,36,20,221,68,36,4,221,68,36,12,131,252,248,1,15,132, 475 248,9,204,255,139,68,36,20,221,68,36,4,221,68,36,12,131,252,248,1,15,132,
475 244,247,15,135,244,248,222,193,195,248,1,222,252,233,195,248,2,131,252,248, 476 244,247,15,135,244,248,222,193,195,248,1,222,252,233,195,248,2,131,252,248,
476 3,15,132,244,247,15,135,244,248,222,201,195,248,1,222,252,249,195,248,2,131, 477 3,15,132,244,247,15,135,244,248,222,201,195,248,1,222,252,249,195,248,2,131,
477 252,248,5,15,130,244,154,15,132,244,114,131,252,248,7,15,132,244,247,15,135, 478 252,248,5,15,130,244,155,15,132,244,115,131,252,248,7,15,132,244,247,15,135,
478 244,248,255,221,216,217,224,195,248,1,221,216,217,225,195,248,2,131,252,248, 479 244,248,255,221,216,217,224,195,248,1,221,216,217,225,195,248,2,131,252,248,
479 9,15,132,244,247,15,135,244,248,217,252,243,195,248,1,217,201,217,252,253, 480 9,15,132,244,247,15,135,244,248,217,252,243,195,248,1,217,201,217,252,253,
480 221,217,195,248,2,131,252,248,11,15,132,244,247,15,135,244,255,255,219,252, 481 221,217,195,248,2,131,252,248,11,15,132,244,247,15,135,244,255,255,219,252,
481 233,219,209,221,217,195,248,1,219,252,233,218,209,221,217,195,255,221,225, 482 233,219,209,221,217,195,248,1,219,252,233,218,209,221,217,195,255,221,225,
482 223,224,252,246,196,1,15,132,244,248,217,201,248,2,221,216,195,248,1,221, 483 223,224,252,246,196,1,15,132,244,248,217,201,248,2,221,216,195,248,1,221,
483 225,223,224,252,246,196,1,15,133,244,248,217,201,248,2,221,216,195,255,248, 484 225,223,224,252,246,196,1,15,133,244,248,217,201,248,2,221,216,195,255,248,
484 161,137,252,248,83,15,162,137,6,137,94,4,137,78,8,137,86,12,91,195,248,162, 485 162,137,252,248,83,15,162,137,6,137,94,4,137,78,8,137,86,12,91,195,248,163,
485 255,85,72,137,229,83,72,137,252,251,139,131,233,72,41,196,255,15,182,139, 486 255,85,72,137,229,83,72,137,252,251,139,131,233,72,41,196,255,15,182,139,
486 233,131,252,233,1,15,136,244,248,248,1,72,139,132,253,203,233,72,137,132, 487 233,131,252,233,1,15,136,244,248,248,1,72,139,132,253,203,233,72,137,132,
487 253,204,233,131,252,233,1,15,137,244,1,248,2,15,182,131,233,72,139,187,233, 488 253,204,233,131,252,233,1,15,137,244,1,248,2,15,182,131,233,72,139,187,233,
@@ -489,17 +490,17 @@ static const unsigned char build_actionlist[15992] = {
489 133,192,15,132,244,251,15,40,131,233,15,40,139,233,255,15,40,147,233,15,40, 490 133,192,15,132,244,251,15,40,131,233,15,40,139,233,255,15,40,147,233,15,40,
490 155,233,131,252,248,4,15,134,244,251,15,40,163,233,15,40,171,233,15,40,179, 491 155,233,131,252,248,4,15,134,244,251,15,40,163,233,15,40,171,233,15,40,179,
491 233,15,40,187,233,248,5,252,255,147,233,72,137,131,233,15,41,131,233,72,137, 492 233,15,40,187,233,248,5,252,255,147,233,72,137,131,233,15,41,131,233,72,137,
492 147,233,15,41,139,233,255,72,139,93,252,248,201,195,255,248,163,255,249,255, 493 147,233,15,41,139,233,255,72,139,93,252,248,201,195,255,248,164,255,249,255,
493 129,124,253,202,4,239,15,133,244,253,129,124,253,194,4,239,15,133,244,254, 494 129,124,253,202,4,239,15,133,244,253,129,124,253,194,4,239,15,133,244,254,
494 139,44,202,131,195,4,59,44,194,255,15,141,244,255,255,15,140,244,255,255, 495 139,44,202,131,195,4,59,44,194,255,15,141,244,255,255,15,140,244,255,255,
495 15,143,244,255,255,15,142,244,255,255,248,6,15,183,67,252,254,141,156,253, 496 15,143,244,255,255,15,142,244,255,255,248,6,15,183,67,252,254,141,156,253,
496 131,233,248,9,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255, 497 131,233,248,9,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,
497 36,252,238,248,7,15,135,244,42,129,124,253,194,4,239,15,130,244,247,15,133, 498 36,252,238,248,7,15,135,244,43,129,124,253,194,4,239,15,130,244,247,15,133,
498 244,42,255,252,242,15,42,4,194,252,233,244,248,255,221,4,202,219,4,194,252, 499 244,43,255,252,242,15,42,4,194,252,233,244,248,255,221,4,202,219,4,194,252,
499 233,244,249,255,248,8,15,135,244,42,255,252,242,15,42,12,202,252,242,15,16, 500 233,244,249,255,248,8,15,135,244,43,255,252,242,15,42,12,202,252,242,15,16,
500 4,194,131,195,4,102,15,46,193,255,15,134,244,9,255,15,135,244,9,255,15,130, 501 4,194,131,195,4,102,15,46,193,255,15,134,244,9,255,15,135,244,9,255,15,130,
501 244,9,255,15,131,244,9,255,252,233,244,6,255,219,4,202,252,233,244,248,255, 502 244,9,255,15,131,244,9,255,252,233,244,6,255,219,4,202,252,233,244,248,255,
502 129,124,253,202,4,239,15,131,244,42,129,124,253,194,4,239,15,131,244,42,255, 503 129,124,253,202,4,239,15,131,244,43,129,124,253,194,4,239,15,131,244,43,255,
503 248,1,252,242,15,16,4,194,248,2,131,195,4,102,15,46,4,202,248,3,255,248,1, 504 248,1,252,242,15,16,4,194,248,2,131,195,4,102,15,46,4,202,248,3,255,248,1,
504 221,4,202,248,2,221,4,194,248,3,131,195,4,255,223,252,233,221,216,255,218, 505 221,4,202,248,2,221,4,194,248,3,131,195,4,255,223,252,233,221,216,255,218,
505 252,233,223,224,158,255,15,134,244,247,255,15,135,244,247,255,15,130,244, 506 252,233,223,224,158,255,15,134,244,247,255,15,135,244,247,255,15,130,244,
@@ -517,11 +518,11 @@ static const unsigned char build_actionlist[15992] = {
517 248,4,255,15,138,244,248,15,133,244,248,255,15,138,244,248,15,132,244,247, 518 248,4,255,15,138,244,248,15,133,244,248,255,15,138,244,248,15,132,244,247,
518 255,248,1,15,183,67,252,254,141,156,253,131,233,248,2,255,248,2,15,183,67, 519 255,248,1,15,183,67,252,254,141,156,253,131,233,248,2,255,248,2,15,183,67,
519 252,254,141,156,253,131,233,248,1,255,252,233,244,9,255,248,5,255,129,252, 520 252,254,141,156,253,131,233,248,1,255,252,233,244,9,255,248,5,255,129,252,
520 253,239,15,132,244,47,129,124,253,202,4,239,15,132,244,47,255,57,108,202, 521 253,239,15,132,244,48,129,124,253,202,4,239,15,132,244,48,255,57,108,202,
521 4,15,133,244,2,129,252,253,239,15,131,244,1,139,12,202,139,4,194,57,193,15, 522 4,15,133,244,2,129,252,253,239,15,131,244,1,139,12,202,139,4,194,57,193,15,
522 132,244,1,129,252,253,239,15,135,244,2,139,169,233,133,252,237,15,132,244, 523 132,244,1,129,252,253,239,15,135,244,2,139,169,233,133,252,237,15,132,244,
523 2,252,246,133,233,235,15,133,244,2,255,49,252,237,255,189,1,0,0,0,255,252, 524 2,252,246,133,233,235,15,133,244,2,255,49,252,237,255,189,1,0,0,0,255,252,
524 233,244,46,255,248,3,129,252,253,239,255,15,133,244,9,255,252,233,244,47, 525 233,244,47,255,248,3,129,252,253,239,255,15,133,244,9,255,252,233,244,48,
525 255,72,252,247,208,139,108,202,4,131,195,4,129,252,253,239,15,133,244,249, 526 255,72,252,247,208,139,108,202,4,131,195,4,129,252,253,239,15,133,244,249,
526 139,12,202,65,59,12,135,255,139,108,202,4,131,195,4,255,129,252,253,239,15, 527 139,12,202,65,59,12,135,255,139,108,202,4,131,195,4,255,129,252,253,239,15,
527 133,244,253,65,129,124,253,199,4,239,15,133,244,254,65,139,44,199,59,44,202, 528 133,244,253,65,129,124,253,199,4,239,15,133,244,254,65,139,44,199,59,44,202,
@@ -534,7 +535,7 @@ static const unsigned char build_actionlist[15992] = {
534 4,202,248,4,255,72,252,247,208,139,108,202,4,131,195,4,57,197,255,15,133, 535 4,202,248,4,255,72,252,247,208,139,108,202,4,131,195,4,57,197,255,15,133,
535 244,249,15,183,67,252,254,141,156,253,131,233,248,2,139,3,15,182,204,15,182, 536 244,249,15,183,67,252,254,141,156,253,131,233,248,2,139,3,15,182,204,15,182,
536 232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,129,252,253,239,15,133, 537 232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,129,252,253,239,15,133,
537 244,2,252,233,244,47,255,15,132,244,248,129,252,253,239,15,132,244,47,15, 538 244,2,252,233,244,48,255,15,132,244,248,129,252,253,239,15,132,244,48,15,
538 183,67,252,254,141,156,253,131,233,248,2,139,3,15,182,204,15,182,232,131, 539 183,67,252,254,141,156,253,131,233,248,2,139,3,15,182,204,15,182,232,131,
539 195,4,193,232,16,65,252,255,36,252,238,255,139,108,194,4,131,195,4,129,252, 540 195,4,193,232,16,65,252,255,36,252,238,255,139,108,194,4,131,195,4,129,252,
540 253,239,255,137,108,202,4,139,44,194,137,44,202,255,72,139,44,194,72,137, 541 253,239,255,137,108,202,4,139,44,194,137,44,202,255,72,139,44,194,72,137,
@@ -544,40 +545,40 @@ static const unsigned char build_actionlist[15992] = {
544 124,253,194,4,239,15,133,244,251,139,44,194,252,247,221,15,128,244,250,199, 545 124,253,194,4,239,15,133,244,251,139,44,194,252,247,221,15,128,244,250,199,
545 68,202,4,237,137,44,202,248,9,139,3,15,182,204,15,182,232,131,195,4,193,232, 546 68,202,4,237,137,44,202,248,9,139,3,15,182,204,15,182,232,131,195,4,193,232,
546 16,65,252,255,36,252,238,248,4,199,68,202,4,0,0,224,65,199,4,202,0,0,0,0, 547 16,65,252,255,36,252,238,248,4,199,68,202,4,0,0,224,65,199,4,202,0,0,0,0,
547 252,233,244,9,248,5,15,135,244,52,255,129,124,253,194,4,239,15,131,244,52, 548 252,233,244,9,248,5,15,135,244,53,255,129,124,253,194,4,239,15,131,244,53,
548 255,252,242,15,16,4,194,72,184,237,237,102,72,15,110,200,15,87,193,252,242, 549 255,252,242,15,16,4,194,72,184,237,237,102,72,15,110,200,15,87,193,252,242,
549 15,17,4,202,255,221,4,194,217,224,221,28,202,255,129,124,253,194,4,239,15, 550 15,17,4,202,255,221,4,194,217,224,221,28,202,255,129,124,253,194,4,239,15,
550 133,244,248,139,4,194,255,139,128,233,248,1,199,68,202,4,237,137,4,202,255, 551 133,244,248,139,4,194,255,139,128,233,248,1,199,68,202,4,237,137,4,202,255,
551 15,87,192,252,242,15,42,128,233,248,1,252,242,15,17,4,202,255,219,128,233, 552 15,87,192,252,242,15,42,128,233,248,1,252,242,15,17,4,202,255,219,128,233,
552 248,1,221,28,202,255,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, 553 248,1,221,28,202,255,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,
553 252,255,36,252,238,248,2,129,124,253,194,4,239,15,133,244,55,139,60,194,137, 554 252,255,36,252,238,248,2,129,124,253,194,4,239,15,133,244,56,139,60,194,137,
554 213,232,251,1,21,255,252,242,15,42,192,255,137,252,234,15,182,75,252,253, 555 213,232,251,1,21,255,252,242,15,42,192,255,137,252,234,15,182,75,252,253,
555 252,233,244,1,255,15,182,252,236,15,182,192,255,129,124,253,252,234,4,239, 556 252,233,244,1,255,15,182,252,236,15,182,192,255,129,124,253,252,234,4,239,
556 15,133,244,49,65,129,124,253,199,4,239,15,133,244,49,139,44,252,234,65,3, 557 15,133,244,50,65,129,124,253,199,4,239,15,133,244,50,139,44,252,234,65,3,
557 44,199,15,128,244,48,255,129,124,253,252,234,4,239,15,133,244,51,65,129,124, 558 44,199,15,128,244,49,255,129,124,253,252,234,4,239,15,133,244,52,65,129,124,
558 253,199,4,239,15,133,244,51,65,139,4,199,3,4,252,234,15,128,244,50,255,129, 559 253,199,4,239,15,133,244,52,65,139,4,199,3,4,252,234,15,128,244,51,255,129,
559 124,253,252,234,4,239,15,133,244,54,129,124,253,194,4,239,15,133,244,54,139, 560 124,253,252,234,4,239,15,133,244,55,129,124,253,194,4,239,15,133,244,55,139,
560 44,252,234,3,44,194,15,128,244,53,255,199,68,202,4,237,255,129,124,253,252, 561 44,252,234,3,44,194,15,128,244,54,255,199,68,202,4,237,255,129,124,253,252,
561 234,4,239,15,131,244,49,255,65,129,124,253,199,4,239,15,131,244,49,255,252, 562 234,4,239,15,131,244,50,255,65,129,124,253,199,4,239,15,131,244,50,255,252,
562 242,15,16,4,252,234,252,242,65,15,88,4,199,255,221,4,252,234,65,220,4,199, 563 242,15,16,4,252,234,252,242,65,15,88,4,199,255,221,4,252,234,65,220,4,199,
563 255,129,124,253,252,234,4,239,15,131,244,51,255,65,129,124,253,199,4,239, 564 255,129,124,253,252,234,4,239,15,131,244,52,255,65,129,124,253,199,4,239,
564 15,131,244,51,255,252,242,65,15,16,4,199,252,242,15,88,4,252,234,255,65,221, 565 15,131,244,52,255,252,242,65,15,16,4,199,252,242,15,88,4,252,234,255,65,221,
565 4,199,220,4,252,234,255,129,124,253,252,234,4,239,15,131,244,54,129,124,253, 566 4,199,220,4,252,234,255,129,124,253,252,234,4,239,15,131,244,55,129,124,253,
566 194,4,239,15,131,244,54,255,252,242,15,16,4,252,234,252,242,15,88,4,194,255, 567 194,4,239,15,131,244,55,255,252,242,15,16,4,252,234,252,242,15,88,4,194,255,
567 221,4,252,234,220,4,194,255,129,124,253,252,234,4,239,15,133,244,49,65,129, 568 221,4,252,234,220,4,194,255,129,124,253,252,234,4,239,15,133,244,50,65,129,
568 124,253,199,4,239,15,133,244,49,139,44,252,234,65,43,44,199,15,128,244,48, 569 124,253,199,4,239,15,133,244,50,139,44,252,234,65,43,44,199,15,128,244,49,
569 255,129,124,253,252,234,4,239,15,133,244,51,65,129,124,253,199,4,239,15,133, 570 255,129,124,253,252,234,4,239,15,133,244,52,65,129,124,253,199,4,239,15,133,
570 244,51,65,139,4,199,43,4,252,234,15,128,244,50,255,129,124,253,252,234,4, 571 244,52,65,139,4,199,43,4,252,234,15,128,244,51,255,129,124,253,252,234,4,
571 239,15,133,244,54,129,124,253,194,4,239,15,133,244,54,139,44,252,234,43,44, 572 239,15,133,244,55,129,124,253,194,4,239,15,133,244,55,139,44,252,234,43,44,
572 194,15,128,244,53,255,252,242,15,16,4,252,234,252,242,65,15,92,4,199,255, 573 194,15,128,244,54,255,252,242,15,16,4,252,234,252,242,65,15,92,4,199,255,
573 221,4,252,234,65,220,36,199,255,252,242,65,15,16,4,199,252,242,15,92,4,252, 574 221,4,252,234,65,220,36,199,255,252,242,65,15,16,4,199,252,242,15,92,4,252,
574 234,255,65,221,4,199,220,36,252,234,255,252,242,15,16,4,252,234,252,242,15, 575 234,255,65,221,4,199,220,36,252,234,255,252,242,15,16,4,252,234,252,242,15,
575 92,4,194,255,221,4,252,234,220,36,194,255,129,124,253,252,234,4,239,15,133, 576 92,4,194,255,221,4,252,234,220,36,194,255,129,124,253,252,234,4,239,15,133,
576 244,49,65,129,124,253,199,4,239,15,133,244,49,139,44,252,234,65,15,175,44, 577 244,50,65,129,124,253,199,4,239,15,133,244,50,139,44,252,234,65,15,175,44,
577 199,15,128,244,48,255,129,124,253,252,234,4,239,15,133,244,51,65,129,124, 578 199,15,128,244,49,255,129,124,253,252,234,4,239,15,133,244,52,65,129,124,
578 253,199,4,239,15,133,244,51,65,139,4,199,15,175,4,252,234,15,128,244,50,255, 579 253,199,4,239,15,133,244,52,65,139,4,199,15,175,4,252,234,15,128,244,51,255,
579 129,124,253,252,234,4,239,15,133,244,54,129,124,253,194,4,239,15,133,244, 580 129,124,253,252,234,4,239,15,133,244,55,129,124,253,194,4,239,15,133,244,
580 54,139,44,252,234,15,175,44,194,15,128,244,53,255,252,242,15,16,4,252,234, 581 55,139,44,252,234,15,175,44,194,15,128,244,54,255,252,242,15,16,4,252,234,
581 252,242,65,15,89,4,199,255,221,4,252,234,65,220,12,199,255,252,242,65,15, 582 252,242,65,15,89,4,199,255,221,4,252,234,65,220,12,199,255,252,242,65,15,
582 16,4,199,252,242,15,89,4,252,234,255,65,221,4,199,220,12,252,234,255,252, 583 16,4,199,252,242,15,89,4,252,234,255,65,221,4,199,220,12,252,234,255,252,
583 242,15,16,4,252,234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255, 584 242,15,16,4,252,234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,
@@ -587,10 +588,10 @@ static const unsigned char build_actionlist[15992] = {
587 234,220,52,194,255,252,242,15,16,4,252,234,252,242,65,15,16,12,199,255,221, 588 234,220,52,194,255,252,242,15,16,4,252,234,252,242,65,15,16,12,199,255,221,
588 4,252,234,65,221,4,199,255,252,242,65,15,16,4,199,252,242,15,16,12,252,234, 589 4,252,234,65,221,4,199,255,252,242,65,15,16,4,199,252,242,15,16,12,252,234,
589 255,65,221,4,199,221,4,252,234,255,252,242,15,16,4,252,234,252,242,15,16, 590 255,65,221,4,199,221,4,252,234,255,252,242,15,16,4,252,234,252,242,15,16,
590 12,194,255,221,4,252,234,221,4,194,255,248,164,232,244,154,255,252,233,244, 591 12,194,255,221,4,252,234,221,4,194,255,248,165,232,244,155,255,252,233,244,
591 164,255,232,244,114,255,15,182,252,236,15,182,192,139,124,36,24,137,151,233, 592 165,255,232,244,115,255,15,182,252,236,15,182,192,139,124,36,24,137,151,233,
592 141,52,194,137,194,41,252,234,248,34,137,252,253,137,92,36,28,232,251,1,27, 593 141,52,194,137,194,41,252,234,248,35,137,252,253,137,92,36,28,232,251,1,27,
593 139,149,233,133,192,15,133,244,43,15,182,107,252,255,15,182,75,252,253,72, 594 139,149,233,133,192,15,133,244,44,15,182,107,252,255,15,182,75,252,253,72,
594 139,4,252,234,72,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232, 595 139,4,252,234,72,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,
595 16,65,252,255,36,252,238,255,72,252,247,208,65,139,4,135,199,68,202,4,237, 596 16,65,252,255,36,252,238,255,72,252,247,208,65,139,4,135,199,68,202,4,237,
596 137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 597 137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
@@ -633,56 +634,56 @@ static const unsigned char build_actionlist[15992] = {
633 253,137,4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193, 634 253,137,4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193,
634 232,16,65,252,255,36,252,238,248,3,137,252,239,232,251,1,32,15,183,67,252, 635 232,16,65,252,255,36,252,238,248,3,137,252,239,232,251,1,32,15,183,67,252,
635 254,72,252,247,208,252,233,244,2,255,72,252,247,208,139,106,252,248,139,173, 636 254,72,252,247,208,252,233,244,2,255,72,252,247,208,139,106,252,248,139,173,
636 233,65,139,4,135,252,233,244,165,255,72,252,247,208,139,106,252,248,139,173, 637 233,65,139,4,135,252,233,244,166,255,72,252,247,208,139,106,252,248,139,173,
637 233,65,139,4,135,252,233,244,166,255,15,182,252,236,15,182,192,129,124,253, 638 233,65,139,4,135,252,233,244,167,255,15,182,252,236,15,182,192,129,124,253,
638 252,234,4,239,15,133,244,37,139,44,252,234,255,129,124,253,194,4,239,15,133, 639 252,234,4,239,15,133,244,38,139,44,252,234,255,129,124,253,194,4,239,15,133,
639 244,251,139,4,194,255,129,124,253,194,4,239,15,131,244,251,255,252,242,15, 640 244,251,139,4,194,255,129,124,253,194,4,239,15,131,244,251,255,252,242,15,
640 16,4,194,252,242,15,45,192,252,242,15,42,200,102,15,46,193,255,15,133,244, 641 16,4,194,252,242,15,45,192,252,242,15,42,200,102,15,46,193,255,15,133,244,
641 37,255,59,133,233,15,131,244,37,193,224,3,3,133,233,129,120,253,4,239,15, 642 38,255,59,133,233,15,131,244,38,193,224,3,3,133,233,129,120,253,4,239,15,
642 132,244,248,72,139,40,72,137,44,202,248,1,139,3,15,182,204,15,182,232,131, 643 132,244,248,72,139,40,72,137,44,202,248,1,139,3,15,182,204,15,182,232,131,
643 195,4,193,232,16,65,252,255,36,252,238,248,2,131,189,233,0,15,132,244,249, 644 195,4,193,232,16,65,252,255,36,252,238,248,2,131,189,233,0,15,132,244,249,
644 139,141,233,252,246,129,233,235,15,132,244,37,15,182,75,252,253,248,3,199, 645 139,141,233,252,246,129,233,235,15,132,244,38,15,182,75,252,253,248,3,199,
645 68,202,4,237,252,233,244,1,248,5,255,129,124,253,194,4,239,15,133,244,37, 646 68,202,4,237,252,233,244,1,248,5,255,129,124,253,194,4,239,15,133,244,38,
646 139,4,194,252,233,244,165,255,15,182,252,236,15,182,192,72,252,247,208,65, 647 139,4,194,252,233,244,166,255,15,182,252,236,15,182,192,72,252,247,208,65,
647 139,4,135,129,124,253,252,234,4,239,15,133,244,35,139,44,252,234,248,165, 648 139,4,135,129,124,253,252,234,4,239,15,133,244,36,139,44,252,234,248,166,
648 139,141,233,35,136,233,105,201,239,3,141,233,248,1,129,185,233,239,15,133, 649 139,141,233,35,136,233,105,201,239,3,141,233,248,1,129,185,233,239,15,133,
649 244,250,57,129,233,15,133,244,250,129,121,253,4,239,15,132,244,251,15,182, 650 244,250,57,129,233,15,133,244,250,129,121,253,4,239,15,132,244,251,15,182,
650 67,252,253,72,139,41,72,137,44,194,248,2,255,139,3,15,182,204,15,182,232, 651 67,252,253,72,139,41,72,137,44,194,248,2,255,139,3,15,182,204,15,182,232,
651 131,195,4,193,232,16,65,252,255,36,252,238,248,3,15,182,67,252,253,199,68, 652 131,195,4,193,232,16,65,252,255,36,252,238,248,3,15,182,67,252,253,199,68,
652 194,4,237,252,233,244,2,248,4,139,137,233,133,201,15,133,244,1,248,5,139, 653 194,4,237,252,233,244,2,248,4,139,137,233,133,201,15,133,244,1,248,5,139,
653 141,233,133,201,15,132,244,3,252,246,129,233,235,15,133,244,3,252,233,244, 654 141,233,133,201,15,132,244,3,252,246,129,233,235,15,133,244,3,252,233,244,
654 35,255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,36, 655 36,255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,37,
655 139,44,252,234,59,133,233,15,131,244,36,193,224,3,3,133,233,129,120,253,4, 656 139,44,252,234,59,133,233,15,131,244,37,193,224,3,3,133,233,129,120,253,4,
656 239,15,132,244,248,72,139,40,72,137,44,202,248,1,139,3,15,182,204,15,182, 657 239,15,132,244,248,72,139,40,72,137,44,202,248,1,139,3,15,182,204,15,182,
657 232,131,195,4,193,232,16,65,252,255,36,252,238,248,2,131,189,233,0,15,132, 658 232,131,195,4,193,232,16,65,252,255,36,252,238,248,2,131,189,233,0,15,132,
658 244,249,139,141,233,252,246,129,233,235,15,132,244,36,255,15,182,75,252,253, 659 244,249,139,141,233,252,246,129,233,235,15,132,244,37,255,15,182,75,252,253,
659 248,3,199,68,202,4,237,252,233,244,1,255,15,182,252,236,15,182,192,129,124, 660 248,3,199,68,202,4,237,252,233,244,1,255,15,182,252,236,15,182,192,129,124,
660 253,252,234,4,239,15,133,244,40,139,44,252,234,255,15,133,244,40,255,59,133, 661 253,252,234,4,239,15,133,244,41,139,44,252,234,255,15,133,244,41,255,59,133,
661 233,15,131,244,40,193,224,3,3,133,233,129,120,253,4,239,15,132,244,249,248, 662 233,15,131,244,41,193,224,3,3,133,233,129,120,253,4,239,15,132,244,249,248,
662 1,252,246,133,233,235,15,133,244,253,248,2,72,139,44,202,72,137,40,139,3, 663 1,252,246,133,233,235,15,133,244,253,248,2,72,139,44,202,72,137,40,139,3,
663 15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,131, 664 15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,131,
664 189,233,0,15,132,244,1,139,141,233,252,246,129,233,235,255,15,132,244,40, 665 189,233,0,15,132,244,1,139,141,233,252,246,129,233,235,255,15,132,244,41,
665 15,182,75,252,253,252,233,244,1,248,5,129,124,253,194,4,239,15,133,244,40, 666 15,182,75,252,253,252,233,244,1,248,5,129,124,253,194,4,239,15,133,244,41,
666 139,4,194,252,233,244,166,248,7,128,165,233,235,65,139,142,233,65,137,174, 667 139,4,194,252,233,244,167,248,7,128,165,233,235,65,139,142,233,65,137,174,
667 233,137,141,233,15,182,75,252,253,252,233,244,2,255,15,182,252,236,15,182, 668 233,137,141,233,15,182,75,252,253,252,233,244,2,255,15,182,252,236,15,182,
668 192,72,252,247,208,65,139,4,135,129,124,253,252,234,4,239,15,133,244,38,139, 669 192,72,252,247,208,65,139,4,135,129,124,253,252,234,4,239,15,133,244,39,139,
669 44,252,234,248,166,139,141,233,35,136,233,105,201,239,198,133,233,0,3,141, 670 44,252,234,248,167,139,141,233,35,136,233,105,201,239,198,133,233,0,3,141,
670 233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133,244,251,129,121, 671 233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133,244,251,129,121,
671 253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15,133,244,253,248, 672 253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15,133,244,253,248,
672 3,15,182,67,252,253,72,139,44,194,72,137,41,139,3,15,182,204,15,182,232,131, 673 3,15,182,67,252,253,72,139,44,194,72,137,41,139,3,15,182,204,15,182,232,131,
673 195,4,193,232,16,65,252,255,36,252,238,248,4,131,189,233,0,15,132,244,2,137, 674 195,4,193,232,16,65,252,255,36,252,238,248,4,131,189,233,0,15,132,244,2,137,
674 12,36,139,141,233,252,246,129,233,235,15,132,244,38,139,12,36,252,233,244, 675 12,36,139,141,233,252,246,129,233,235,15,132,244,39,139,12,36,252,233,244,
675 2,248,5,139,137,233,133,201,15,133,244,1,255,139,141,233,133,201,15,132,244, 676 2,248,5,139,137,233,133,201,15,133,244,1,255,139,141,233,133,201,15,132,244,
676 252,252,246,129,233,235,15,132,244,38,248,6,137,4,36,199,68,36,4,237,137, 677 252,252,246,129,233,235,15,132,244,39,248,6,137,4,36,199,68,36,4,237,137,
677 108,36,8,139,124,36,24,137,151,233,72,141,20,36,137,252,238,137,252,253,137, 678 108,36,8,139,124,36,24,137,151,233,72,141,20,36,137,252,238,137,252,253,137,
678 92,36,28,232,251,1,34,139,149,233,139,108,36,8,137,193,252,233,244,2,248, 679 92,36,28,232,251,1,34,139,149,233,139,108,36,8,137,193,252,233,244,2,248,
679 7,128,165,233,235,65,139,134,233,65,137,174,233,137,133,233,252,233,244,3, 680 7,128,165,233,235,65,139,134,233,65,137,174,233,137,133,233,252,233,244,3,
680 255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,39,139, 681 255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,40,139,
681 44,252,234,59,133,233,15,131,244,39,193,224,3,3,133,233,129,120,253,4,239, 682 44,252,234,59,133,233,15,131,244,40,193,224,3,3,133,233,129,120,253,4,239,
682 15,132,244,249,248,1,252,246,133,233,235,15,133,244,253,248,2,72,139,12,202, 683 15,132,244,249,248,1,252,246,133,233,235,15,133,244,253,248,2,72,139,12,202,
683 72,137,8,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252, 684 72,137,8,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,
684 238,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252,246,129,233,235, 685 238,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252,246,129,233,235,
685 15,132,244,39,15,182,75,252,253,252,233,244,1,248,7,128,165,233,235,65,139, 686 15,132,244,40,15,182,75,252,253,252,233,244,1,248,7,128,165,233,235,65,139,
686 142,233,65,137,174,233,137,141,233,15,182,75,252,253,252,233,244,2,255,68, 687 142,233,65,137,174,233,137,141,233,15,182,75,252,253,252,233,244,2,255,68,
687 137,60,36,69,139,60,199,248,1,141,12,202,139,105,252,248,252,246,133,233, 688 137,60,36,69,139,60,199,248,1,141,12,202,139,105,252,248,252,246,133,233,
688 235,15,133,244,253,248,2,139,68,36,4,131,232,1,15,132,244,250,68,1,252,248, 689 235,15,133,244,253,248,2,139,68,36,4,131,232,1,15,132,244,250,68,1,252,248,
@@ -692,10 +693,10 @@ static const unsigned char build_actionlist[15992] = {
692 238,248,5,139,124,36,24,137,151,233,137,252,238,137,194,137,252,253,137,92, 693 238,248,5,139,124,36,24,137,151,233,137,252,238,137,194,137,252,253,137,92,
693 36,28,232,251,1,35,139,149,233,15,182,75,252,253,252,233,244,1,248,7,255, 694 36,28,232,251,1,35,139,149,233,15,182,75,252,253,252,233,244,1,248,7,255,
694 128,165,233,235,65,139,134,233,65,137,174,233,137,133,233,252,233,244,2,255, 695 128,165,233,235,65,139,134,233,65,137,174,233,137,133,233,252,233,244,2,255,
695 3,68,36,4,255,129,124,253,202,4,239,139,44,202,15,133,244,56,141,84,202,8, 696 3,68,36,4,255,129,124,253,202,4,239,139,44,202,15,133,244,57,141,84,202,8,
696 137,90,252,252,139,157,233,139,11,15,182,252,233,15,182,205,131,195,4,65, 697 137,90,252,252,139,157,233,139,11,15,182,252,233,15,182,205,131,195,4,65,
697 252,255,36,252,238,255,141,76,202,8,65,137,215,139,105,252,248,129,121,253, 698 252,255,36,252,238,255,141,76,202,8,65,137,215,139,105,252,248,129,121,253,
698 252,252,239,15,133,244,29,248,57,139,90,252,252,252,247,195,237,15,133,244, 699 252,252,239,15,133,244,29,248,58,139,90,252,252,252,247,195,237,15,133,244,
699 253,248,1,137,106,252,248,137,68,36,4,131,232,1,15,132,244,249,248,2,72,139, 700 253,248,1,137,106,252,248,137,68,36,4,131,232,1,15,132,244,249,248,2,72,139,
700 41,131,193,8,73,137,47,65,131,199,8,131,232,1,15,133,244,2,139,106,252,248, 701 41,131,193,8,73,137,47,65,131,199,8,131,232,1,15,133,244,2,139,106,252,248,
701 248,3,139,68,36,4,128,189,233,1,15,135,244,251,248,4,139,157,233,139,11,15, 702 248,3,139,68,36,4,128,189,233,1,15,135,244,251,248,4,139,157,233,139,11,15,
@@ -743,19 +744,19 @@ static const unsigned char build_actionlist[15992] = {
743 65,199,71,252,252,237,65,131,199,8,255,199,68,194,252,244,237,255,131,192, 744 65,199,71,252,252,237,65,131,199,8,255,199,68,194,252,244,237,255,131,192,
744 1,252,233,244,5,248,7,141,171,233,252,247,197,237,15,133,244,14,41,252,234, 745 1,252,233,244,5,248,7,141,171,233,252,247,197,237,15,133,244,14,41,252,234,
745 255,1,252,233,255,137,221,209,252,237,129,229,239,102,65,131,172,253,46,233, 746 255,1,252,233,255,137,221,209,252,237,129,229,239,102,65,131,172,253,46,233,
746 1,15,132,244,146,255,141,12,202,255,129,121,253,4,239,15,133,244,255,255, 747 1,15,132,244,147,255,141,12,202,255,129,121,253,4,239,15,133,244,255,255,
747 129,121,253,12,239,15,133,244,58,129,121,253,20,239,15,133,244,58,139,41, 748 129,121,253,12,239,15,133,244,59,129,121,253,20,239,15,133,244,59,139,41,
748 131,121,16,0,15,140,244,251,255,129,121,253,12,239,15,133,244,163,129,121, 749 131,121,16,0,15,140,244,251,255,129,121,253,12,239,15,133,244,164,129,121,
749 253,20,239,15,133,244,163,255,139,105,16,133,252,237,15,136,244,251,3,41, 750 253,20,239,15,133,244,164,255,139,105,16,133,252,237,15,136,244,251,3,41,
750 15,128,244,247,137,41,255,59,105,8,199,65,28,237,137,105,24,255,15,142,244, 751 15,128,244,247,137,41,255,59,105,8,199,65,28,237,137,105,24,255,15,142,244,
751 253,248,1,248,6,141,156,253,131,233,255,141,156,253,131,233,15,183,67,252, 752 253,248,1,248,6,141,156,253,131,233,255,141,156,253,131,233,15,183,67,252,
752 254,15,142,245,248,1,248,6,255,15,143,244,253,248,6,141,156,253,131,233,248, 753 254,15,142,245,248,1,248,6,255,15,143,244,253,248,6,141,156,253,131,233,248,
753 1,255,248,7,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 754 1,255,248,7,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
754 252,238,248,5,255,3,41,15,128,244,1,137,41,255,15,141,244,7,255,141,156,253, 755 252,238,248,5,255,3,41,15,128,244,1,137,41,255,15,141,244,7,255,141,156,253,
755 131,233,15,183,67,252,254,15,141,245,255,15,140,244,7,255,252,233,244,6,248, 756 131,233,15,183,67,252,254,15,141,245,255,15,140,244,7,255,252,233,244,6,248,
756 9,255,129,121,253,4,239,255,15,131,244,58,129,121,253,12,239,15,131,244,58, 757 9,255,129,121,253,4,239,255,15,131,244,59,129,121,253,12,239,15,131,244,59,
757 255,129,121,253,12,239,15,131,244,163,129,121,253,20,239,15,131,244,163,255, 758 255,129,121,253,12,239,15,131,244,164,129,121,253,20,239,15,131,244,164,255,
758 139,105,20,255,129,252,253,239,15,131,244,58,255,252,242,15,16,1,252,242, 759 139,105,20,255,129,252,253,239,15,131,244,59,255,252,242,15,16,1,252,242,
759 15,16,73,8,255,252,242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244, 760 15,16,73,8,255,252,242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244,
760 249,255,15,140,244,249,255,102,15,46,200,248,1,252,242,15,17,65,24,255,221, 761 249,255,15,140,244,249,255,102,15,46,200,248,1,252,242,15,17,65,24,255,221,
761 65,8,221,1,255,220,65,16,221,17,221,81,24,133,252,237,15,136,244,247,255, 762 65,8,221,1,255,220,65,16,221,17,221,81,24,133,252,237,15,136,244,247,255,
@@ -769,7 +770,7 @@ static const unsigned char build_actionlist[15992] = {
769 233,76,137,36,36,76,137,108,36,8,72,131,252,236,16,252,255,224,255,141,156, 770 233,76,137,36,36,76,137,108,36,8,72,131,252,236,16,252,255,224,255,141,156,
770 253,131,233,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 771 253,131,233,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
771 252,238,255,137,221,209,252,237,129,229,239,102,65,131,172,253,46,233,1,15, 772 252,238,255,137,221,209,252,237,129,229,239,102,65,131,172,253,46,233,1,15,
772 132,244,148,255,68,139,187,233,139,108,36,24,141,12,202,59,141,233,15,135, 773 132,244,149,255,68,139,187,233,139,108,36,24,141,12,202,59,141,233,15,135,
773 244,24,15,182,139,233,57,200,15,134,244,249,248,2,255,15,183,67,252,254,252, 774 244,24,15,182,139,233,57,200,15,134,244,249,248,2,255,15,183,67,252,254,252,
774 233,245,255,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,244,3,252, 775 233,245,255,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,244,3,252,
775 233,244,2,255,141,44,197,237,141,4,194,68,139,122,252,248,137,104,252,252, 776 233,244,2,255,141,44,197,237,141,4,194,68,139,122,252,248,137,104,252,252,
@@ -809,6 +810,7 @@ enum {
809 GLOB_vmeta_call, 810 GLOB_vmeta_call,
810 GLOB_vm_call_dispatch_f, 811 GLOB_vm_call_dispatch_f,
811 GLOB_vm_cpcall, 812 GLOB_vm_cpcall,
813 GLOB_vm_call_tail,
812 GLOB_cont_cat, 814 GLOB_cont_cat,
813 GLOB_cont_ra, 815 GLOB_cont_ra,
814 GLOB_BC_CAT_Z, 816 GLOB_BC_CAT_Z,
@@ -969,6 +971,7 @@ static const char *const globnames[] = {
969 "vmeta_call", 971 "vmeta_call",
970 "vm_call_dispatch_f", 972 "vm_call_dispatch_f",
971 "vm_cpcall", 973 "vm_cpcall",
974 "vm_call_tail",
972 "cont_cat", 975 "cont_cat",
973 "cont_ra", 976 "cont_ra",
974 "BC_CAT_Z", 977 "BC_CAT_Z",
@@ -1173,671 +1176,672 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1173 dasm_put(Dst, 302, 1+1, Dt1(->base), Dt1(->glref), GG_G2DISP, LJ_TFALSE, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, LUA_MINSTACK, -4+PC2PROTO(framesize), Dt1(->base)); 1176 dasm_put(Dst, 302, 1+1, Dt1(->base), Dt1(->glref), GG_G2DISP, LJ_TFALSE, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, LUA_MINSTACK, -4+PC2PROTO(framesize), Dt1(->base));
1174 dasm_put(Dst, 385, Dt1(->top), Dt1(->base), Dt1(->top), Dt7(->pc), FRAME_CP, CFRAME_RESUME, Dt1(->glref), GG_G2DISP, Dt1(->cframe), Dt1(->status), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->status), Dt1(->base), Dt1(->top), FRAME_TYPE); 1177 dasm_put(Dst, 385, Dt1(->top), Dt1(->base), Dt1(->top), Dt7(->pc), FRAME_CP, CFRAME_RESUME, Dt1(->glref), GG_G2DISP, Dt1(->cframe), Dt1(->status), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->status), Dt1(->base), Dt1(->top), FRAME_TYPE);
1175 dasm_put(Dst, 548, FRAME_CP, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base)); 1178 dasm_put(Dst, 548, FRAME_CP, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base));
1176 dasm_put(Dst, 648, Dt1(->top), LJ_TFUNC, Dt7(->pc), Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), FRAME_CP, LJ_TNIL, 0); 1179 dasm_put(Dst, 648, Dt1(->top), LJ_TFUNC, Dt7(->pc), Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), FRAME_CP, LJ_TNIL);
1177 dasm_put(Dst, 817, Dt7(->pc), PC2PROTO(k), Dt1(->base), LJ_TSTR, BC_GGET, DISPATCH_GL(tmptv), LJ_TTAB); 1180 dasm_put(Dst, 819, 0, Dt7(->pc), PC2PROTO(k), Dt1(->base), LJ_TSTR, BC_GGET, DISPATCH_GL(tmptv), LJ_TTAB);
1181 dasm_put(Dst, 944);
1178 if (LJ_DUALNUM) { 1182 if (LJ_DUALNUM) {
1179 dasm_put(Dst, 935, LJ_TISNUM); 1183 dasm_put(Dst, 958, LJ_TISNUM);
1180 } else if (sse) { 1184 } else if (sse) {
1181 dasm_put(Dst, 944); 1185 dasm_put(Dst, 967);
1182 } else { 1186 } else {
1183 } 1187 }
1184 dasm_put(Dst, 956, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, 2+1, LJ_TSTR, BC_GSET); 1188 dasm_put(Dst, 979, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, 2+1, LJ_TSTR, BC_GSET);
1185 dasm_put(Dst, 1102, DISPATCH_GL(tmptv), LJ_TTAB); 1189 dasm_put(Dst, 1125, DISPATCH_GL(tmptv), LJ_TTAB);
1186 if (LJ_DUALNUM) { 1190 if (LJ_DUALNUM) {
1187 dasm_put(Dst, 935, LJ_TISNUM); 1191 dasm_put(Dst, 958, LJ_TISNUM);
1188 } else if (sse) { 1192 } else if (sse) {
1189 dasm_put(Dst, 944); 1193 dasm_put(Dst, 967);
1190 } else { 1194 } else {
1191 } 1195 }
1192 dasm_put(Dst, 1126, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, 3+1, Dt1(->base), Dt1(->base)); 1196 dasm_put(Dst, 1149, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, 3+1, Dt1(->base), Dt1(->base));
1193 dasm_put(Dst, 1298, -BCBIAS_J*4, LJ_TISTRUECOND, LJ_TISTRUECOND, Dt1(->base)); 1197 dasm_put(Dst, 1321, -BCBIAS_J*4, LJ_TISTRUECOND, LJ_TISTRUECOND, Dt1(->base));
1194 dasm_put(Dst, 1397); 1198 dasm_put(Dst, 1420);
1195#if LJ_HASFFI 1199#if LJ_HASFFI
1196 dasm_put(Dst, 1417, Dt1(->base)); 1200 dasm_put(Dst, 1440, Dt1(->base));
1197#endif 1201#endif
1198 dasm_put(Dst, 1448); 1202 dasm_put(Dst, 1471);
1199#if LJ_DUALNUM 1203#if LJ_DUALNUM
1200 dasm_put(Dst, 1451); 1204 dasm_put(Dst, 1474);
1201#endif 1205#endif
1202 dasm_put(Dst, 1457); 1206 dasm_put(Dst, 1480);
1203#if LJ_DUALNUM 1207#if LJ_DUALNUM
1204 dasm_put(Dst, 929); 1208 dasm_put(Dst, 952);
1205#endif 1209#endif
1206 dasm_put(Dst, 1470); 1210 dasm_put(Dst, 1493);
1207#if LJ_DUALNUM 1211#if LJ_DUALNUM
1208 dasm_put(Dst, 1451); 1212 dasm_put(Dst, 1474);
1209#endif 1213#endif
1210 dasm_put(Dst, 1499, Dt1(->base), Dt1(->base), FRAME_CONT, 2+1, Dt1(->base), Dt1(->base), Dt1(->base)); 1214 dasm_put(Dst, 1522, Dt1(->base), Dt1(->base), FRAME_CONT, 2+1, Dt1(->base), Dt1(->base), Dt1(->base));
1211 dasm_put(Dst, 1631, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base), GG_DISP2STATIC, 1+1, LJ_TISTRUECOND); 1215 dasm_put(Dst, 1654, Dt1(->base), Dt7(->pc), Dt1(->base), Dt1(->base), GG_DISP2STATIC, 1+1, LJ_TISTRUECOND);
1212 dasm_put(Dst, 1815, 1+1, ~LJ_TNUMX); 1216 dasm_put(Dst, 1838, 1+1, ~LJ_TNUMX);
1213 if (cmov) { 1217 if (cmov) {
1214 dasm_put(Dst, 1860); 1218 dasm_put(Dst, 1883);
1215 } else { 1219 } else {
1216 dasm_put(Dst, 1864); 1220 dasm_put(Dst, 1887);
1217 } 1221 }
1218 dasm_put(Dst, 1873, ((char *)(&((GCfuncC *)0)->upvalue)), LJ_TSTR, ~LJ_TLIGHTUD, 1+1, LJ_TTAB, Dt6(->metatable), LJ_TNIL); 1222 dasm_put(Dst, 1896, ((char *)(&((GCfuncC *)0)->upvalue)), LJ_TSTR, ~LJ_TLIGHTUD, 1+1, LJ_TTAB, Dt6(->metatable), LJ_TNIL);
1219 dasm_put(Dst, 1952, DISPATCH_GL(gcroot)+4*(GCROOT_MMNAME+MM_metatable), LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), DtB(->next)); 1223 dasm_put(Dst, 1975, DISPATCH_GL(gcroot)+4*(GCROOT_MMNAME+MM_metatable), LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), DtB(->next));
1220 dasm_put(Dst, 2010, LJ_TNIL, LJ_TUDATA, LJ_TNUMX, LJ_TISNUM, LJ_TLIGHTUD); 1224 dasm_put(Dst, 2033, LJ_TNIL, LJ_TUDATA, LJ_TNUMX, LJ_TISNUM, LJ_TLIGHTUD);
1221 dasm_put(Dst, 2076, LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT]), 2+1, LJ_TTAB, Dt6(->metatable), LJ_TTAB, Dt6(->metatable), LJ_TTAB); 1225 dasm_put(Dst, 2099, LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT]), 2+1, LJ_TTAB, Dt6(->metatable), LJ_TTAB, Dt6(->metatable), LJ_TTAB);
1222 dasm_put(Dst, 2147, Dt6(->marked), LJ_GC_BLACK, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist), 2+1, LJ_TTAB); 1226 dasm_put(Dst, 2170, Dt6(->marked), LJ_GC_BLACK, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist), 2+1, LJ_TTAB);
1223 dasm_put(Dst, 2237, 1+1, LJ_TISNUM); 1227 dasm_put(Dst, 2260, 1+1, LJ_TISNUM);
1224 if (LJ_DUALNUM) { 1228 if (LJ_DUALNUM) {
1225 dasm_put(Dst, 2251); 1229 dasm_put(Dst, 2274);
1226 } else { 1230 } else {
1227 dasm_put(Dst, 2268); 1231 dasm_put(Dst, 2291);
1228 } 1232 }
1229 if (sse) { 1233 if (sse) {
1230 dasm_put(Dst, 2273); 1234 dasm_put(Dst, 2296);
1231 } else { 1235 } else {
1232 dasm_put(Dst, 2283); 1236 dasm_put(Dst, 2306);
1233 } 1237 }
1234 dasm_put(Dst, 2290, 1+1, LJ_TSTR, LJ_TSTR, LJ_TISNUM, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 1238 dasm_put(Dst, 2313, 1+1, LJ_TSTR, LJ_TSTR, LJ_TISNUM, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
1235 dasm_put(Dst, 2359, Dt1(->base)); 1239 dasm_put(Dst, 2382, Dt1(->base));
1236 if (LJ_DUALNUM) { 1240 if (LJ_DUALNUM) {
1237 dasm_put(Dst, 2385); 1241 dasm_put(Dst, 2408);
1238 } else { 1242 } else {
1239 dasm_put(Dst, 2390); 1243 dasm_put(Dst, 2413);
1240 } 1244 }
1241 dasm_put(Dst, 2395, Dt1(->base), 1+1, LJ_TTAB, Dt1(->base), Dt1(->top), Dt1(->base), 1+2); 1245 dasm_put(Dst, 2418, Dt1(->base), 1+1, LJ_TTAB, Dt1(->base), Dt1(->top), Dt1(->base), 1+2);
1242 dasm_put(Dst, 2487, LJ_TNIL, LJ_TNIL, 1+1, LJ_TTAB); 1246 dasm_put(Dst, 2510, LJ_TNIL, LJ_TNIL, 1+1, LJ_TTAB);
1243#ifdef LUAJIT_ENABLE_LUA52COMPAT 1247#ifdef LUAJIT_ENABLE_LUA52COMPAT
1244 dasm_put(Dst, 2534, Dt6(->metatable)); 1248 dasm_put(Dst, 2557, Dt6(->metatable));
1245#endif 1249#endif
1246 dasm_put(Dst, 2543, Dt8(->upvalue[0]), LJ_TFUNC, LJ_TNIL, 1+3, 1+1, LJ_TTAB, LJ_TISNUM); 1250 dasm_put(Dst, 2566, Dt8(->upvalue[0]), LJ_TFUNC, LJ_TNIL, 1+3, 1+1, LJ_TTAB, LJ_TISNUM);
1247 if (LJ_DUALNUM) { 1251 if (LJ_DUALNUM) {
1248 dasm_put(Dst, 2529); 1252 dasm_put(Dst, 2552);
1249 } else { 1253 } else {
1250 dasm_put(Dst, 2268); 1254 dasm_put(Dst, 2291);
1251 } 1255 }
1252 dasm_put(Dst, 2598); 1256 dasm_put(Dst, 2621);
1253 if (LJ_DUALNUM) { 1257 if (LJ_DUALNUM) {
1254 dasm_put(Dst, 2603, LJ_TISNUM); 1258 dasm_put(Dst, 2626, LJ_TISNUM);
1255 } else if (sse) { 1259 } else if (sse) {
1256 dasm_put(Dst, 2619, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1260 dasm_put(Dst, 2642, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1257 } else { 1261 } else {
1258 } 1262 }
1259 dasm_put(Dst, 2652, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->hmask), 1+0); 1263 dasm_put(Dst, 2675, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->hmask), 1+0);
1260 dasm_put(Dst, 2514, 1+1, LJ_TTAB); 1264 dasm_put(Dst, 2537, 1+1, LJ_TTAB);
1261#ifdef LUAJIT_ENABLE_LUA52COMPAT 1265#ifdef LUAJIT_ENABLE_LUA52COMPAT
1262 dasm_put(Dst, 2534, Dt6(->metatable)); 1266 dasm_put(Dst, 2557, Dt6(->metatable));
1263#endif 1267#endif
1264 dasm_put(Dst, 2729, Dt8(->upvalue[0]), LJ_TFUNC); 1268 dasm_put(Dst, 2752, Dt8(->upvalue[0]), LJ_TFUNC);
1265 if (LJ_DUALNUM) { 1269 if (LJ_DUALNUM) {
1266 dasm_put(Dst, 2750, LJ_TISNUM); 1270 dasm_put(Dst, 2773, LJ_TISNUM);
1267 } else if (sse) { 1271 } else if (sse) {
1268 dasm_put(Dst, 2762); 1272 dasm_put(Dst, 2785);
1269 } else { 1273 } else {
1270 dasm_put(Dst, 2772); 1274 dasm_put(Dst, 2795);
1271 } 1275 }
1272 dasm_put(Dst, 2779, 1+3, 1+1, 8+FRAME_PCALL, DISPATCH_GL(hookmask), HOOK_ACTIVE_SHIFT, 2+1, LJ_TFUNC); 1276 dasm_put(Dst, 2802, 1+3, 1+1, 8+FRAME_PCALL, DISPATCH_GL(hookmask), HOOK_ACTIVE_SHIFT, 2+1, LJ_TFUNC);
1273 dasm_put(Dst, 2844, LJ_TFUNC, 16+FRAME_PCALL, 1+1, LJ_TTHREAD, Dt1(->cframe), Dt1(->status), LUA_YIELD, Dt1(->top)); 1277 dasm_put(Dst, 2867, LJ_TFUNC, 16+FRAME_PCALL, 1+1, LJ_TTHREAD, Dt1(->cframe), Dt1(->status), LUA_YIELD, Dt1(->top));
1274 dasm_put(Dst, 2933, Dt1(->base), Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP); 1278 dasm_put(Dst, 2956, Dt1(->base), Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP);
1275 dasm_put(Dst, 3020, Dt1(->base), LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->maxstack), LJ_TTRUE, FRAME_TYPE); 1279 dasm_put(Dst, 3043, Dt1(->base), LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->maxstack), LJ_TTRUE, FRAME_TYPE);
1276 dasm_put(Dst, 3135, LJ_TFALSE, Dt1(->top), Dt1(->top), 1+2, Dt1(->top), Dt1(->base), Dt8(->upvalue[0].gcr), Dt1(->cframe)); 1280 dasm_put(Dst, 3158, LJ_TFALSE, Dt1(->top), Dt1(->top), 1+2, Dt1(->top), Dt1(->base), Dt8(->upvalue[0].gcr), Dt1(->cframe));
1277 dasm_put(Dst, 3230, Dt1(->status), LUA_YIELD, Dt1(->top), Dt1(->base), Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top)); 1281 dasm_put(Dst, 3253, Dt1(->status), LUA_YIELD, Dt1(->top), Dt1(->base), Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top));
1278 dasm_put(Dst, 3296, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->maxstack)); 1282 dasm_put(Dst, 3319, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->maxstack));
1279 dasm_put(Dst, 3385, FRAME_TYPE, Dt1(->top), Dt1(->base), Dt1(->cframe), CFRAME_RESUME); 1283 dasm_put(Dst, 3408, FRAME_TYPE, Dt1(->top), Dt1(->base), Dt1(->cframe), CFRAME_RESUME);
1280 dasm_put(Dst, 3495, Dt1(->base), Dt1(->top), Dt1(->cframe), LUA_YIELD, Dt1(->status)); 1284 dasm_put(Dst, 3518, Dt1(->base), Dt1(->top), Dt1(->cframe), LUA_YIELD, Dt1(->status));
1281 if (!LJ_DUALNUM) { 1285 if (!LJ_DUALNUM) {
1282 dasm_put(Dst, 3522); 1286 dasm_put(Dst, 3545);
1283 } 1287 }
1284 if (sse) { 1288 if (sse) {
1285 dasm_put(Dst, 3525); 1289 dasm_put(Dst, 3548);
1286 } 1290 }
1287 dasm_put(Dst, 3540, 1+1); 1291 dasm_put(Dst, 3563, 1+1);
1288 if (LJ_DUALNUM) { 1292 if (LJ_DUALNUM) {
1289 dasm_put(Dst, 3551, LJ_TISNUM, LJ_TISNUM); 1293 dasm_put(Dst, 3574, LJ_TISNUM, LJ_TISNUM);
1290 } else { 1294 } else {
1291 dasm_put(Dst, 3631, LJ_TISNUM); 1295 dasm_put(Dst, 3654, LJ_TISNUM);
1292 } 1296 }
1293 if (sse) { 1297 if (sse) {
1294 dasm_put(Dst, 3641, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32)); 1298 dasm_put(Dst, 3664, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32));
1295 } else { 1299 } else {
1296 dasm_put(Dst, 3672); 1300 dasm_put(Dst, 3695);
1297 } 1301 }
1298 dasm_put(Dst, 3689, 1+1, FRAME_TYPE, LJ_TNIL); 1302 dasm_put(Dst, 3712, 1+1, FRAME_TYPE, LJ_TNIL);
1299 if (LJ_DUALNUM) { 1303 if (LJ_DUALNUM) {
1300 dasm_put(Dst, 3786, LJ_TISNUM); 1304 dasm_put(Dst, 3809, LJ_TISNUM);
1301 } else { 1305 } else {
1302 dasm_put(Dst, 3631, LJ_TISNUM); 1306 dasm_put(Dst, 3654, LJ_TISNUM);
1303 } 1307 }
1304 if (sse) { 1308 if (sse) {
1305 dasm_put(Dst, 3808); 1309 dasm_put(Dst, 3831);
1306 if (LJ_DUALNUM) { 1310 if (LJ_DUALNUM) {
1307 dasm_put(Dst, 3817); 1311 dasm_put(Dst, 3840);
1308 } 1312 }
1309 dasm_put(Dst, 2278); 1313 dasm_put(Dst, 2301);
1310 } else { 1314 } else {
1311 dasm_put(Dst, 3851); 1315 dasm_put(Dst, 3874);
1312 if (LJ_DUALNUM) { 1316 if (LJ_DUALNUM) {
1313 } else { 1317 } else {
1314 dasm_put(Dst, 2285); 1318 dasm_put(Dst, 2308);
1315 } 1319 }
1316 } 1320 }
1317 dasm_put(Dst, 3857); 1321 dasm_put(Dst, 3880);
1318 if (LJ_DUALNUM) { 1322 if (LJ_DUALNUM) {
1319 dasm_put(Dst, 3786, LJ_TISNUM); 1323 dasm_put(Dst, 3809, LJ_TISNUM);
1320 } else { 1324 } else {
1321 dasm_put(Dst, 3631, LJ_TISNUM); 1325 dasm_put(Dst, 3654, LJ_TISNUM);
1322 } 1326 }
1323 if (sse) { 1327 if (sse) {
1324 dasm_put(Dst, 3860); 1328 dasm_put(Dst, 3883);
1325 if (LJ_DUALNUM) { 1329 if (LJ_DUALNUM) {
1326 dasm_put(Dst, 3817); 1330 dasm_put(Dst, 3840);
1327 } 1331 }
1328 dasm_put(Dst, 2278); 1332 dasm_put(Dst, 2301);
1329 } else { 1333 } else {
1330 dasm_put(Dst, 3869); 1334 dasm_put(Dst, 3892);
1331 if (LJ_DUALNUM) { 1335 if (LJ_DUALNUM) {
1332 } else { 1336 } else {
1333 dasm_put(Dst, 2285); 1337 dasm_put(Dst, 2308);
1334 } 1338 }
1335 } 1339 }
1336 if (sse) { 1340 if (sse) {
1337 dasm_put(Dst, 3875, 1+1, LJ_TISNUM); 1341 dasm_put(Dst, 3898, 1+1, LJ_TISNUM);
1338 } else { 1342 } else {
1339 dasm_put(Dst, 3904, 1+1, LJ_TISNUM); 1343 dasm_put(Dst, 3927, 1+1, LJ_TISNUM);
1340 } 1344 }
1341 dasm_put(Dst, 3933, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1); 1345 dasm_put(Dst, 3956, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1);
1342 dasm_put(Dst, 4002, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1); 1346 dasm_put(Dst, 4025, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1);
1343 dasm_put(Dst, 4059, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1); 1347 dasm_put(Dst, 4082, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1);
1344 dasm_put(Dst, 4122, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM); 1348 dasm_put(Dst, 4145, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM);
1345 dasm_put(Dst, 4212); 1349 dasm_put(Dst, 4235);
1346 if (sse) { 1350 if (sse) {
1347 dasm_put(Dst, 4224, 1+1, LJ_TISNUM); 1351 dasm_put(Dst, 4247, 1+1, LJ_TISNUM);
1348 } else { 1352 } else {
1349 } 1353 }
1350 dasm_put(Dst, 4249); 1354 dasm_put(Dst, 4272);
1351 if (sse) { 1355 if (sse) {
1352 dasm_put(Dst, 4263, 1+1, LJ_TISNUM); 1356 dasm_put(Dst, 4286, 1+1, LJ_TISNUM);
1353 } else { 1357 } else {
1354 } 1358 }
1355 dasm_put(Dst, 4288); 1359 dasm_put(Dst, 4311);
1356 if (sse) { 1360 if (sse) {
1357 dasm_put(Dst, 4302, 1+1, LJ_TISNUM); 1361 dasm_put(Dst, 4325, 1+1, LJ_TISNUM);
1358 } else { 1362 } else {
1359 } 1363 }
1360 dasm_put(Dst, 4327); 1364 dasm_put(Dst, 4350);
1361 if (sse) { 1365 if (sse) {
1362 dasm_put(Dst, 4343, 1+1, LJ_TISNUM, Dt8(->upvalue[0])); 1366 dasm_put(Dst, 4366, 1+1, LJ_TISNUM, Dt8(->upvalue[0]));
1363 } else { 1367 } else {
1364 dasm_put(Dst, 4382, 1+1, LJ_TISNUM, Dt8(->upvalue[0])); 1368 dasm_put(Dst, 4405, 1+1, LJ_TISNUM, Dt8(->upvalue[0]));
1365 } 1369 }
1366 dasm_put(Dst, 4415, 2+1, LJ_TISNUM, LJ_TISNUM, 2+1, LJ_TISNUM, LJ_TISNUM); 1370 dasm_put(Dst, 4438, 2+1, LJ_TISNUM, LJ_TISNUM, 2+1, LJ_TISNUM, LJ_TISNUM);
1367 dasm_put(Dst, 4480, 1+1, LJ_TISNUM); 1371 dasm_put(Dst, 4503, 1+1, LJ_TISNUM);
1368 if (sse) { 1372 if (sse) {
1369 dasm_put(Dst, 4579); 1373 dasm_put(Dst, 4602);
1370 } else { 1374 } else {
1371 dasm_put(Dst, 4585); 1375 dasm_put(Dst, 4608);
1372 } 1376 }
1373 dasm_put(Dst, 4592); 1377 dasm_put(Dst, 4615);
1374 if (sse) { 1378 if (sse) {
1375 dasm_put(Dst, 4617); 1379 dasm_put(Dst, 4640);
1376 } else { 1380 } else {
1377 dasm_put(Dst, 4623); 1381 dasm_put(Dst, 4646);
1378 } 1382 }
1379 dasm_put(Dst, 4626, 1+2); 1383 dasm_put(Dst, 4649, 1+2);
1380 if (sse) { 1384 if (sse) {
1381 dasm_put(Dst, 4635); 1385 dasm_put(Dst, 4658);
1382 } else { 1386 } else {
1383 dasm_put(Dst, 4643); 1387 dasm_put(Dst, 4666);
1384 } 1388 }
1385 dasm_put(Dst, 4651); 1389 dasm_put(Dst, 4674);
1386 if (sse) { 1390 if (sse) {
1387 dasm_put(Dst, 4654, (unsigned int)(U64x(43500000,00000000)), (unsigned int)((U64x(43500000,00000000))>>32)); 1391 dasm_put(Dst, 4677, (unsigned int)(U64x(43500000,00000000)), (unsigned int)((U64x(43500000,00000000))>>32));
1388 } else { 1392 } else {
1389 dasm_put(Dst, 4681); 1393 dasm_put(Dst, 4704);
1390 } 1394 }
1391 dasm_put(Dst, 4698); 1395 dasm_put(Dst, 4721);
1392 if (sse) { 1396 if (sse) {
1393 dasm_put(Dst, 4714, 1+1, LJ_TISNUM); 1397 dasm_put(Dst, 4737, 1+1, LJ_TISNUM);
1394 } else { 1398 } else {
1395 dasm_put(Dst, 4739, 1+1, LJ_TISNUM); 1399 dasm_put(Dst, 4762, 1+1, LJ_TISNUM);
1396 } 1400 }
1397 dasm_put(Dst, 4761); 1401 dasm_put(Dst, 4784);
1398 if (sse) { 1402 if (sse) {
1399 dasm_put(Dst, 4783); 1403 dasm_put(Dst, 4806);
1400 } else { 1404 } else {
1401 dasm_put(Dst, 4809); 1405 dasm_put(Dst, 4832);
1402 } 1406 }
1403 dasm_put(Dst, 4826, 1+2); 1407 dasm_put(Dst, 4849, 1+2);
1404 if (sse) { 1408 if (sse) {
1405 dasm_put(Dst, 4866); 1409 dasm_put(Dst, 4889);
1406 } else { 1410 } else {
1407 dasm_put(Dst, 4874); 1411 dasm_put(Dst, 4897);
1408 } 1412 }
1409 dasm_put(Dst, 4884, 2+1, LJ_TISNUM, LJ_TISNUM); 1413 dasm_put(Dst, 4907, 2+1, LJ_TISNUM, LJ_TISNUM);
1410 if (sse) { 1414 if (sse) {
1411 dasm_put(Dst, 4936, 2+1, LJ_TISNUM, LJ_TISNUM); 1415 dasm_put(Dst, 4959, 2+1, LJ_TISNUM, LJ_TISNUM);
1412 } else { 1416 } else {
1413 dasm_put(Dst, 4983, 2+1, LJ_TISNUM, LJ_TISNUM); 1417 dasm_put(Dst, 5006, 2+1, LJ_TISNUM, LJ_TISNUM);
1414 } 1418 }
1415 dasm_put(Dst, 5024, LJ_TISNUM); 1419 dasm_put(Dst, 5047, LJ_TISNUM);
1416 if (LJ_DUALNUM) { 1420 if (LJ_DUALNUM) {
1417 dasm_put(Dst, 5037, LJ_TISNUM); 1421 dasm_put(Dst, 5060, LJ_TISNUM);
1418 if (sse) { 1422 if (sse) {
1419 dasm_put(Dst, 4579); 1423 dasm_put(Dst, 4602);
1420 } else { 1424 } else {
1421 } 1425 }
1422 dasm_put(Dst, 5087); 1426 dasm_put(Dst, 5110);
1423 } else { 1427 } else {
1424 dasm_put(Dst, 2268); 1428 dasm_put(Dst, 2291);
1425 } 1429 }
1426 if (sse) { 1430 if (sse) {
1427 dasm_put(Dst, 5098, LJ_TISNUM); 1431 dasm_put(Dst, 5121, LJ_TISNUM);
1428 if (LJ_DUALNUM) { 1432 if (LJ_DUALNUM) {
1429 dasm_put(Dst, 5119); 1433 dasm_put(Dst, 5142);
1430 } else { 1434 } else {
1431 dasm_put(Dst, 2268); 1435 dasm_put(Dst, 2291);
1432 } 1436 }
1433 dasm_put(Dst, 5140); 1437 dasm_put(Dst, 5163);
1434 } else { 1438 } else {
1435 } 1439 }
1436 dasm_put(Dst, 5165, LJ_TISNUM); 1440 dasm_put(Dst, 5188, LJ_TISNUM);
1437 if (LJ_DUALNUM) { 1441 if (LJ_DUALNUM) {
1438 dasm_put(Dst, 5178, LJ_TISNUM); 1442 dasm_put(Dst, 5201, LJ_TISNUM);
1439 if (sse) { 1443 if (sse) {
1440 dasm_put(Dst, 4579); 1444 dasm_put(Dst, 4602);
1441 } else { 1445 } else {
1442 } 1446 }
1443 dasm_put(Dst, 5087); 1447 dasm_put(Dst, 5110);
1444 } else { 1448 } else {
1445 dasm_put(Dst, 2268); 1449 dasm_put(Dst, 2291);
1446 } 1450 }
1447 if (sse) { 1451 if (sse) {
1448 dasm_put(Dst, 5098, LJ_TISNUM); 1452 dasm_put(Dst, 5121, LJ_TISNUM);
1449 if (LJ_DUALNUM) { 1453 if (LJ_DUALNUM) {
1450 dasm_put(Dst, 5119); 1454 dasm_put(Dst, 5142);
1451 } else { 1455 } else {
1452 dasm_put(Dst, 2268); 1456 dasm_put(Dst, 2291);
1453 } 1457 }
1454 dasm_put(Dst, 5228); 1458 dasm_put(Dst, 5251);
1455 } else { 1459 } else {
1456 } 1460 }
1457 if (!sse) { 1461 if (!sse) {
1458 dasm_put(Dst, 5253); 1462 dasm_put(Dst, 5276);
1459 } 1463 }
1460 dasm_put(Dst, 5262, 1+1, LJ_TSTR); 1464 dasm_put(Dst, 5285, 1+1, LJ_TSTR);
1461 if (LJ_DUALNUM) { 1465 if (LJ_DUALNUM) {
1462 dasm_put(Dst, 5284, Dt5(->len)); 1466 dasm_put(Dst, 5307, Dt5(->len));
1463 } else if (sse) { 1467 } else if (sse) {
1464 dasm_put(Dst, 5292, Dt5(->len)); 1468 dasm_put(Dst, 5315, Dt5(->len));
1465 } else { 1469 } else {
1466 dasm_put(Dst, 5303, Dt5(->len)); 1470 dasm_put(Dst, 5326, Dt5(->len));
1467 } 1471 }
1468 dasm_put(Dst, 5311, 1+1, LJ_TSTR, Dt5(->len), Dt5([1])); 1472 dasm_put(Dst, 5334, 1+1, LJ_TSTR, Dt5(->len), Dt5([1]));
1469 if (LJ_DUALNUM) { 1473 if (LJ_DUALNUM) {
1470 dasm_put(Dst, 5287); 1474 dasm_put(Dst, 5310);
1471 } else if (sse) { 1475 } else if (sse) {
1472 dasm_put(Dst, 5349); 1476 dasm_put(Dst, 5372);
1473 } else { 1477 } else {
1474 dasm_put(Dst, 5359); 1478 dasm_put(Dst, 5382);
1475 } 1479 }
1476 dasm_put(Dst, 5370, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+1, LJ_TISNUM); 1480 dasm_put(Dst, 5393, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+1, LJ_TISNUM);
1477 if (LJ_DUALNUM) { 1481 if (LJ_DUALNUM) {
1478 dasm_put(Dst, 5403);
1479 } else if (sse) {
1480 dasm_put(Dst, 5426); 1482 dasm_put(Dst, 5426);
1483 } else if (sse) {
1484 dasm_put(Dst, 5449);
1481 } else { 1485 } else {
1482 dasm_put(Dst, 5452); 1486 dasm_put(Dst, 5475);
1483 } 1487 }
1484 dasm_put(Dst, 5476, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+2, LJ_TISNUM); 1488 dasm_put(Dst, 5499, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+2, LJ_TISNUM);
1485 if (LJ_DUALNUM) { 1489 if (LJ_DUALNUM) {
1486 dasm_put(Dst, 5585); 1490 dasm_put(Dst, 5608);
1487 } else if (sse) { 1491 } else if (sse) {
1488 dasm_put(Dst, 5597); 1492 dasm_put(Dst, 5620);
1489 } else { 1493 } else {
1490 dasm_put(Dst, 5612); 1494 dasm_put(Dst, 5635);
1491 } 1495 }
1492 dasm_put(Dst, 5624, LJ_TSTR, LJ_TISNUM); 1496 dasm_put(Dst, 5647, LJ_TSTR, LJ_TISNUM);
1493 if (LJ_DUALNUM) { 1497 if (LJ_DUALNUM) {
1494 dasm_put(Dst, 2529); 1498 dasm_put(Dst, 2552);
1495 } else { 1499 } else {
1496 dasm_put(Dst, 2268); 1500 dasm_put(Dst, 2291);
1497 } 1501 }
1498 dasm_put(Dst, 5641, Dt5(->len)); 1502 dasm_put(Dst, 5664, Dt5(->len));
1499 if (LJ_DUALNUM) { 1503 if (LJ_DUALNUM) {
1500 dasm_put(Dst, 5651); 1504 dasm_put(Dst, 5674);
1501 } else if (sse) { 1505 } else if (sse) {
1502 dasm_put(Dst, 5655); 1506 dasm_put(Dst, 5678);
1503 } else { 1507 } else {
1504 } 1508 }
1505 dasm_put(Dst, 5662, sizeof(GCstr)-1); 1509 dasm_put(Dst, 5685, sizeof(GCstr)-1);
1506 dasm_put(Dst, 5737, 2+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 1510 dasm_put(Dst, 5760, 2+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
1507 dasm_put(Dst, 5798, LJ_TSTR, LJ_TISNUM); 1511 dasm_put(Dst, 5821, LJ_TSTR, LJ_TISNUM);
1508 if (LJ_DUALNUM) { 1512 if (LJ_DUALNUM) {
1509 dasm_put(Dst, 5815); 1513 dasm_put(Dst, 5838);
1510 } else if (sse) { 1514 } else if (sse) {
1511 dasm_put(Dst, 5823); 1515 dasm_put(Dst, 5846);
1512 } else { 1516 } else {
1513 dasm_put(Dst, 5834); 1517 dasm_put(Dst, 5857);
1514 } 1518 }
1515 dasm_put(Dst, 5850, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(tmpbuf.buf), 1+1); 1519 dasm_put(Dst, 5873, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(tmpbuf.buf), 1+1);
1516 dasm_put(Dst, 5918, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 1520 dasm_put(Dst, 5941, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
1517 dasm_put(Dst, 5985, 1+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz)); 1521 dasm_put(Dst, 6008, 1+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz));
1518 dasm_put(Dst, 6058, sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), 1+1); 1522 dasm_put(Dst, 6081, sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), 1+1);
1519 dasm_put(Dst, 6143, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 1523 dasm_put(Dst, 6166, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
1520 dasm_put(Dst, 6217, 1+1, LJ_TTAB); 1524 dasm_put(Dst, 6240, 1+1, LJ_TTAB);
1521 if (LJ_DUALNUM) { 1525 if (LJ_DUALNUM) {
1522 dasm_put(Dst, 6284); 1526 dasm_put(Dst, 6307);
1523 } else if (sse) { 1527 } else if (sse) {
1524 dasm_put(Dst, 6291); 1528 dasm_put(Dst, 6314);
1525 } else { 1529 } else {
1526 } 1530 }
1527 dasm_put(Dst, 6301, LJ_TISNUM); 1531 dasm_put(Dst, 6324, LJ_TISNUM);
1528 if (LJ_DUALNUM) { 1532 if (LJ_DUALNUM) {
1529 dasm_put(Dst, 6309); 1533 dasm_put(Dst, 6332);
1530 } else { 1534 } else {
1531 dasm_put(Dst, 2268); 1535 dasm_put(Dst, 2291);
1532 } 1536 }
1533 if (sse) { 1537 if (sse) {
1534 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1538 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1535 } else { 1539 } else {
1536 } 1540 }
1537 dasm_put(Dst, 106); 1541 dasm_put(Dst, 106);
1538 if (LJ_DUALNUM || sse) { 1542 if (LJ_DUALNUM || sse) {
1539 if (!sse) { 1543 if (!sse) {
1540 } 1544 }
1541 dasm_put(Dst, 6350); 1545 dasm_put(Dst, 6373);
1542 } else { 1546 } else {
1543 } 1547 }
1544 dasm_put(Dst, 6355); 1548 dasm_put(Dst, 6378);
1545 if (sse) { 1549 if (sse) {
1546 dasm_put(Dst, 6358, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1550 dasm_put(Dst, 6381, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1547 } else { 1551 } else {
1548 dasm_put(Dst, 6368); 1552 dasm_put(Dst, 6391);
1549 } 1553 }
1550 dasm_put(Dst, 2245, LJ_TISNUM); 1554 dasm_put(Dst, 2268, LJ_TISNUM);
1551 if (LJ_DUALNUM) { 1555 if (LJ_DUALNUM) {
1552 dasm_put(Dst, 6376); 1556 dasm_put(Dst, 6399);
1553 } else { 1557 } else {
1554 dasm_put(Dst, 2268); 1558 dasm_put(Dst, 2291);
1555 } 1559 }
1556 if (sse) { 1560 if (sse) {
1557 dasm_put(Dst, 6393); 1561 dasm_put(Dst, 6416);
1558 } else { 1562 } else {
1559 } 1563 }
1560 dasm_put(Dst, 6408, LJ_TISNUM); 1564 dasm_put(Dst, 6431, LJ_TISNUM);
1561 if (LJ_DUALNUM) { 1565 if (LJ_DUALNUM) {
1562 dasm_put(Dst, 6433); 1566 dasm_put(Dst, 6456);
1563 } else { 1567 } else {
1564 dasm_put(Dst, 6453); 1568 dasm_put(Dst, 6476);
1565 } 1569 }
1566 if (sse) { 1570 if (sse) {
1567 dasm_put(Dst, 6458); 1571 dasm_put(Dst, 6481);
1568 } else { 1572 } else {
1569 } 1573 }
1570 dasm_put(Dst, 6475); 1574 dasm_put(Dst, 6498);
1571 if (sse) { 1575 if (sse) {
1572 dasm_put(Dst, 6358, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1576 dasm_put(Dst, 6381, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1573 } else { 1577 } else {
1574 dasm_put(Dst, 6368); 1578 dasm_put(Dst, 6391);
1575 } 1579 }
1576 dasm_put(Dst, 2245, LJ_TISNUM); 1580 dasm_put(Dst, 2268, LJ_TISNUM);
1577 if (LJ_DUALNUM) { 1581 if (LJ_DUALNUM) {
1578 dasm_put(Dst, 6376); 1582 dasm_put(Dst, 6399);
1579 } else { 1583 } else {
1580 dasm_put(Dst, 2268); 1584 dasm_put(Dst, 2291);
1581 } 1585 }
1582 if (sse) { 1586 if (sse) {
1583 dasm_put(Dst, 6393); 1587 dasm_put(Dst, 6416);
1584 } else { 1588 } else {
1585 } 1589 }
1586 dasm_put(Dst, 6408, LJ_TISNUM); 1590 dasm_put(Dst, 6431, LJ_TISNUM);
1587 if (LJ_DUALNUM) { 1591 if (LJ_DUALNUM) {
1588 dasm_put(Dst, 6485); 1592 dasm_put(Dst, 6508);
1589 } else { 1593 } else {
1590 dasm_put(Dst, 6453); 1594 dasm_put(Dst, 6476);
1591 } 1595 }
1592 if (sse) { 1596 if (sse) {
1593 dasm_put(Dst, 6505); 1597 dasm_put(Dst, 6528);
1594 } else { 1598 } else {
1595 } 1599 }
1596 dasm_put(Dst, 6522); 1600 dasm_put(Dst, 6545);
1597 if (sse) { 1601 if (sse) {
1598 dasm_put(Dst, 6358, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1602 dasm_put(Dst, 6381, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1599 } else { 1603 } else {
1600 dasm_put(Dst, 6368); 1604 dasm_put(Dst, 6391);
1601 } 1605 }
1602 dasm_put(Dst, 2245, LJ_TISNUM); 1606 dasm_put(Dst, 2268, LJ_TISNUM);
1603 if (LJ_DUALNUM) { 1607 if (LJ_DUALNUM) {
1604 dasm_put(Dst, 6376); 1608 dasm_put(Dst, 6399);
1605 } else { 1609 } else {
1606 dasm_put(Dst, 2268); 1610 dasm_put(Dst, 2291);
1607 } 1611 }
1608 if (sse) { 1612 if (sse) {
1609 dasm_put(Dst, 6393); 1613 dasm_put(Dst, 6416);
1610 } else { 1614 } else {
1611 } 1615 }
1612 dasm_put(Dst, 6408, LJ_TISNUM); 1616 dasm_put(Dst, 6431, LJ_TISNUM);
1613 if (LJ_DUALNUM) { 1617 if (LJ_DUALNUM) {
1614 dasm_put(Dst, 6532); 1618 dasm_put(Dst, 6555);
1615 } else { 1619 } else {
1616 dasm_put(Dst, 6453); 1620 dasm_put(Dst, 6476);
1617 } 1621 }
1618 if (sse) { 1622 if (sse) {
1619 dasm_put(Dst, 6552); 1623 dasm_put(Dst, 6575);
1620 } else { 1624 } else {
1621 } 1625 }
1622 dasm_put(Dst, 6569, LJ_TISNUM); 1626 dasm_put(Dst, 6592, LJ_TISNUM);
1623 if (LJ_DUALNUM) { 1627 if (LJ_DUALNUM) {
1624 dasm_put(Dst, 6376); 1628 dasm_put(Dst, 6399);
1625 } else { 1629 } else {
1626 dasm_put(Dst, 2268); 1630 dasm_put(Dst, 2291);
1627 } 1631 }
1628 if (sse) { 1632 if (sse) {
1629 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1633 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1630 } else { 1634 } else {
1631 } 1635 }
1632 dasm_put(Dst, 6584, LJ_TISNUM); 1636 dasm_put(Dst, 6607, LJ_TISNUM);
1633 if (LJ_DUALNUM) { 1637 if (LJ_DUALNUM) {
1634 dasm_put(Dst, 6376); 1638 dasm_put(Dst, 6399);
1635 } else { 1639 } else {
1636 dasm_put(Dst, 2268); 1640 dasm_put(Dst, 2291);
1637 } 1641 }
1638 if (sse) { 1642 if (sse) {
1639 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1643 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1640 } else { 1644 } else {
1641 } 1645 }
1642 dasm_put(Dst, 6600); 1646 dasm_put(Dst, 6623);
1643 if (LJ_DUALNUM) { 1647 if (LJ_DUALNUM) {
1644 dasm_put(Dst, 6350); 1648 dasm_put(Dst, 6373);
1645 } else if (sse) { 1649 } else if (sse) {
1646 dasm_put(Dst, 6606); 1650 dasm_put(Dst, 6629);
1647 } else { 1651 } else {
1648 } 1652 }
1649 dasm_put(Dst, 6618); 1653 dasm_put(Dst, 6641);
1650 if (LJ_DUALNUM) { 1654 if (LJ_DUALNUM) {
1651 dasm_put(Dst, 6629, LJ_TISNUM); 1655 dasm_put(Dst, 6652, LJ_TISNUM);
1652 if (LJ_DUALNUM) { 1656 if (LJ_DUALNUM) {
1653 dasm_put(Dst, 6376); 1657 dasm_put(Dst, 6399);
1654 } else { 1658 } else {
1655 dasm_put(Dst, 2268); 1659 dasm_put(Dst, 2291);
1656 } 1660 }
1657 if (sse) { 1661 if (sse) {
1658 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1662 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1659 } else { 1663 } else {
1660 } 1664 }
1661 dasm_put(Dst, 6637, LJ_TISNUM); 1665 dasm_put(Dst, 6660, LJ_TISNUM);
1662 } else if (sse) { 1666 } else if (sse) {
1663 dasm_put(Dst, 6652, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1667 dasm_put(Dst, 6675, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1664 } else { 1668 } else {
1665 } 1669 }
1666 dasm_put(Dst, 6719); 1670 dasm_put(Dst, 6742);
1667 if (LJ_DUALNUM) { 1671 if (LJ_DUALNUM) {
1668 dasm_put(Dst, 6726, LJ_TISNUM); 1672 dasm_put(Dst, 6749, LJ_TISNUM);
1669 if (LJ_DUALNUM) { 1673 if (LJ_DUALNUM) {
1670 dasm_put(Dst, 6376); 1674 dasm_put(Dst, 6399);
1671 } else { 1675 } else {
1672 dasm_put(Dst, 2268); 1676 dasm_put(Dst, 2291);
1673 } 1677 }
1674 if (sse) { 1678 if (sse) {
1675 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1679 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1676 } else { 1680 } else {
1677 } 1681 }
1678 dasm_put(Dst, 6637, LJ_TISNUM); 1682 dasm_put(Dst, 6660, LJ_TISNUM);
1679 } else if (sse) { 1683 } else if (sse) {
1680 dasm_put(Dst, 6734, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1684 dasm_put(Dst, 6757, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1681 } else { 1685 } else {
1682 } 1686 }
1683 dasm_put(Dst, 6801); 1687 dasm_put(Dst, 6824);
1684 if (LJ_DUALNUM) { 1688 if (LJ_DUALNUM) {
1685 dasm_put(Dst, 6809, LJ_TISNUM); 1689 dasm_put(Dst, 6832, LJ_TISNUM);
1686 if (LJ_DUALNUM) { 1690 if (LJ_DUALNUM) {
1687 dasm_put(Dst, 6376); 1691 dasm_put(Dst, 6399);
1688 } else { 1692 } else {
1689 dasm_put(Dst, 2268); 1693 dasm_put(Dst, 2291);
1690 } 1694 }
1691 if (sse) { 1695 if (sse) {
1692 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1696 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1693 } else { 1697 } else {
1694 } 1698 }
1695 dasm_put(Dst, 6637, LJ_TISNUM); 1699 dasm_put(Dst, 6660, LJ_TISNUM);
1696 } else if (sse) { 1700 } else if (sse) {
1697 dasm_put(Dst, 6817, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1701 dasm_put(Dst, 6840, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1698 } else { 1702 } else {
1699 } 1703 }
1700 dasm_put(Dst, 6884); 1704 dasm_put(Dst, 6907);
1701 if (LJ_DUALNUM) { 1705 if (LJ_DUALNUM) {
1702 dasm_put(Dst, 6892, LJ_TISNUM); 1706 dasm_put(Dst, 6915, LJ_TISNUM);
1703 if (LJ_DUALNUM) { 1707 if (LJ_DUALNUM) {
1704 dasm_put(Dst, 6376); 1708 dasm_put(Dst, 6399);
1705 } else { 1709 } else {
1706 dasm_put(Dst, 2268); 1710 dasm_put(Dst, 2291);
1707 } 1711 }
1708 if (sse) { 1712 if (sse) {
1709 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1713 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1710 } else { 1714 } else {
1711 } 1715 }
1712 dasm_put(Dst, 6637, LJ_TISNUM); 1716 dasm_put(Dst, 6660, LJ_TISNUM);
1713 } else if (sse) { 1717 } else if (sse) {
1714 dasm_put(Dst, 6900, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1718 dasm_put(Dst, 6923, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1715 } else { 1719 } else {
1716 } 1720 }
1717 dasm_put(Dst, 6967); 1721 dasm_put(Dst, 6990);
1718 if (LJ_DUALNUM) { 1722 if (LJ_DUALNUM) {
1719 dasm_put(Dst, 6974, LJ_TISNUM); 1723 dasm_put(Dst, 6997, LJ_TISNUM);
1720 if (LJ_DUALNUM) { 1724 if (LJ_DUALNUM) {
1721 dasm_put(Dst, 6376); 1725 dasm_put(Dst, 6399);
1722 } else { 1726 } else {
1723 dasm_put(Dst, 2268); 1727 dasm_put(Dst, 2291);
1724 } 1728 }
1725 if (sse) { 1729 if (sse) {
1726 dasm_put(Dst, 6326, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1730 dasm_put(Dst, 6349, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1727 } else { 1731 } else {
1728 } 1732 }
1729 dasm_put(Dst, 6637, LJ_TISNUM); 1733 dasm_put(Dst, 6660, LJ_TISNUM);
1730 } else if (sse) { 1734 } else if (sse) {
1731 dasm_put(Dst, 6982, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1735 dasm_put(Dst, 7005, 2+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1732 } else { 1736 } else {
1733 } 1737 }
1734 dasm_put(Dst, 7049, 1+2, 1+1, Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), Dt8(->f), Dt1(->base)); 1738 dasm_put(Dst, 7072, 1+2, 1+1, Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), Dt8(->f), Dt1(->base));
1735 dasm_put(Dst, 7125, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base)); 1739 dasm_put(Dst, 7148, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base));
1736 dasm_put(Dst, 7252, Dt1(->top), Dt1(->base), Dt1(->top)); 1740 dasm_put(Dst, 7275, Dt1(->top), Dt1(->base), Dt1(->top));
1737#if LJ_HASJIT 1741#if LJ_HASJIT
1738 dasm_put(Dst, 7291, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount)); 1742 dasm_put(Dst, 7314, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount));
1739#endif 1743#endif
1740 dasm_put(Dst, 7324, DISPATCH_GL(hookmask), HOOK_ACTIVE, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE); 1744 dasm_put(Dst, 7347, DISPATCH_GL(hookmask), HOOK_ACTIVE, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE);
1741 dasm_put(Dst, 7378, Dt1(->base), Dt1(->base), GG_DISP2STATIC); 1745 dasm_put(Dst, 7401, Dt1(->base), Dt1(->base), GG_DISP2STATIC);
1742#if LJ_HASJIT 1746#if LJ_HASJIT
1743 dasm_put(Dst, 7445, Dt7(->pc), PC2PROTO(framesize), Dt1(->base), Dt1(->top), GG_DISP2J, DISPATCH_J(L)); 1747 dasm_put(Dst, 7468, Dt7(->pc), PC2PROTO(framesize), Dt1(->base), Dt1(->top), GG_DISP2J, DISPATCH_J(L));
1744#endif 1748#endif
1745 dasm_put(Dst, 7492); 1749 dasm_put(Dst, 7515);
1746#if LJ_HASJIT 1750#if LJ_HASJIT
1747 dasm_put(Dst, 7319); 1751 dasm_put(Dst, 7342);
1748#endif 1752#endif
1749 dasm_put(Dst, 7499); 1753 dasm_put(Dst, 7522);
1750#if LJ_HASJIT 1754#if LJ_HASJIT
1751 dasm_put(Dst, 7502); 1755 dasm_put(Dst, 7525);
1752#endif 1756#endif
1753 dasm_put(Dst, 7512, Dt1(->base), Dt1(->top)); 1757 dasm_put(Dst, 7535, Dt1(->base), Dt1(->top));
1754#if LJ_HASJIT 1758#if LJ_HASJIT
1755 dasm_put(Dst, 7545); 1759 dasm_put(Dst, 7568);
1756#endif 1760#endif
1757 dasm_put(Dst, 7550, Dt1(->base), Dt1(->top)); 1761 dasm_put(Dst, 7573, Dt1(->base), Dt1(->top));
1758#if LJ_HASJIT 1762#if LJ_HASJIT
1759 dasm_put(Dst, 7581, DISPATCH_GL(vmstate), DISPATCH_GL(vmstate), ~LJ_VMST_EXIT, DISPATCH_J(exitno), DISPATCH_J(parent), 16*8, DISPATCH_GL(jit_L), DISPATCH_GL(jit_base), DISPATCH_J(L), DISPATCH_GL(jit_L), Dt1(->base), GG_DISP2J, Dt1(->cframe), CFRAME_RAWMASK, CFRAME_OFS_L, Dt1(->base), CFRAME_OFS_PC); 1763 dasm_put(Dst, 7604, DISPATCH_GL(vmstate), DISPATCH_GL(vmstate), ~LJ_VMST_EXIT, DISPATCH_J(exitno), DISPATCH_J(parent), 16*8, DISPATCH_GL(jit_L), DISPATCH_GL(jit_base), DISPATCH_J(L), DISPATCH_GL(jit_L), Dt1(->base), GG_DISP2J, Dt1(->cframe), CFRAME_RAWMASK, CFRAME_OFS_L, Dt1(->base), CFRAME_OFS_PC);
1760#endif 1764#endif
1761 dasm_put(Dst, 7820); 1765 dasm_put(Dst, 7843);
1762#if LJ_HASJIT 1766#if LJ_HASJIT
1763 dasm_put(Dst, 7823, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, BC_FUNCF); 1767 dasm_put(Dst, 7846, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, BC_FUNCF);
1764#endif 1768#endif
1765 dasm_put(Dst, 7923); 1769 dasm_put(Dst, 7946);
1766 if (!sse) { 1770 if (!sse) {
1767 dasm_put(Dst, 7926); 1771 dasm_put(Dst, 7949);
1768 } 1772 }
1769 dasm_put(Dst, 7971, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1773 dasm_put(Dst, 7994, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1770 if (!sse) { 1774 if (!sse) {
1771 dasm_put(Dst, 8057); 1775 dasm_put(Dst, 8080);
1772 } 1776 }
1773 dasm_put(Dst, 8102, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(bff00000,00000000)), (unsigned int)((U64x(bff00000,00000000))>>32)); 1777 dasm_put(Dst, 8125, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(bff00000,00000000)), (unsigned int)((U64x(bff00000,00000000))>>32));
1774 if (!sse) { 1778 if (!sse) {
1775 dasm_put(Dst, 8188); 1779 dasm_put(Dst, 8211);
1776 } 1780 }
1777 dasm_put(Dst, 8227, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1781 dasm_put(Dst, 8250, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1778 if (sse) { 1782 if (sse) {
1779 dasm_put(Dst, 8316, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1783 dasm_put(Dst, 8339, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(43300000,00000000)), (unsigned int)((U64x(43300000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1780 } else { 1784 } else {
1781 dasm_put(Dst, 8430); 1785 dasm_put(Dst, 8453);
1782 } 1786 }
1783 dasm_put(Dst, 8477); 1787 dasm_put(Dst, 8500);
1784 if (!sse) { 1788 if (!sse) {
1785 } else { 1789 } else {
1786 dasm_put(Dst, 8554); 1790 dasm_put(Dst, 8577);
1787 } 1791 }
1788 dasm_put(Dst, 8557); 1792 dasm_put(Dst, 8580);
1789 dasm_put(Dst, 8642, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1793 dasm_put(Dst, 8665, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1790 dasm_put(Dst, 8745, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(7ff00000,00000000)), (unsigned int)((U64x(7ff00000,00000000))>>32)); 1794 dasm_put(Dst, 8768, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(7ff00000,00000000)), (unsigned int)((U64x(7ff00000,00000000))>>32));
1791 dasm_put(Dst, 8907); 1795 dasm_put(Dst, 8930);
1792#if LJ_HASJIT 1796#if LJ_HASJIT
1793 if (sse) { 1797 if (sse) {
1794 dasm_put(Dst, 8948); 1798 dasm_put(Dst, 8971);
1795 dasm_put(Dst, 9018); 1799 dasm_put(Dst, 9041);
1796 dasm_put(Dst, 9090); 1800 dasm_put(Dst, 9113);
1797 } else { 1801 } else {
1798 dasm_put(Dst, 9142); 1802 dasm_put(Dst, 9165);
1799 dasm_put(Dst, 9234); 1803 dasm_put(Dst, 9257);
1800 } 1804 }
1801 dasm_put(Dst, 9280); 1805 dasm_put(Dst, 9303);
1802#endif 1806#endif
1803 dasm_put(Dst, 9284); 1807 dasm_put(Dst, 9307);
1804 if (sse) { 1808 if (sse) {
1805 dasm_put(Dst, 9287, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1809 dasm_put(Dst, 9310, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1806 dasm_put(Dst, 9372, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32)); 1810 dasm_put(Dst, 9395, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32));
1807 } else { 1811 } else {
1808 dasm_put(Dst, 9500); 1812 dasm_put(Dst, 9523);
1809 dasm_put(Dst, 9583); 1813 dasm_put(Dst, 9606);
1810 if (cmov) { 1814 if (cmov) {
1811 dasm_put(Dst, 9638); 1815 dasm_put(Dst, 9661);
1812 } else { 1816 } else {
1813 dasm_put(Dst, 9657); 1817 dasm_put(Dst, 9680);
1814 } 1818 }
1815 dasm_put(Dst, 9280); 1819 dasm_put(Dst, 9303);
1816 } 1820 }
1817 dasm_put(Dst, 9698); 1821 dasm_put(Dst, 9721);
1818#if LJ_HASFFI 1822#if LJ_HASFFI
1819#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V) 1823#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V)
1820 dasm_put(Dst, 9722, DtE(->spadj)); 1824 dasm_put(Dst, 9745, DtE(->spadj));
1821#if LJ_TARGET_WINDOWS 1825#if LJ_TARGET_WINDOWS
1822#endif 1826#endif
1823 dasm_put(Dst, 9738, DtE(->nsp), offsetof(CCallState, stack), CCALL_SPS_EXTRA*8, DtE(->nfpr), DtE(->gpr[0]), DtE(->gpr[1]), DtE(->gpr[2]), DtE(->gpr[3]), DtE(->gpr[4]), DtE(->gpr[5]), DtE(->fpr[0]), DtE(->fpr[1])); 1827 dasm_put(Dst, 9761, DtE(->nsp), offsetof(CCallState, stack), CCALL_SPS_EXTRA*8, DtE(->nfpr), DtE(->gpr[0]), DtE(->gpr[1]), DtE(->gpr[2]), DtE(->gpr[3]), DtE(->gpr[4]), DtE(->gpr[5]), DtE(->fpr[0]), DtE(->fpr[1]));
1824 dasm_put(Dst, 9817, DtE(->fpr[2]), DtE(->fpr[3]), DtE(->fpr[4]), DtE(->fpr[5]), DtE(->fpr[6]), DtE(->fpr[7]), DtE(->func), DtE(->gpr[0]), DtE(->fpr[0]), DtE(->gpr[1]), DtE(->fpr[1])); 1828 dasm_put(Dst, 9840, DtE(->fpr[2]), DtE(->fpr[3]), DtE(->fpr[4]), DtE(->fpr[5]), DtE(->fpr[6]), DtE(->fpr[7]), DtE(->func), DtE(->gpr[0]), DtE(->fpr[0]), DtE(->gpr[1]), DtE(->fpr[1]));
1825#if LJ_TARGET_WINDOWS 1829#if LJ_TARGET_WINDOWS
1826#endif 1830#endif
1827 dasm_put(Dst, 9872); 1831 dasm_put(Dst, 9895);
1828#endif 1832#endif
1829 dasm_put(Dst, 9880); 1833 dasm_put(Dst, 9903);
1830#ifdef LUA_USE_ASSERT 1834#ifdef LUA_USE_ASSERT
1831 dasm_put(Dst, 9282); 1835 dasm_put(Dst, 9305);
1832#endif 1836#endif
1833 dasm_put(Dst, 9282); 1837 dasm_put(Dst, 9305);
1834} 1838}
1835 1839
1836/* Generate the code for a single instruction. */ 1840/* Generate the code for a single instruction. */
1837static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) 1841static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1838{ 1842{
1839 int vk = 0; 1843 int vk = 0;
1840 dasm_put(Dst, 9883, defop); 1844 dasm_put(Dst, 9906, defop);
1841 1845
1842 switch (op) { 1846 switch (op) {
1843 1847
@@ -1848,296 +1852,296 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1848 1852
1849 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 1853 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
1850 if (LJ_DUALNUM) { 1854 if (LJ_DUALNUM) {
1851 dasm_put(Dst, 9885, LJ_TISNUM, LJ_TISNUM); 1855 dasm_put(Dst, 9908, LJ_TISNUM, LJ_TISNUM);
1852 switch (op) { 1856 switch (op) {
1853 case BC_ISLT: 1857 case BC_ISLT:
1854 dasm_put(Dst, 9915); 1858 dasm_put(Dst, 9938);
1855 break; 1859 break;
1856 case BC_ISGE: 1860 case BC_ISGE:
1857 dasm_put(Dst, 9920); 1861 dasm_put(Dst, 9943);
1858 break; 1862 break;
1859 case BC_ISLE: 1863 case BC_ISLE:
1860 dasm_put(Dst, 9925); 1864 dasm_put(Dst, 9948);
1861 break; 1865 break;
1862 case BC_ISGT: 1866 case BC_ISGT:
1863 dasm_put(Dst, 9930); 1867 dasm_put(Dst, 9953);
1864 break; 1868 break;
1865 default: break; /* Shut up GCC. */ 1869 default: break; /* Shut up GCC. */
1866 } 1870 }
1867 dasm_put(Dst, 9935, -BCBIAS_J*4, LJ_TISNUM); 1871 dasm_put(Dst, 9958, -BCBIAS_J*4, LJ_TISNUM);
1868 if (sse) { 1872 if (sse) {
1869 dasm_put(Dst, 9990); 1873 dasm_put(Dst, 10013);
1870 } else { 1874 } else {
1871 dasm_put(Dst, 10001); 1875 dasm_put(Dst, 10024);
1872 } 1876 }
1873 dasm_put(Dst, 10012); 1877 dasm_put(Dst, 10035);
1874 if (sse) { 1878 if (sse) {
1875 dasm_put(Dst, 10019); 1879 dasm_put(Dst, 10042);
1876 switch (op) { 1880 switch (op) {
1877 case BC_ISLT: 1881 case BC_ISLT:
1878 dasm_put(Dst, 10039); 1882 dasm_put(Dst, 10062);
1879 break; 1883 break;
1880 case BC_ISGE: 1884 case BC_ISGE:
1881 dasm_put(Dst, 10044); 1885 dasm_put(Dst, 10067);
1882 break; 1886 break;
1883 case BC_ISLE: 1887 case BC_ISLE:
1884 dasm_put(Dst, 10049); 1888 dasm_put(Dst, 10072);
1885 break; 1889 break;
1886 case BC_ISGT: 1890 case BC_ISGT:
1887 dasm_put(Dst, 10054); 1891 dasm_put(Dst, 10077);
1888 break; 1892 break;
1889 default: break; /* Shut up GCC. */ 1893 default: break; /* Shut up GCC. */
1890 } 1894 }
1891 dasm_put(Dst, 10059); 1895 dasm_put(Dst, 10082);
1892 } else { 1896 } else {
1893 dasm_put(Dst, 10064); 1897 dasm_put(Dst, 10087);
1894 } 1898 }
1895 } else { 1899 } else {
1896 dasm_put(Dst, 10072, LJ_TISNUM, LJ_TISNUM); 1900 dasm_put(Dst, 10095, LJ_TISNUM, LJ_TISNUM);
1897 } 1901 }
1898 if (sse) { 1902 if (sse) {
1899 dasm_put(Dst, 10093); 1903 dasm_put(Dst, 10116);
1900 } else { 1904 } else {
1901 dasm_put(Dst, 10114); 1905 dasm_put(Dst, 10137);
1902 if (cmov) { 1906 if (cmov) {
1903 dasm_put(Dst, 10130); 1907 dasm_put(Dst, 10153);
1904 } else { 1908 } else {
1905 dasm_put(Dst, 10136); 1909 dasm_put(Dst, 10159);
1906 } 1910 }
1907 } 1911 }
1908 if (LJ_DUALNUM) { 1912 if (LJ_DUALNUM) {
1909 switch (op) { 1913 switch (op) {
1910 case BC_ISLT: 1914 case BC_ISLT:
1911 dasm_put(Dst, 10039); 1915 dasm_put(Dst, 10062);
1912 break; 1916 break;
1913 case BC_ISGE: 1917 case BC_ISGE:
1914 dasm_put(Dst, 10044); 1918 dasm_put(Dst, 10067);
1915 break; 1919 break;
1916 case BC_ISLE: 1920 case BC_ISLE:
1917 dasm_put(Dst, 10049); 1921 dasm_put(Dst, 10072);
1918 break; 1922 break;
1919 case BC_ISGT: 1923 case BC_ISGT:
1920 dasm_put(Dst, 10054); 1924 dasm_put(Dst, 10077);
1921 break; 1925 break;
1922 default: break; /* Shut up GCC. */ 1926 default: break; /* Shut up GCC. */
1923 } 1927 }
1924 dasm_put(Dst, 10059); 1928 dasm_put(Dst, 10082);
1925 } else { 1929 } else {
1926 switch (op) { 1930 switch (op) {
1927 case BC_ISLT: 1931 case BC_ISLT:
1928 dasm_put(Dst, 10143); 1932 dasm_put(Dst, 10166);
1929 break; 1933 break;
1930 case BC_ISGE: 1934 case BC_ISGE:
1931 dasm_put(Dst, 10148); 1935 dasm_put(Dst, 10171);
1932 break; 1936 break;
1933 case BC_ISLE: 1937 case BC_ISLE:
1934 dasm_put(Dst, 10153); 1938 dasm_put(Dst, 10176);
1935 break; 1939 break;
1936 case BC_ISGT: 1940 case BC_ISGT:
1937 dasm_put(Dst, 10158); 1941 dasm_put(Dst, 10181);
1938 break; 1942 break;
1939 default: break; /* Shut up GCC. */ 1943 default: break; /* Shut up GCC. */
1940 } 1944 }
1941 dasm_put(Dst, 10163, -BCBIAS_J*4); 1945 dasm_put(Dst, 10186, -BCBIAS_J*4);
1942 } 1946 }
1943 break; 1947 break;
1944 1948
1945 case BC_ISEQV: case BC_ISNEV: 1949 case BC_ISEQV: case BC_ISNEV:
1946 vk = op == BC_ISEQV; 1950 vk = op == BC_ISEQV;
1947 dasm_put(Dst, 10196); 1951 dasm_put(Dst, 10219);
1948 if (LJ_DUALNUM) { 1952 if (LJ_DUALNUM) {
1949 dasm_put(Dst, 10204, LJ_TISNUM, LJ_TISNUM); 1953 dasm_put(Dst, 10227, LJ_TISNUM, LJ_TISNUM);
1950 if (vk) { 1954 if (vk) {
1951 dasm_put(Dst, 10229); 1955 dasm_put(Dst, 10252);
1952 } else { 1956 } else {
1953 dasm_put(Dst, 10234); 1957 dasm_put(Dst, 10257);
1954 } 1958 }
1955 dasm_put(Dst, 10239, -BCBIAS_J*4, LJ_TISNUM); 1959 dasm_put(Dst, 10262, -BCBIAS_J*4, LJ_TISNUM);
1956 if (sse) { 1960 if (sse) {
1957 dasm_put(Dst, 10292); 1961 dasm_put(Dst, 10315);
1958 } else { 1962 } else {
1959 dasm_put(Dst, 10299); 1963 dasm_put(Dst, 10322);
1960 } 1964 }
1961 dasm_put(Dst, 10303); 1965 dasm_put(Dst, 10326);
1962 if (sse) { 1966 if (sse) {
1963 dasm_put(Dst, 10314); 1967 dasm_put(Dst, 10337);
1964 } else { 1968 } else {
1965 dasm_put(Dst, 10326); 1969 dasm_put(Dst, 10349);
1966 } 1970 }
1967 dasm_put(Dst, 10333); 1971 dasm_put(Dst, 10356);
1968 } else { 1972 } else {
1969 dasm_put(Dst, 10338, LJ_TISNUM, LJ_TISNUM); 1973 dasm_put(Dst, 10361, LJ_TISNUM, LJ_TISNUM);
1970 } 1974 }
1971 if (sse) { 1975 if (sse) {
1972 dasm_put(Dst, 10357); 1976 dasm_put(Dst, 10380);
1973 } else { 1977 } else {
1974 dasm_put(Dst, 10375); 1978 dasm_put(Dst, 10398);
1975 if (cmov) { 1979 if (cmov) {
1976 dasm_put(Dst, 10130); 1980 dasm_put(Dst, 10153);
1977 } else { 1981 } else {
1978 dasm_put(Dst, 10136); 1982 dasm_put(Dst, 10159);
1979 } 1983 }
1980 } 1984 }
1981 iseqne_fp: 1985 iseqne_fp:
1982 if (vk) { 1986 if (vk) {
1983 dasm_put(Dst, 10388); 1987 dasm_put(Dst, 10411);
1984 } else { 1988 } else {
1985 dasm_put(Dst, 10397); 1989 dasm_put(Dst, 10420);
1986 } 1990 }
1987 iseqne_end: 1991 iseqne_end:
1988 if (vk) { 1992 if (vk) {
1989 dasm_put(Dst, 10406, -BCBIAS_J*4); 1993 dasm_put(Dst, 10429, -BCBIAS_J*4);
1990 if (!LJ_HASFFI) { 1994 if (!LJ_HASFFI) {
1991 dasm_put(Dst, 4632); 1995 dasm_put(Dst, 4655);
1992 } 1996 }
1993 } else { 1997 } else {
1994 if (!LJ_HASFFI) { 1998 if (!LJ_HASFFI) {
1995 dasm_put(Dst, 4632); 1999 dasm_put(Dst, 4655);
1996 } 2000 }
1997 dasm_put(Dst, 10421, -BCBIAS_J*4); 2001 dasm_put(Dst, 10444, -BCBIAS_J*4);
1998 } 2002 }
1999 if (LJ_DUALNUM && (op == BC_ISEQV || op == BC_ISNEV || 2003 if (LJ_DUALNUM && (op == BC_ISEQV || op == BC_ISNEV ||
2000 op == BC_ISEQN || op == BC_ISNEN)) { 2004 op == BC_ISEQN || op == BC_ISNEN)) {
2001 dasm_put(Dst, 10436); 2005 dasm_put(Dst, 10459);
2002 } else { 2006 } else {
2003 dasm_put(Dst, 10175); 2007 dasm_put(Dst, 10198);
2004 } 2008 }
2005 if (op == BC_ISEQV || op == BC_ISNEV) { 2009 if (op == BC_ISEQV || op == BC_ISNEV) {
2006 dasm_put(Dst, 10441); 2010 dasm_put(Dst, 10464);
2007 if (LJ_HASFFI) { 2011 if (LJ_HASFFI) {
2008 dasm_put(Dst, 10444, LJ_TCDATA, LJ_TCDATA); 2012 dasm_put(Dst, 10467, LJ_TCDATA, LJ_TCDATA);
2009 } 2013 }
2010 dasm_put(Dst, 10463, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq); 2014 dasm_put(Dst, 10486, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq);
2011 if (vk) { 2015 if (vk) {
2012 dasm_put(Dst, 10519); 2016 dasm_put(Dst, 10542);
2013 } else { 2017 } else {
2014 dasm_put(Dst, 10523); 2018 dasm_put(Dst, 10546);
2015 } 2019 }
2016 dasm_put(Dst, 10529); 2020 dasm_put(Dst, 10552);
2017 } else if (LJ_HASFFI) { 2021 } else if (LJ_HASFFI) {
2018 dasm_put(Dst, 10534, LJ_TCDATA); 2022 dasm_put(Dst, 10557, LJ_TCDATA);
2019 if (LJ_DUALNUM && vk) { 2023 if (LJ_DUALNUM && vk) {
2020 dasm_put(Dst, 10541); 2024 dasm_put(Dst, 10564);
2021 } else { 2025 } else {
2022 dasm_put(Dst, 10514); 2026 dasm_put(Dst, 10537);
2023 } 2027 }
2024 dasm_put(Dst, 10546); 2028 dasm_put(Dst, 10569);
2025 } 2029 }
2026 break; 2030 break;
2027 case BC_ISEQS: case BC_ISNES: 2031 case BC_ISEQS: case BC_ISNES:
2028 vk = op == BC_ISEQS; 2032 vk = op == BC_ISEQS;
2029 dasm_put(Dst, 10551, LJ_TSTR); 2033 dasm_put(Dst, 10574, LJ_TSTR);
2030 iseqne_test: 2034 iseqne_test:
2031 if (vk) { 2035 if (vk) {
2032 dasm_put(Dst, 10392); 2036 dasm_put(Dst, 10415);
2033 } else { 2037 } else {
2034 dasm_put(Dst, 2928); 2038 dasm_put(Dst, 814);
2035 } 2039 }
2036 goto iseqne_end; 2040 goto iseqne_end;
2037 case BC_ISEQN: case BC_ISNEN: 2041 case BC_ISEQN: case BC_ISNEN:
2038 vk = op == BC_ISEQN; 2042 vk = op == BC_ISEQN;
2039 dasm_put(Dst, 10578); 2043 dasm_put(Dst, 10601);
2040 if (LJ_DUALNUM) { 2044 if (LJ_DUALNUM) {
2041 dasm_put(Dst, 10586, LJ_TISNUM, LJ_TISNUM); 2045 dasm_put(Dst, 10609, LJ_TISNUM, LJ_TISNUM);
2042 if (vk) { 2046 if (vk) {
2043 dasm_put(Dst, 10229); 2047 dasm_put(Dst, 10252);
2044 } else { 2048 } else {
2045 dasm_put(Dst, 10234); 2049 dasm_put(Dst, 10257);
2046 } 2050 }
2047 dasm_put(Dst, 10613, -BCBIAS_J*4, LJ_TISNUM); 2051 dasm_put(Dst, 10636, -BCBIAS_J*4, LJ_TISNUM);
2048 if (sse) { 2052 if (sse) {
2049 dasm_put(Dst, 10663); 2053 dasm_put(Dst, 10686);
2050 } else { 2054 } else {
2051 dasm_put(Dst, 10671); 2055 dasm_put(Dst, 10694);
2052 } 2056 }
2053 dasm_put(Dst, 10676); 2057 dasm_put(Dst, 10699);
2054 if (sse) { 2058 if (sse) {
2055 dasm_put(Dst, 10683); 2059 dasm_put(Dst, 10706);
2056 } else { 2060 } else {
2057 dasm_put(Dst, 10696); 2061 dasm_put(Dst, 10719);
2058 } 2062 }
2059 dasm_put(Dst, 10333); 2063 dasm_put(Dst, 10356);
2060 } else { 2064 } else {
2061 dasm_put(Dst, 10704, LJ_TISNUM); 2065 dasm_put(Dst, 10727, LJ_TISNUM);
2062 } 2066 }
2063 if (sse) { 2067 if (sse) {
2064 dasm_put(Dst, 10713); 2068 dasm_put(Dst, 10736);
2065 } else { 2069 } else {
2066 dasm_put(Dst, 10732); 2070 dasm_put(Dst, 10755);
2067 if (cmov) { 2071 if (cmov) {
2068 dasm_put(Dst, 10130); 2072 dasm_put(Dst, 10153);
2069 } else { 2073 } else {
2070 dasm_put(Dst, 10136); 2074 dasm_put(Dst, 10159);
2071 } 2075 }
2072 } 2076 }
2073 goto iseqne_fp; 2077 goto iseqne_fp;
2074 case BC_ISEQP: case BC_ISNEP: 2078 case BC_ISEQP: case BC_ISNEP:
2075 vk = op == BC_ISEQP; 2079 vk = op == BC_ISEQP;
2076 dasm_put(Dst, 10746); 2080 dasm_put(Dst, 10769);
2077 if (!LJ_HASFFI) goto iseqne_test; 2081 if (!LJ_HASFFI) goto iseqne_test;
2078 if (vk) { 2082 if (vk) {
2079 dasm_put(Dst, 10760, -BCBIAS_J*4, LJ_TCDATA); 2083 dasm_put(Dst, 10783, -BCBIAS_J*4, LJ_TCDATA);
2080 } else { 2084 } else {
2081 dasm_put(Dst, 10811, LJ_TCDATA, -BCBIAS_J*4); 2085 dasm_put(Dst, 10834, LJ_TCDATA, -BCBIAS_J*4);
2082 } 2086 }
2083 break; 2087 break;
2084 2088
2085 /* -- Unary test and copy ops ------------------------------------------- */ 2089 /* -- Unary test and copy ops ------------------------------------------- */
2086 2090
2087 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 2091 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
2088 dasm_put(Dst, 10856, LJ_TISTRUECOND); 2092 dasm_put(Dst, 10879, LJ_TISTRUECOND);
2089 if (op == BC_IST || op == BC_ISTC) { 2093 if (op == BC_IST || op == BC_ISTC) {
2090 dasm_put(Dst, 10158); 2094 dasm_put(Dst, 10181);
2091 } else { 2095 } else {
2092 dasm_put(Dst, 10153); 2096 dasm_put(Dst, 10176);
2093 } 2097 }
2094 if (op == BC_ISTC || op == BC_ISFC) { 2098 if (op == BC_ISTC || op == BC_ISFC) {
2095 dasm_put(Dst, 10868); 2099 dasm_put(Dst, 10891);
2096 } 2100 }
2097 dasm_put(Dst, 10163, -BCBIAS_J*4); 2101 dasm_put(Dst, 10186, -BCBIAS_J*4);
2098 break; 2102 break;
2099 2103
2100 /* -- Unary ops --------------------------------------------------------- */ 2104 /* -- Unary ops --------------------------------------------------------- */
2101 2105
2102 case BC_MOV: 2106 case BC_MOV:
2103 dasm_put(Dst, 10879); 2107 dasm_put(Dst, 10902);
2104 break; 2108 break;
2105 case BC_NOT: 2109 case BC_NOT:
2106 dasm_put(Dst, 10908, LJ_TISTRUECOND, LJ_TTRUE); 2110 dasm_put(Dst, 10931, LJ_TISTRUECOND, LJ_TTRUE);
2107 break; 2111 break;
2108 case BC_UNM: 2112 case BC_UNM:
2109 if (LJ_DUALNUM) { 2113 if (LJ_DUALNUM) {
2110 dasm_put(Dst, 10945, LJ_TISNUM, LJ_TISNUM); 2114 dasm_put(Dst, 10968, LJ_TISNUM, LJ_TISNUM);
2111 } else { 2115 } else {
2112 dasm_put(Dst, 11023, LJ_TISNUM); 2116 dasm_put(Dst, 11046, LJ_TISNUM);
2113 } 2117 }
2114 if (sse) { 2118 if (sse) {
2115 dasm_put(Dst, 11034, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 2119 dasm_put(Dst, 11057, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
2116 } else { 2120 } else {
2117 dasm_put(Dst, 11059); 2121 dasm_put(Dst, 11082);
2118 } 2122 }
2119 if (LJ_DUALNUM) { 2123 if (LJ_DUALNUM) {
2120 dasm_put(Dst, 10436); 2124 dasm_put(Dst, 10459);
2121 } else { 2125 } else {
2122 dasm_put(Dst, 10175); 2126 dasm_put(Dst, 10198);
2123 } 2127 }
2124 break; 2128 break;
2125 case BC_LEN: 2129 case BC_LEN:
2126 dasm_put(Dst, 11068, LJ_TSTR); 2130 dasm_put(Dst, 11091, LJ_TSTR);
2127 if (LJ_DUALNUM) { 2131 if (LJ_DUALNUM) {
2128 dasm_put(Dst, 11082, Dt5(->len), LJ_TISNUM); 2132 dasm_put(Dst, 11105, Dt5(->len), LJ_TISNUM);
2129 } else if (sse) { 2133 } else if (sse) {
2130 dasm_put(Dst, 11096, Dt5(->len)); 2134 dasm_put(Dst, 11119, Dt5(->len));
2131 } else { 2135 } else {
2132 dasm_put(Dst, 11114, Dt5(->len)); 2136 dasm_put(Dst, 11137, Dt5(->len));
2133 } 2137 }
2134 dasm_put(Dst, 11123, LJ_TTAB); 2138 dasm_put(Dst, 11146, LJ_TTAB);
2135 if (LJ_DUALNUM) { 2139 if (LJ_DUALNUM) {
2136 } else if (sse) { 2140 } else if (sse) {
2137 dasm_put(Dst, 11165); 2141 dasm_put(Dst, 11188);
2138 } else { 2142 } else {
2139 } 2143 }
2140 dasm_put(Dst, 11171); 2144 dasm_put(Dst, 11194);
2141 break; 2145 break;
2142 2146
2143 /* -- Binary ops -------------------------------------------------------- */ 2147 /* -- Binary ops -------------------------------------------------------- */
@@ -2145,605 +2149,605 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2145 2149
2146 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: 2150 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV:
2147 if (LJ_DUALNUM) { 2151 if (LJ_DUALNUM) {
2148 dasm_put(Dst, 11184); 2152 dasm_put(Dst, 11207);
2149 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2153 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2150 switch (vk) { 2154 switch (vk) {
2151 case 0: 2155 case 0:
2152 dasm_put(Dst, 11192, LJ_TISNUM, LJ_TISNUM); 2156 dasm_put(Dst, 11215, LJ_TISNUM, LJ_TISNUM);
2153 break; 2157 break;
2154 case 1: 2158 case 1:
2155 dasm_put(Dst, 11227, LJ_TISNUM, LJ_TISNUM); 2159 dasm_put(Dst, 11250, LJ_TISNUM, LJ_TISNUM);
2156 break; 2160 break;
2157 default: 2161 default:
2158 dasm_put(Dst, 11262, LJ_TISNUM, LJ_TISNUM); 2162 dasm_put(Dst, 11285, LJ_TISNUM, LJ_TISNUM);
2159 break; 2163 break;
2160 } 2164 }
2161 dasm_put(Dst, 11295, LJ_TISNUM); 2165 dasm_put(Dst, 11318, LJ_TISNUM);
2162 if (vk == 1) { 2166 if (vk == 1) {
2163 dasm_put(Dst, 11092); 2167 dasm_put(Dst, 11115);
2164 } else { 2168 } else {
2165 dasm_put(Dst, 10875); 2169 dasm_put(Dst, 10898);
2166 } 2170 }
2167 dasm_put(Dst, 10175); 2171 dasm_put(Dst, 10198);
2168 } else { 2172 } else {
2169 dasm_put(Dst, 11184); 2173 dasm_put(Dst, 11207);
2170 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2174 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2171 switch (vk) { 2175 switch (vk) {
2172 case 0: 2176 case 0:
2173 dasm_put(Dst, 11301, LJ_TISNUM); 2177 dasm_put(Dst, 11324, LJ_TISNUM);
2174 if (LJ_DUALNUM) { 2178 if (LJ_DUALNUM) {
2175 dasm_put(Dst, 11313, LJ_TISNUM); 2179 dasm_put(Dst, 11336, LJ_TISNUM);
2176 } 2180 }
2177 if (sse) { 2181 if (sse) {
2178 dasm_put(Dst, 11325); 2182 dasm_put(Dst, 11348);
2179 } else { 2183 } else {
2180 dasm_put(Dst, 11340); 2184 dasm_put(Dst, 11363);
2181 } 2185 }
2182 break; 2186 break;
2183 case 1: 2187 case 1:
2184 dasm_put(Dst, 11349, LJ_TISNUM); 2188 dasm_put(Dst, 11372, LJ_TISNUM);
2185 if (LJ_DUALNUM) { 2189 if (LJ_DUALNUM) {
2186 dasm_put(Dst, 11361, LJ_TISNUM); 2190 dasm_put(Dst, 11384, LJ_TISNUM);
2187 } 2191 }
2188 if (sse) { 2192 if (sse) {
2189 dasm_put(Dst, 11373); 2193 dasm_put(Dst, 11396);
2190 } else { 2194 } else {
2191 dasm_put(Dst, 11388); 2195 dasm_put(Dst, 11411);
2192 } 2196 }
2193 break; 2197 break;
2194 default: 2198 default:
2195 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2199 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2196 if (sse) { 2200 if (sse) {
2197 dasm_put(Dst, 11419); 2201 dasm_put(Dst, 11442);
2198 } else { 2202 } else {
2199 dasm_put(Dst, 11433); 2203 dasm_put(Dst, 11456);
2200 } 2204 }
2201 break; 2205 break;
2202 } 2206 }
2203 if (sse) { 2207 if (sse) {
2204 dasm_put(Dst, 11052); 2208 dasm_put(Dst, 11075);
2205 } else { 2209 } else {
2206 dasm_put(Dst, 11064); 2210 dasm_put(Dst, 11087);
2207 } 2211 }
2208 dasm_put(Dst, 10175); 2212 dasm_put(Dst, 10198);
2209 } 2213 }
2210 break; 2214 break;
2211 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 2215 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
2212 if (LJ_DUALNUM) { 2216 if (LJ_DUALNUM) {
2213 dasm_put(Dst, 11184); 2217 dasm_put(Dst, 11207);
2214 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2218 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2215 switch (vk) { 2219 switch (vk) {
2216 case 0: 2220 case 0:
2217 dasm_put(Dst, 11441, LJ_TISNUM, LJ_TISNUM); 2221 dasm_put(Dst, 11464, LJ_TISNUM, LJ_TISNUM);
2218 break; 2222 break;
2219 case 1: 2223 case 1:
2220 dasm_put(Dst, 11476, LJ_TISNUM, LJ_TISNUM); 2224 dasm_put(Dst, 11499, LJ_TISNUM, LJ_TISNUM);
2221 break; 2225 break;
2222 default: 2226 default:
2223 dasm_put(Dst, 11511, LJ_TISNUM, LJ_TISNUM); 2227 dasm_put(Dst, 11534, LJ_TISNUM, LJ_TISNUM);
2224 break; 2228 break;
2225 } 2229 }
2226 dasm_put(Dst, 11295, LJ_TISNUM); 2230 dasm_put(Dst, 11318, LJ_TISNUM);
2227 if (vk == 1) { 2231 if (vk == 1) {
2228 dasm_put(Dst, 11092); 2232 dasm_put(Dst, 11115);
2229 } else { 2233 } else {
2230 dasm_put(Dst, 10875); 2234 dasm_put(Dst, 10898);
2231 } 2235 }
2232 dasm_put(Dst, 10175); 2236 dasm_put(Dst, 10198);
2233 } else { 2237 } else {
2234 dasm_put(Dst, 11184); 2238 dasm_put(Dst, 11207);
2235 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2239 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2236 switch (vk) { 2240 switch (vk) {
2237 case 0: 2241 case 0:
2238 dasm_put(Dst, 11301, LJ_TISNUM); 2242 dasm_put(Dst, 11324, LJ_TISNUM);
2239 if (LJ_DUALNUM) { 2243 if (LJ_DUALNUM) {
2240 dasm_put(Dst, 11313, LJ_TISNUM); 2244 dasm_put(Dst, 11336, LJ_TISNUM);
2241 } 2245 }
2242 if (sse) { 2246 if (sse) {
2243 dasm_put(Dst, 11544); 2247 dasm_put(Dst, 11567);
2244 } else { 2248 } else {
2245 dasm_put(Dst, 11559); 2249 dasm_put(Dst, 11582);
2246 } 2250 }
2247 break; 2251 break;
2248 case 1: 2252 case 1:
2249 dasm_put(Dst, 11349, LJ_TISNUM); 2253 dasm_put(Dst, 11372, LJ_TISNUM);
2250 if (LJ_DUALNUM) { 2254 if (LJ_DUALNUM) {
2251 dasm_put(Dst, 11361, LJ_TISNUM); 2255 dasm_put(Dst, 11384, LJ_TISNUM);
2252 } 2256 }
2253 if (sse) { 2257 if (sse) {
2254 dasm_put(Dst, 11568); 2258 dasm_put(Dst, 11591);
2255 } else { 2259 } else {
2256 dasm_put(Dst, 11583); 2260 dasm_put(Dst, 11606);
2257 } 2261 }
2258 break; 2262 break;
2259 default: 2263 default:
2260 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2264 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2261 if (sse) { 2265 if (sse) {
2262 dasm_put(Dst, 11592); 2266 dasm_put(Dst, 11615);
2263 } else { 2267 } else {
2264 dasm_put(Dst, 11606); 2268 dasm_put(Dst, 11629);
2265 } 2269 }
2266 break; 2270 break;
2267 } 2271 }
2268 if (sse) { 2272 if (sse) {
2269 dasm_put(Dst, 11052); 2273 dasm_put(Dst, 11075);
2270 } else { 2274 } else {
2271 dasm_put(Dst, 11064); 2275 dasm_put(Dst, 11087);
2272 } 2276 }
2273 dasm_put(Dst, 10175); 2277 dasm_put(Dst, 10198);
2274 } 2278 }
2275 break; 2279 break;
2276 case BC_MULVN: case BC_MULNV: case BC_MULVV: 2280 case BC_MULVN: case BC_MULNV: case BC_MULVV:
2277 if (LJ_DUALNUM) { 2281 if (LJ_DUALNUM) {
2278 dasm_put(Dst, 11184); 2282 dasm_put(Dst, 11207);
2279 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2283 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2280 switch (vk) { 2284 switch (vk) {
2281 case 0: 2285 case 0:
2282 dasm_put(Dst, 11614, LJ_TISNUM, LJ_TISNUM); 2286 dasm_put(Dst, 11637, LJ_TISNUM, LJ_TISNUM);
2283 break; 2287 break;
2284 case 1: 2288 case 1:
2285 dasm_put(Dst, 11650, LJ_TISNUM, LJ_TISNUM); 2289 dasm_put(Dst, 11673, LJ_TISNUM, LJ_TISNUM);
2286 break; 2290 break;
2287 default: 2291 default:
2288 dasm_put(Dst, 11686, LJ_TISNUM, LJ_TISNUM); 2292 dasm_put(Dst, 11709, LJ_TISNUM, LJ_TISNUM);
2289 break; 2293 break;
2290 } 2294 }
2291 dasm_put(Dst, 11295, LJ_TISNUM); 2295 dasm_put(Dst, 11318, LJ_TISNUM);
2292 if (vk == 1) { 2296 if (vk == 1) {
2293 dasm_put(Dst, 11092); 2297 dasm_put(Dst, 11115);
2294 } else { 2298 } else {
2295 dasm_put(Dst, 10875); 2299 dasm_put(Dst, 10898);
2296 } 2300 }
2297 dasm_put(Dst, 10175); 2301 dasm_put(Dst, 10198);
2298 } else { 2302 } else {
2299 dasm_put(Dst, 11184); 2303 dasm_put(Dst, 11207);
2300 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2304 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2301 switch (vk) { 2305 switch (vk) {
2302 case 0: 2306 case 0:
2303 dasm_put(Dst, 11301, LJ_TISNUM); 2307 dasm_put(Dst, 11324, LJ_TISNUM);
2304 if (LJ_DUALNUM) { 2308 if (LJ_DUALNUM) {
2305 dasm_put(Dst, 11313, LJ_TISNUM); 2309 dasm_put(Dst, 11336, LJ_TISNUM);
2306 } 2310 }
2307 if (sse) { 2311 if (sse) {
2308 dasm_put(Dst, 11720); 2312 dasm_put(Dst, 11743);
2309 } else { 2313 } else {
2310 dasm_put(Dst, 11735); 2314 dasm_put(Dst, 11758);
2311 } 2315 }
2312 break; 2316 break;
2313 case 1: 2317 case 1:
2314 dasm_put(Dst, 11349, LJ_TISNUM); 2318 dasm_put(Dst, 11372, LJ_TISNUM);
2315 if (LJ_DUALNUM) { 2319 if (LJ_DUALNUM) {
2316 dasm_put(Dst, 11361, LJ_TISNUM); 2320 dasm_put(Dst, 11384, LJ_TISNUM);
2317 } 2321 }
2318 if (sse) { 2322 if (sse) {
2319 dasm_put(Dst, 11744); 2323 dasm_put(Dst, 11767);
2320 } else { 2324 } else {
2321 dasm_put(Dst, 11759); 2325 dasm_put(Dst, 11782);
2322 } 2326 }
2323 break; 2327 break;
2324 default: 2328 default:
2325 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2329 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2326 if (sse) { 2330 if (sse) {
2327 dasm_put(Dst, 11768); 2331 dasm_put(Dst, 11791);
2328 } else { 2332 } else {
2329 dasm_put(Dst, 11782); 2333 dasm_put(Dst, 11805);
2330 } 2334 }
2331 break; 2335 break;
2332 } 2336 }
2333 if (sse) { 2337 if (sse) {
2334 dasm_put(Dst, 11052); 2338 dasm_put(Dst, 11075);
2335 } else { 2339 } else {
2336 dasm_put(Dst, 11064); 2340 dasm_put(Dst, 11087);
2337 } 2341 }
2338 dasm_put(Dst, 10175); 2342 dasm_put(Dst, 10198);
2339 } 2343 }
2340 break; 2344 break;
2341 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 2345 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
2342 dasm_put(Dst, 11184); 2346 dasm_put(Dst, 11207);
2343 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2347 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2344 switch (vk) { 2348 switch (vk) {
2345 case 0: 2349 case 0:
2346 dasm_put(Dst, 11301, LJ_TISNUM); 2350 dasm_put(Dst, 11324, LJ_TISNUM);
2347 if (LJ_DUALNUM) { 2351 if (LJ_DUALNUM) {
2348 dasm_put(Dst, 11313, LJ_TISNUM); 2352 dasm_put(Dst, 11336, LJ_TISNUM);
2349 } 2353 }
2350 if (sse) { 2354 if (sse) {
2351 dasm_put(Dst, 11790); 2355 dasm_put(Dst, 11813);
2352 } else { 2356 } else {
2353 dasm_put(Dst, 11805); 2357 dasm_put(Dst, 11828);
2354 } 2358 }
2355 break; 2359 break;
2356 case 1: 2360 case 1:
2357 dasm_put(Dst, 11349, LJ_TISNUM); 2361 dasm_put(Dst, 11372, LJ_TISNUM);
2358 if (LJ_DUALNUM) { 2362 if (LJ_DUALNUM) {
2359 dasm_put(Dst, 11361, LJ_TISNUM); 2363 dasm_put(Dst, 11384, LJ_TISNUM);
2360 } 2364 }
2361 if (sse) { 2365 if (sse) {
2362 dasm_put(Dst, 11814); 2366 dasm_put(Dst, 11837);
2363 } else { 2367 } else {
2364 dasm_put(Dst, 11829); 2368 dasm_put(Dst, 11852);
2365 } 2369 }
2366 break; 2370 break;
2367 default: 2371 default:
2368 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2372 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2369 if (sse) { 2373 if (sse) {
2370 dasm_put(Dst, 11838); 2374 dasm_put(Dst, 11861);
2371 } else { 2375 } else {
2372 dasm_put(Dst, 11852); 2376 dasm_put(Dst, 11875);
2373 } 2377 }
2374 break; 2378 break;
2375 } 2379 }
2376 if (sse) { 2380 if (sse) {
2377 dasm_put(Dst, 11052); 2381 dasm_put(Dst, 11075);
2378 } else { 2382 } else {
2379 dasm_put(Dst, 11064); 2383 dasm_put(Dst, 11087);
2380 } 2384 }
2381 dasm_put(Dst, 10175); 2385 dasm_put(Dst, 10198);
2382 break; 2386 break;
2383 case BC_MODVN: 2387 case BC_MODVN:
2384 dasm_put(Dst, 11184); 2388 dasm_put(Dst, 11207);
2385 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2389 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2386 switch (vk) { 2390 switch (vk) {
2387 case 0: 2391 case 0:
2388 dasm_put(Dst, 11301, LJ_TISNUM); 2392 dasm_put(Dst, 11324, LJ_TISNUM);
2389 if (LJ_DUALNUM) { 2393 if (LJ_DUALNUM) {
2390 dasm_put(Dst, 11313, LJ_TISNUM); 2394 dasm_put(Dst, 11336, LJ_TISNUM);
2391 } 2395 }
2392 if (sse) { 2396 if (sse) {
2393 dasm_put(Dst, 11860); 2397 dasm_put(Dst, 11883);
2394 } else { 2398 } else {
2395 dasm_put(Dst, 11875); 2399 dasm_put(Dst, 11898);
2396 } 2400 }
2397 break; 2401 break;
2398 case 1: 2402 case 1:
2399 dasm_put(Dst, 11349, LJ_TISNUM); 2403 dasm_put(Dst, 11372, LJ_TISNUM);
2400 if (LJ_DUALNUM) { 2404 if (LJ_DUALNUM) {
2401 dasm_put(Dst, 11361, LJ_TISNUM); 2405 dasm_put(Dst, 11384, LJ_TISNUM);
2402 } 2406 }
2403 if (sse) { 2407 if (sse) {
2404 dasm_put(Dst, 11884); 2408 dasm_put(Dst, 11907);
2405 } else { 2409 } else {
2406 dasm_put(Dst, 11899); 2410 dasm_put(Dst, 11922);
2407 } 2411 }
2408 break; 2412 break;
2409 default: 2413 default:
2410 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2414 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2411 if (sse) { 2415 if (sse) {
2412 dasm_put(Dst, 11908); 2416 dasm_put(Dst, 11931);
2413 } else { 2417 } else {
2414 dasm_put(Dst, 11922); 2418 dasm_put(Dst, 11945);
2415 } 2419 }
2416 break; 2420 break;
2417 } 2421 }
2418 dasm_put(Dst, 11930); 2422 dasm_put(Dst, 11953);
2419 if (sse) { 2423 if (sse) {
2420 dasm_put(Dst, 11052); 2424 dasm_put(Dst, 11075);
2421 } else { 2425 } else {
2422 dasm_put(Dst, 11064); 2426 dasm_put(Dst, 11087);
2423 } 2427 }
2424 dasm_put(Dst, 10175); 2428 dasm_put(Dst, 10198);
2425 break; 2429 break;
2426 case BC_MODNV: case BC_MODVV: 2430 case BC_MODNV: case BC_MODVV:
2427 dasm_put(Dst, 11184); 2431 dasm_put(Dst, 11207);
2428 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2432 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2429 switch (vk) { 2433 switch (vk) {
2430 case 0: 2434 case 0:
2431 dasm_put(Dst, 11301, LJ_TISNUM); 2435 dasm_put(Dst, 11324, LJ_TISNUM);
2432 if (LJ_DUALNUM) { 2436 if (LJ_DUALNUM) {
2433 dasm_put(Dst, 11313, LJ_TISNUM); 2437 dasm_put(Dst, 11336, LJ_TISNUM);
2434 } 2438 }
2435 if (sse) { 2439 if (sse) {
2436 dasm_put(Dst, 11860); 2440 dasm_put(Dst, 11883);
2437 } else { 2441 } else {
2438 dasm_put(Dst, 11875); 2442 dasm_put(Dst, 11898);
2439 } 2443 }
2440 break; 2444 break;
2441 case 1: 2445 case 1:
2442 dasm_put(Dst, 11349, LJ_TISNUM); 2446 dasm_put(Dst, 11372, LJ_TISNUM);
2443 if (LJ_DUALNUM) { 2447 if (LJ_DUALNUM) {
2444 dasm_put(Dst, 11361, LJ_TISNUM); 2448 dasm_put(Dst, 11384, LJ_TISNUM);
2445 } 2449 }
2446 if (sse) { 2450 if (sse) {
2447 dasm_put(Dst, 11884); 2451 dasm_put(Dst, 11907);
2448 } else { 2452 } else {
2449 dasm_put(Dst, 11899); 2453 dasm_put(Dst, 11922);
2450 } 2454 }
2451 break; 2455 break;
2452 default: 2456 default:
2453 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2457 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2454 if (sse) { 2458 if (sse) {
2455 dasm_put(Dst, 11908); 2459 dasm_put(Dst, 11931);
2456 } else { 2460 } else {
2457 dasm_put(Dst, 11922); 2461 dasm_put(Dst, 11945);
2458 } 2462 }
2459 break; 2463 break;
2460 } 2464 }
2461 dasm_put(Dst, 11936); 2465 dasm_put(Dst, 11959);
2462 break; 2466 break;
2463 case BC_POW: 2467 case BC_POW:
2464 dasm_put(Dst, 11184); 2468 dasm_put(Dst, 11207);
2465 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 2469 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
2466 switch (vk) { 2470 switch (vk) {
2467 case 0: 2471 case 0:
2468 dasm_put(Dst, 11301, LJ_TISNUM); 2472 dasm_put(Dst, 11324, LJ_TISNUM);
2469 if (LJ_DUALNUM) { 2473 if (LJ_DUALNUM) {
2470 dasm_put(Dst, 11313, LJ_TISNUM); 2474 dasm_put(Dst, 11336, LJ_TISNUM);
2471 } 2475 }
2472 if (sse) { 2476 if (sse) {
2473 dasm_put(Dst, 11860); 2477 dasm_put(Dst, 11883);
2474 } else { 2478 } else {
2475 dasm_put(Dst, 11875); 2479 dasm_put(Dst, 11898);
2476 } 2480 }
2477 break; 2481 break;
2478 case 1: 2482 case 1:
2479 dasm_put(Dst, 11349, LJ_TISNUM); 2483 dasm_put(Dst, 11372, LJ_TISNUM);
2480 if (LJ_DUALNUM) { 2484 if (LJ_DUALNUM) {
2481 dasm_put(Dst, 11361, LJ_TISNUM); 2485 dasm_put(Dst, 11384, LJ_TISNUM);
2482 } 2486 }
2483 if (sse) { 2487 if (sse) {
2484 dasm_put(Dst, 11884); 2488 dasm_put(Dst, 11907);
2485 } else { 2489 } else {
2486 dasm_put(Dst, 11899); 2490 dasm_put(Dst, 11922);
2487 } 2491 }
2488 break; 2492 break;
2489 default: 2493 default:
2490 dasm_put(Dst, 11397, LJ_TISNUM, LJ_TISNUM); 2494 dasm_put(Dst, 11420, LJ_TISNUM, LJ_TISNUM);
2491 if (sse) { 2495 if (sse) {
2492 dasm_put(Dst, 11908); 2496 dasm_put(Dst, 11931);
2493 } else { 2497 } else {
2494 dasm_put(Dst, 11922); 2498 dasm_put(Dst, 11945);
2495 } 2499 }
2496 break; 2500 break;
2497 } 2501 }
2498 dasm_put(Dst, 11941); 2502 dasm_put(Dst, 11964);
2499 if (sse) { 2503 if (sse) {
2500 dasm_put(Dst, 11052); 2504 dasm_put(Dst, 11075);
2501 } else { 2505 } else {
2502 dasm_put(Dst, 11064); 2506 dasm_put(Dst, 11087);
2503 } 2507 }
2504 dasm_put(Dst, 10175); 2508 dasm_put(Dst, 10198);
2505 break; 2509 break;
2506 2510
2507 case BC_CAT: 2511 case BC_CAT:
2508 dasm_put(Dst, 11945, Dt1(->base), Dt1(->base)); 2512 dasm_put(Dst, 11968, Dt1(->base), Dt1(->base));
2509 break; 2513 break;
2510 2514
2511 /* -- Constant ops ------------------------------------------------------ */ 2515 /* -- Constant ops ------------------------------------------------------ */
2512 2516
2513 case BC_KSTR: 2517 case BC_KSTR:
2514 dasm_put(Dst, 12029, LJ_TSTR); 2518 dasm_put(Dst, 12052, LJ_TSTR);
2515 break; 2519 break;
2516 case BC_KCDATA: 2520 case BC_KCDATA:
2517#if LJ_HASFFI 2521#if LJ_HASFFI
2518 dasm_put(Dst, 12029, LJ_TCDATA); 2522 dasm_put(Dst, 12052, LJ_TCDATA);
2519#endif 2523#endif
2520 break; 2524 break;
2521 case BC_KSHORT: 2525 case BC_KSHORT:
2522 if (LJ_DUALNUM) { 2526 if (LJ_DUALNUM) {
2523 dasm_put(Dst, 12066, LJ_TISNUM); 2527 dasm_put(Dst, 12089, LJ_TISNUM);
2524 } else if (sse) { 2528 } else if (sse) {
2525 dasm_put(Dst, 12078); 2529 dasm_put(Dst, 12101);
2526 } else { 2530 } else {
2527 dasm_put(Dst, 12093); 2531 dasm_put(Dst, 12116);
2528 } 2532 }
2529 dasm_put(Dst, 10175); 2533 dasm_put(Dst, 10198);
2530 break; 2534 break;
2531 case BC_KNUM: 2535 case BC_KNUM:
2532 if (sse) { 2536 if (sse) {
2533 dasm_put(Dst, 12101); 2537 dasm_put(Dst, 12124);
2534 } else { 2538 } else {
2535 dasm_put(Dst, 12115); 2539 dasm_put(Dst, 12138);
2536 } 2540 }
2537 dasm_put(Dst, 10175); 2541 dasm_put(Dst, 10198);
2538 break; 2542 break;
2539 case BC_KPRI: 2543 case BC_KPRI:
2540 dasm_put(Dst, 12123); 2544 dasm_put(Dst, 12146);
2541 break; 2545 break;
2542 case BC_KNIL: 2546 case BC_KNIL:
2543 dasm_put(Dst, 12152, LJ_TNIL); 2547 dasm_put(Dst, 12175, LJ_TNIL);
2544 break; 2548 break;
2545 2549
2546 /* -- Upvalue and function ops ------------------------------------------ */ 2550 /* -- Upvalue and function ops ------------------------------------------ */
2547 2551
2548 case BC_UGET: 2552 case BC_UGET:
2549 dasm_put(Dst, 12200, offsetof(GCfuncL, uvptr), DtA(->v)); 2553 dasm_put(Dst, 12223, offsetof(GCfuncL, uvptr), DtA(->v));
2550 break; 2554 break;
2551 case BC_USETV: 2555 case BC_USETV:
2552#define TV2MARKOFS \ 2556#define TV2MARKOFS \
2553 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) 2557 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv))
2554 dasm_put(Dst, 12241, offsetof(GCfuncL, uvptr), DtA(->closed), DtA(->v), TV2MARKOFS, LJ_GC_BLACK, LJ_TISGCV, LJ_TISNUM - LJ_TISGCV, Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G); 2558 dasm_put(Dst, 12264, offsetof(GCfuncL, uvptr), DtA(->closed), DtA(->v), TV2MARKOFS, LJ_GC_BLACK, LJ_TISGCV, LJ_TISNUM - LJ_TISGCV, Dt4(->gch.marked), LJ_GC_WHITES, GG_DISP2G);
2555 dasm_put(Dst, 12337); 2559 dasm_put(Dst, 12360);
2556 break; 2560 break;
2557#undef TV2MARKOFS 2561#undef TV2MARKOFS
2558 case BC_USETS: 2562 case BC_USETS:
2559 dasm_put(Dst, 12349, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); 2563 dasm_put(Dst, 12372, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G);
2560 break; 2564 break;
2561 case BC_USETN: 2565 case BC_USETN:
2562 dasm_put(Dst, 12445); 2566 dasm_put(Dst, 12468);
2563 if (sse) { 2567 if (sse) {
2564 dasm_put(Dst, 12450); 2568 dasm_put(Dst, 12473);
2565 } else { 2569 } else {
2566 dasm_put(Dst, 10699); 2570 dasm_put(Dst, 10722);
2567 } 2571 }
2568 dasm_put(Dst, 12458, offsetof(GCfuncL, uvptr), DtA(->v)); 2572 dasm_put(Dst, 12481, offsetof(GCfuncL, uvptr), DtA(->v));
2569 if (sse) { 2573 if (sse) {
2570 dasm_put(Dst, 12467); 2574 dasm_put(Dst, 12490);
2571 } else { 2575 } else {
2572 dasm_put(Dst, 12473); 2576 dasm_put(Dst, 12496);
2573 } 2577 }
2574 dasm_put(Dst, 10175); 2578 dasm_put(Dst, 10198);
2575 break; 2579 break;
2576 case BC_USETP: 2580 case BC_USETP:
2577 dasm_put(Dst, 12476, offsetof(GCfuncL, uvptr), DtA(->v)); 2581 dasm_put(Dst, 12499, offsetof(GCfuncL, uvptr), DtA(->v));
2578 break; 2582 break;
2579 case BC_UCLO: 2583 case BC_UCLO:
2580 dasm_put(Dst, 12516, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); 2584 dasm_put(Dst, 12539, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base));
2581 break; 2585 break;
2582 2586
2583 case BC_FNEW: 2587 case BC_FNEW:
2584 dasm_put(Dst, 12572, Dt1(->base), Dt1(->base), LJ_TFUNC); 2588 dasm_put(Dst, 12595, Dt1(->base), Dt1(->base), LJ_TFUNC);
2585 break; 2589 break;
2586 2590
2587 /* -- Table ops --------------------------------------------------------- */ 2591 /* -- Table ops --------------------------------------------------------- */
2588 2592
2589 case BC_TNEW: 2593 case BC_TNEW:
2590 dasm_put(Dst, 12639, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); 2594 dasm_put(Dst, 12662, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB);
2591 break; 2595 break;
2592 case BC_TDUP: 2596 case BC_TDUP:
2593 dasm_put(Dst, 12763, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 2597 dasm_put(Dst, 12786, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
2594 break; 2598 break;
2595 2599
2596 case BC_GGET: 2600 case BC_GGET:
2597 dasm_put(Dst, 12862, Dt7(->env)); 2601 dasm_put(Dst, 12885, Dt7(->env));
2598 break; 2602 break;
2599 case BC_GSET: 2603 case BC_GSET:
2600 dasm_put(Dst, 12882, Dt7(->env)); 2604 dasm_put(Dst, 12905, Dt7(->env));
2601 break; 2605 break;
2602 2606
2603 case BC_TGETV: 2607 case BC_TGETV:
2604 dasm_put(Dst, 12902, LJ_TTAB); 2608 dasm_put(Dst, 12925, LJ_TTAB);
2605 if (LJ_DUALNUM) { 2609 if (LJ_DUALNUM) {
2606 dasm_put(Dst, 12925, LJ_TISNUM); 2610 dasm_put(Dst, 12948, LJ_TISNUM);
2607 } else { 2611 } else {
2608 dasm_put(Dst, 12939, LJ_TISNUM); 2612 dasm_put(Dst, 12962, LJ_TISNUM);
2609 if (sse) { 2613 if (sse) {
2610 dasm_put(Dst, 12950); 2614 dasm_put(Dst, 12973);
2611 } else { 2615 } else {
2612 } 2616 }
2613 dasm_put(Dst, 12971); 2617 dasm_put(Dst, 12994);
2614 } 2618 }
2615 dasm_put(Dst, 12976, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index, LJ_TNIL); 2619 dasm_put(Dst, 12999, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index, LJ_TNIL);
2616 dasm_put(Dst, 13068, LJ_TSTR); 2620 dasm_put(Dst, 13091, LJ_TSTR);
2617 break; 2621 break;
2618 case BC_TGETS: 2622 case BC_TGETS:
2619 dasm_put(Dst, 13086, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 2623 dasm_put(Dst, 13109, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
2620 dasm_put(Dst, 13171, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2624 dasm_put(Dst, 13194, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2621 break; 2625 break;
2622 case BC_TGETB: 2626 case BC_TGETB:
2623 dasm_put(Dst, 13243, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2627 dasm_put(Dst, 13266, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2624 dasm_put(Dst, 13339, LJ_TNIL); 2628 dasm_put(Dst, 13362, LJ_TNIL);
2625 break; 2629 break;
2626 2630
2627 case BC_TSETV: 2631 case BC_TSETV:
2628 dasm_put(Dst, 13356, LJ_TTAB); 2632 dasm_put(Dst, 13379, LJ_TTAB);
2629 if (LJ_DUALNUM) { 2633 if (LJ_DUALNUM) {
2630 dasm_put(Dst, 12925, LJ_TISNUM); 2634 dasm_put(Dst, 12948, LJ_TISNUM);
2631 } else { 2635 } else {
2632 dasm_put(Dst, 12939, LJ_TISNUM); 2636 dasm_put(Dst, 12962, LJ_TISNUM);
2633 if (sse) { 2637 if (sse) {
2634 dasm_put(Dst, 12950); 2638 dasm_put(Dst, 12973);
2635 } else { 2639 } else {
2636 } 2640 }
2637 dasm_put(Dst, 13379); 2641 dasm_put(Dst, 13402);
2638 } 2642 }
2639 dasm_put(Dst, 13384, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex); 2643 dasm_put(Dst, 13407, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex);
2640 dasm_put(Dst, 13465, LJ_TSTR, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2644 dasm_put(Dst, 13488, LJ_TSTR, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2641 break; 2645 break;
2642 case BC_TSETS: 2646 case BC_TSETS:
2643 dasm_put(Dst, 13524, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 2647 dasm_put(Dst, 13547, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
2644 dasm_put(Dst, 13601, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next)); 2648 dasm_put(Dst, 13624, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next));
2645 dasm_put(Dst, 13688, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt1(->base), Dt1(->base), Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2649 dasm_put(Dst, 13711, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt1(->base), Dt1(->base), Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2646 break; 2650 break;
2647 case BC_TSETB: 2651 case BC_TSETB:
2648 dasm_put(Dst, 13780, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 2652 dasm_put(Dst, 13803, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
2649 dasm_put(Dst, 13875, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2653 dasm_put(Dst, 13898, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2650 break; 2654 break;
2651 2655
2652 case BC_TSETM: 2656 case BC_TSETM:
2653 dasm_put(Dst, 13923, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); 2657 dasm_put(Dst, 13946, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base));
2654 dasm_put(Dst, 14073, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2658 dasm_put(Dst, 14096, Dt6(->marked), (uint8_t)~LJ_GC_BLACK, DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2655 break; 2659 break;
2656 2660
2657 /* -- Calls and vararg handling ----------------------------------------- */ 2661 /* -- Calls and vararg handling ----------------------------------------- */
2658 2662
2659 case BC_CALL: case BC_CALLM: 2663 case BC_CALL: case BC_CALLM:
2660 dasm_put(Dst, 11188); 2664 dasm_put(Dst, 11211);
2661 if (op == BC_CALLM) { 2665 if (op == BC_CALLM) {
2662 dasm_put(Dst, 14093); 2666 dasm_put(Dst, 14116);
2663 } 2667 }
2664 dasm_put(Dst, 14098, LJ_TFUNC, Dt7(->pc)); 2668 dasm_put(Dst, 14121, LJ_TFUNC, Dt7(->pc));
2665 break; 2669 break;
2666 2670
2667 case BC_CALLMT: 2671 case BC_CALLMT:
2668 dasm_put(Dst, 14093); 2672 dasm_put(Dst, 14116);
2669 break; 2673 break;
2670 case BC_CALLT: 2674 case BC_CALLT:
2671 dasm_put(Dst, 14141, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); 2675 dasm_put(Dst, 14164, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc));
2672 dasm_put(Dst, 14259, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); 2676 dasm_put(Dst, 14282, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG);
2673 break; 2677 break;
2674 2678
2675 case BC_ITERC: 2679 case BC_ITERC:
2676 dasm_put(Dst, 14333, LJ_TFUNC, 2+1, Dt7(->pc)); 2680 dasm_put(Dst, 14356, LJ_TFUNC, 2+1, Dt7(->pc));
2677 break; 2681 break;
2678 2682
2679 case BC_ITERN: 2683 case BC_ITERN:
2680#if LJ_HASJIT 2684#if LJ_HASJIT
2681#endif 2685#endif
2682 dasm_put(Dst, 14405, Dt6(->asize), Dt6(->array), LJ_TNIL); 2686 dasm_put(Dst, 14428, Dt6(->asize), Dt6(->array), LJ_TNIL);
2683 if (LJ_DUALNUM) { 2687 if (LJ_DUALNUM) {
2684 dasm_put(Dst, 11087, LJ_TISNUM); 2688 dasm_put(Dst, 11110, LJ_TISNUM);
2685 } else if (sse) { 2689 } else if (sse) {
2686 dasm_put(Dst, 11165); 2690 dasm_put(Dst, 11188);
2687 } else { 2691 } else {
2688 dasm_put(Dst, 14457); 2692 dasm_put(Dst, 14480);
2689 } 2693 }
2690 dasm_put(Dst, 14463); 2694 dasm_put(Dst, 14486);
2691 if (LJ_DUALNUM) { 2695 if (LJ_DUALNUM) {
2692 } else if (sse) { 2696 } else if (sse) {
2693 dasm_put(Dst, 11052); 2697 dasm_put(Dst, 11075);
2694 } else { 2698 } else {
2695 dasm_put(Dst, 11064); 2699 dasm_put(Dst, 11087);
2696 } 2700 }
2697 dasm_put(Dst, 14476, -BCBIAS_J*4); 2701 dasm_put(Dst, 14499, -BCBIAS_J*4);
2698 if (!LJ_DUALNUM && !sse) { 2702 if (!LJ_DUALNUM && !sse) {
2699 dasm_put(Dst, 14530); 2703 dasm_put(Dst, 14553);
2700 } 2704 }
2701 dasm_put(Dst, 14536, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key), DtB(->val)); 2705 dasm_put(Dst, 14559, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key), DtB(->val));
2702 break; 2706 break;
2703 2707
2704 case BC_ISNEXT: 2708 case BC_ISNEXT:
2705 dasm_put(Dst, 14615, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); 2709 dasm_put(Dst, 14638, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC);
2706 break; 2710 break;
2707 2711
2708 case BC_VARG: 2712 case BC_VARG:
2709 dasm_put(Dst, 14716, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); 2713 dasm_put(Dst, 14739, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack));
2710 dasm_put(Dst, 14883, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 2714 dasm_put(Dst, 14906, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
2711 break; 2715 break;
2712 2716
2713 /* -- Returns ----------------------------------------------------------- */ 2717 /* -- Returns ----------------------------------------------------------- */
2714 2718
2715 case BC_RETM: 2719 case BC_RETM:
2716 dasm_put(Dst, 14093); 2720 dasm_put(Dst, 14116);
2717 break; 2721 break;
2718 2722
2719 case BC_RET: case BC_RET0: case BC_RET1: 2723 case BC_RET: case BC_RET0: case BC_RET1:
2720 if (op != BC_RET0) { 2724 if (op != BC_RET0) {
2721 dasm_put(Dst, 14953); 2725 dasm_put(Dst, 14976);
2722 } 2726 }
2723 dasm_put(Dst, 14957, FRAME_TYPE); 2727 dasm_put(Dst, 14980, FRAME_TYPE);
2724 switch (op) { 2728 switch (op) {
2725 case BC_RET: 2729 case BC_RET:
2726 dasm_put(Dst, 14976); 2730 dasm_put(Dst, 14999);
2727 break; 2731 break;
2728 case BC_RET1: 2732 case BC_RET1:
2729 dasm_put(Dst, 15030); 2733 dasm_put(Dst, 15053);
2730 /* fallthrough */ 2734 /* fallthrough */
2731 case BC_RET0: 2735 case BC_RET0:
2732 dasm_put(Dst, 15040); 2736 dasm_put(Dst, 15063);
2733 default: 2737 default:
2734 break; 2738 break;
2735 } 2739 }
2736 dasm_put(Dst, 15051, Dt7(->pc), PC2PROTO(k)); 2740 dasm_put(Dst, 15074, Dt7(->pc), PC2PROTO(k));
2737 if (op == BC_RET) { 2741 if (op == BC_RET) {
2738 dasm_put(Dst, 15099, LJ_TNIL); 2742 dasm_put(Dst, 15122, LJ_TNIL);
2739 } else { 2743 } else {
2740 dasm_put(Dst, 15110, LJ_TNIL); 2744 dasm_put(Dst, 15133, LJ_TNIL);
2741 } 2745 }
2742 dasm_put(Dst, 15117, -FRAME_VARG, FRAME_TYPEP); 2746 dasm_put(Dst, 15140, -FRAME_VARG, FRAME_TYPEP);
2743 if (op != BC_RET0) { 2747 if (op != BC_RET0) {
2744 dasm_put(Dst, 15141); 2748 dasm_put(Dst, 15164);
2745 } 2749 }
2746 dasm_put(Dst, 4709); 2750 dasm_put(Dst, 4732);
2747 break; 2751 break;
2748 2752
2749 /* -- Loops and branches ------------------------------------------------ */ 2753 /* -- Loops and branches ------------------------------------------------ */
@@ -2751,7 +2755,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2751 2755
2752 case BC_FORL: 2756 case BC_FORL:
2753#if LJ_HASJIT 2757#if LJ_HASJIT
2754 dasm_put(Dst, 15145, HOTCOUNT_PCMASK, GG_DISP2HOT); 2758 dasm_put(Dst, 15168, HOTCOUNT_PCMASK, GG_DISP2HOT);
2755#endif 2759#endif
2756 break; 2760 break;
2757 2761
@@ -2763,111 +2767,111 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2763 case BC_FORI: 2767 case BC_FORI:
2764 case BC_IFORL: 2768 case BC_IFORL:
2765 vk = (op == BC_IFORL || op == BC_JFORL); 2769 vk = (op == BC_IFORL || op == BC_JFORL);
2766 dasm_put(Dst, 15166); 2770 dasm_put(Dst, 15189);
2767 if (LJ_DUALNUM) { 2771 if (LJ_DUALNUM) {
2768 dasm_put(Dst, 15170, LJ_TISNUM); 2772 dasm_put(Dst, 15193, LJ_TISNUM);
2769 if (!vk) { 2773 if (!vk) {
2770 dasm_put(Dst, 15180, LJ_TISNUM, LJ_TISNUM); 2774 dasm_put(Dst, 15203, LJ_TISNUM, LJ_TISNUM);
2771 } else { 2775 } else {
2772#ifdef LUA_USE_ASSERT 2776#ifdef LUA_USE_ASSERT
2773 dasm_put(Dst, 15209, LJ_TISNUM, LJ_TISNUM); 2777 dasm_put(Dst, 15232, LJ_TISNUM, LJ_TISNUM);
2774#endif 2778#endif
2775 dasm_put(Dst, 15228); 2779 dasm_put(Dst, 15251);
2776 } 2780 }
2777 dasm_put(Dst, 15247, LJ_TISNUM); 2781 dasm_put(Dst, 15270, LJ_TISNUM);
2778 if (op == BC_FORI) { 2782 if (op == BC_FORI) {
2779 dasm_put(Dst, 15258, -BCBIAS_J*4); 2783 dasm_put(Dst, 15281, -BCBIAS_J*4);
2780 } else if (op == BC_JFORI) { 2784 } else if (op == BC_JFORI) {
2781 dasm_put(Dst, 15272, -BCBIAS_J*4, BC_JLOOP); 2785 dasm_put(Dst, 15295, -BCBIAS_J*4, BC_JLOOP);
2782 } else if (op == BC_IFORL) { 2786 } else if (op == BC_IFORL) {
2783 dasm_put(Dst, 15290, -BCBIAS_J*4); 2787 dasm_put(Dst, 15313, -BCBIAS_J*4);
2784 } else { 2788 } else {
2785 dasm_put(Dst, 15282, BC_JLOOP); 2789 dasm_put(Dst, 15305, BC_JLOOP);
2786 } 2790 }
2787 dasm_put(Dst, 15304); 2791 dasm_put(Dst, 15327);
2788 if (vk) { 2792 if (vk) {
2789 dasm_put(Dst, 15329); 2793 dasm_put(Dst, 15352);
2790 } 2794 }
2791 dasm_put(Dst, 15247, LJ_TISNUM); 2795 dasm_put(Dst, 15270, LJ_TISNUM);
2792 if (op == BC_FORI) { 2796 if (op == BC_FORI) {
2793 dasm_put(Dst, 15338); 2797 dasm_put(Dst, 15361);
2794 } else if (op == BC_JFORI) { 2798 } else if (op == BC_JFORI) {
2795 dasm_put(Dst, 15343, -BCBIAS_J*4, BC_JLOOP); 2799 dasm_put(Dst, 15366, -BCBIAS_J*4, BC_JLOOP);
2796 } else if (op == BC_IFORL) { 2800 } else if (op == BC_IFORL) {
2797 dasm_put(Dst, 15357); 2801 dasm_put(Dst, 15380);
2798 } else { 2802 } else {
2799 dasm_put(Dst, 15353, BC_JLOOP); 2803 dasm_put(Dst, 15376, BC_JLOOP);
2800 } 2804 }
2801 dasm_put(Dst, 15362); 2805 dasm_put(Dst, 15385);
2802 } else if (!vk) { 2806 } else if (!vk) {
2803 dasm_put(Dst, 15369, LJ_TISNUM); 2807 dasm_put(Dst, 15392, LJ_TISNUM);
2804 } 2808 }
2805 if (!vk) { 2809 if (!vk) {
2806 dasm_put(Dst, 15375, LJ_TISNUM); 2810 dasm_put(Dst, 15398, LJ_TISNUM);
2807 } else { 2811 } else {
2808#ifdef LUA_USE_ASSERT 2812#ifdef LUA_USE_ASSERT
2809 dasm_put(Dst, 15389, LJ_TISNUM, LJ_TISNUM); 2813 dasm_put(Dst, 15412, LJ_TISNUM, LJ_TISNUM);
2810#endif 2814#endif
2811 } 2815 }
2812 dasm_put(Dst, 15408); 2816 dasm_put(Dst, 15431);
2813 if (!vk) { 2817 if (!vk) {
2814 dasm_put(Dst, 15412, LJ_TISNUM); 2818 dasm_put(Dst, 15435, LJ_TISNUM);
2815 } 2819 }
2816 if (sse) { 2820 if (sse) {
2817 dasm_put(Dst, 15421); 2821 dasm_put(Dst, 15444);
2818 if (vk) { 2822 if (vk) {
2819 dasm_put(Dst, 15433); 2823 dasm_put(Dst, 15456);
2820 } else { 2824 } else {
2821 dasm_put(Dst, 15452); 2825 dasm_put(Dst, 15475);
2822 } 2826 }
2823 dasm_put(Dst, 15457); 2827 dasm_put(Dst, 15480);
2824 } else { 2828 } else {
2825 dasm_put(Dst, 15470); 2829 dasm_put(Dst, 15493);
2826 if (vk) { 2830 if (vk) {
2827 dasm_put(Dst, 15476); 2831 dasm_put(Dst, 15499);
2828 } else { 2832 } else {
2829 dasm_put(Dst, 15492); 2833 dasm_put(Dst, 15515);
2830 } 2834 }
2831 dasm_put(Dst, 15500); 2835 dasm_put(Dst, 15523);
2832 if (cmov) { 2836 if (cmov) {
2833 dasm_put(Dst, 10130); 2837 dasm_put(Dst, 10153);
2834 } else { 2838 } else {
2835 dasm_put(Dst, 10136); 2839 dasm_put(Dst, 10159);
2836 } 2840 }
2837 if (!cmov) { 2841 if (!cmov) {
2838 dasm_put(Dst, 15505); 2842 dasm_put(Dst, 15528);
2839 } 2843 }
2840 } 2844 }
2841 if (op == BC_FORI) { 2845 if (op == BC_FORI) {
2842 if (LJ_DUALNUM) { 2846 if (LJ_DUALNUM) {
2843 dasm_put(Dst, 15511); 2847 dasm_put(Dst, 15534);
2844 } else { 2848 } else {
2845 dasm_put(Dst, 15516, -BCBIAS_J*4); 2849 dasm_put(Dst, 15539, -BCBIAS_J*4);
2846 } 2850 }
2847 } else if (op == BC_JFORI) { 2851 } else if (op == BC_JFORI) {
2848 dasm_put(Dst, 15526, -BCBIAS_J*4, BC_JLOOP); 2852 dasm_put(Dst, 15549, -BCBIAS_J*4, BC_JLOOP);
2849 } else if (op == BC_IFORL) { 2853 } else if (op == BC_IFORL) {
2850 if (LJ_DUALNUM) { 2854 if (LJ_DUALNUM) {
2851 dasm_put(Dst, 15540); 2855 dasm_put(Dst, 15563);
2852 } else { 2856 } else {
2853 dasm_put(Dst, 15545, -BCBIAS_J*4); 2857 dasm_put(Dst, 15568, -BCBIAS_J*4);
2854 } 2858 }
2855 } else { 2859 } else {
2856 dasm_put(Dst, 15536, BC_JLOOP); 2860 dasm_put(Dst, 15559, BC_JLOOP);
2857 } 2861 }
2858 if (LJ_DUALNUM) { 2862 if (LJ_DUALNUM) {
2859 dasm_put(Dst, 10059); 2863 dasm_put(Dst, 10082);
2860 } else { 2864 } else {
2861 dasm_put(Dst, 10833); 2865 dasm_put(Dst, 10856);
2862 } 2866 }
2863 if (sse) { 2867 if (sse) {
2864 dasm_put(Dst, 15555); 2868 dasm_put(Dst, 15578);
2865 } 2869 }
2866 break; 2870 break;
2867 2871
2868 case BC_ITERL: 2872 case BC_ITERL:
2869#if LJ_HASJIT 2873#if LJ_HASJIT
2870 dasm_put(Dst, 15145, HOTCOUNT_PCMASK, GG_DISP2HOT); 2874 dasm_put(Dst, 15168, HOTCOUNT_PCMASK, GG_DISP2HOT);
2871#endif 2875#endif
2872 break; 2876 break;
2873 2877
@@ -2876,33 +2880,33 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2876 break; 2880 break;
2877#endif 2881#endif
2878 case BC_IITERL: 2882 case BC_IITERL:
2879 dasm_put(Dst, 15566, LJ_TNIL); 2883 dasm_put(Dst, 15589, LJ_TNIL);
2880 if (op == BC_JITERL) { 2884 if (op == BC_JITERL) {
2881 dasm_put(Dst, 15581, BC_JLOOP); 2885 dasm_put(Dst, 15604, BC_JLOOP);
2882 } else { 2886 } else {
2883 dasm_put(Dst, 15595, -BCBIAS_J*4); 2887 dasm_put(Dst, 15618, -BCBIAS_J*4);
2884 } 2888 }
2885 dasm_put(Dst, 10173); 2889 dasm_put(Dst, 10196);
2886 break; 2890 break;
2887 2891
2888 case BC_LOOP: 2892 case BC_LOOP:
2889#if LJ_HASJIT 2893#if LJ_HASJIT
2890 dasm_put(Dst, 15145, HOTCOUNT_PCMASK, GG_DISP2HOT); 2894 dasm_put(Dst, 15168, HOTCOUNT_PCMASK, GG_DISP2HOT);
2891#endif 2895#endif
2892 break; 2896 break;
2893 2897
2894 case BC_ILOOP: 2898 case BC_ILOOP:
2895 dasm_put(Dst, 10175); 2899 dasm_put(Dst, 10198);
2896 break; 2900 break;
2897 2901
2898 case BC_JLOOP: 2902 case BC_JLOOP:
2899#if LJ_HASJIT 2903#if LJ_HASJIT
2900 dasm_put(Dst, 15611, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); 2904 dasm_put(Dst, 15634, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L));
2901#endif 2905#endif
2902 break; 2906 break;
2903 2907
2904 case BC_JMP: 2908 case BC_JMP:
2905 dasm_put(Dst, 15652, -BCBIAS_J*4); 2909 dasm_put(Dst, 15675, -BCBIAS_J*4);
2906 break; 2910 break;
2907 2911
2908 /* -- Function headers -------------------------------------------------- */ 2912 /* -- Function headers -------------------------------------------------- */
@@ -2916,7 +2920,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2916 2920
2917 case BC_FUNCF: 2921 case BC_FUNCF:
2918#if LJ_HASJIT 2922#if LJ_HASJIT
2919 dasm_put(Dst, 15678, HOTCOUNT_PCMASK, GG_DISP2HOT); 2923 dasm_put(Dst, 15701, HOTCOUNT_PCMASK, GG_DISP2HOT);
2920#endif 2924#endif
2921 case BC_FUNCV: /* NYI: compiled vararg functions. */ 2925 case BC_FUNCV: /* NYI: compiled vararg functions. */
2922 break; 2926 break;
@@ -2926,47 +2930,47 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2926 break; 2930 break;
2927#endif 2931#endif
2928 case BC_IFUNCF: 2932 case BC_IFUNCF:
2929 dasm_put(Dst, 15699, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); 2933 dasm_put(Dst, 15722, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams));
2930 if (op == BC_JFUNCF) { 2934 if (op == BC_JFUNCF) {
2931 dasm_put(Dst, 15730, BC_JLOOP); 2935 dasm_put(Dst, 15753, BC_JLOOP);
2932 } else { 2936 } else {
2933 dasm_put(Dst, 10175); 2937 dasm_put(Dst, 10198);
2934 } 2938 }
2935 dasm_put(Dst, 15739, LJ_TNIL); 2939 dasm_put(Dst, 15762, LJ_TNIL);
2936 break; 2940 break;
2937 2941
2938 case BC_JFUNCV: 2942 case BC_JFUNCV:
2939#if !LJ_HASJIT 2943#if !LJ_HASJIT
2940 break; 2944 break;
2941#endif 2945#endif
2942 dasm_put(Dst, 9282); 2946 dasm_put(Dst, 9305);
2943 break; /* NYI: compiled vararg functions. */ 2947 break; /* NYI: compiled vararg functions. */
2944 2948
2945 case BC_IFUNCV: 2949 case BC_IFUNCV:
2946 dasm_put(Dst, 15761, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); 2950 dasm_put(Dst, 15784, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL);
2947 if (op == BC_JFUNCV) { 2951 if (op == BC_JFUNCV) {
2948 dasm_put(Dst, 15730, BC_JLOOP); 2952 dasm_put(Dst, 15753, BC_JLOOP);
2949 } else { 2953 } else {
2950 dasm_put(Dst, 15858, -4+PC2PROTO(k)); 2954 dasm_put(Dst, 15881, -4+PC2PROTO(k));
2951 } 2955 }
2952 dasm_put(Dst, 15883, LJ_TNIL); 2956 dasm_put(Dst, 15906, LJ_TNIL);
2953 break; 2957 break;
2954 2958
2955 case BC_FUNCC: 2959 case BC_FUNCC:
2956 case BC_FUNCCW: 2960 case BC_FUNCCW:
2957 dasm_put(Dst, 15905, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); 2961 dasm_put(Dst, 15928, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top));
2958 if (op == BC_FUNCC) { 2962 if (op == BC_FUNCC) {
2959 dasm_put(Dst, 2381); 2963 dasm_put(Dst, 2404);
2960 } else { 2964 } else {
2961 dasm_put(Dst, 15935); 2965 dasm_put(Dst, 15958);
2962 } 2966 }
2963 dasm_put(Dst, 15943, DISPATCH_GL(vmstate), ~LJ_VMST_C); 2967 dasm_put(Dst, 15966, DISPATCH_GL(vmstate), ~LJ_VMST_C);
2964 if (op == BC_FUNCC) { 2968 if (op == BC_FUNCC) {
2965 dasm_put(Dst, 15953); 2969 dasm_put(Dst, 15976);
2966 } else { 2970 } else {
2967 dasm_put(Dst, 15958, DISPATCH_GL(wrapf)); 2971 dasm_put(Dst, 15981, DISPATCH_GL(wrapf));
2968 } 2972 }
2969 dasm_put(Dst, 15964, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); 2973 dasm_put(Dst, 15987, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top));
2970 break; 2974 break;
2971 2975
2972 /* ---------------------------------------------------------------------- */ 2976 /* ---------------------------------------------------------------------- */
@@ -2994,7 +2998,7 @@ static int build_backend(BuildCtx *ctx)
2994 2998
2995 build_subroutines(ctx, cmov, sse); 2999 build_subroutines(ctx, cmov, sse);
2996 3000
2997 dasm_put(Dst, 15990); 3001 dasm_put(Dst, 16013);
2998 for (op = 0; op < BC__MAX; op++) 3002 for (op = 0; op < BC__MAX; op++)
2999 build_ins(ctx, (BCOp)op, op, cmov, sse); 3003 build_ins(ctx, (BCOp)op, op, cmov, sse);
3000 3004