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.h1460
1 files changed, 732 insertions, 728 deletions
diff --git a/src/buildvm_x64.h b/src/buildvm_x64.h
index 9ce79dd7..ef507af1 100644
--- a/src/buildvm_x64.h
+++ b/src/buildvm_x64.h
@@ -12,84 +12,85 @@
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[13633] = { 15static const unsigned char build_actionlist[13650] = {
16 254,1,248,10,137,202,139,173,233,137,90,252,252,15,182,141,233,141,157,233, 16 254,1,248,10,137,202,137,90,252,252,139,157,233,15,182,139,233,68,139,187,
17 68,139,189,233,139,108,36,16,141,12,202,141,68,194,252,252,59,141,233,15, 17 233,139,108,36,16,141,12,202,59,141,233,15,135,244,11,15,182,139,233,57,200,
18 135,244,11,248,9,189,237,248,1,137,40,137,104,8,131,192,16,57,200,15,130, 18 15,134,244,249,248,2,255,139,3,15,182,204,15,182,232,131,195,4,193,232,16,
19 244,1,255,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 19 65,252,255,36,252,238,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,
20 252,238,248,12,137,89,252,252,141,28,197,237,141,148,253,25,233,137,106,252, 20 244,3,252,233,244,2,248,12,137,89,252,252,141,28,197,237,141,148,253,25,233,
21 248,139,173,233,137,90,252,252,15,182,157,233,68,141,60,218,139,92,36,16, 21 137,106,252,248,137,90,252,252,139,157,233,15,182,171,233,68,141,60,252,234,
22 141,66,4,68,59,187,233,15,135,244,13,15,182,157,233,133,219,15,132,244,248, 22 139,108,36,16,68,59,189,233,15,135,244,13,137,208,15,182,171,233,133,252,
23 248,1,131,193,8,57,209,15,131,244,248,68,139,121,252,248,68,137,120,252,252, 23 237,15,132,244,248,248,1,131,193,8,57,209,15,131,244,249,255,68,139,121,252,
24 68,139,121,252,252,68,137,56,131,192,8,199,65,252,252,237,131,252,235,1,15, 24 248,68,137,56,68,139,121,252,252,68,137,120,4,131,192,8,199,65,252,252,237,
25 133,244,1,248,2,15,182,141,233,141,157,233,255,68,139,189,233,141,12,202, 25 131,252,237,1,15,133,244,1,248,2,68,139,187,233,255,139,3,15,182,204,15,182,
26 252,233,244,9,248,14,137,89,252,252,76,139,189,233,139,108,36,16,141,68,193, 26 232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,199,64,4,237,131,192,
27 252,248,137,141,233,141,136,233,137,133,233,59,141,233,76,137,252,254,137, 27 8,131,252,237,1,15,133,244,3,252,233,244,2,248,14,137,89,252,252,76,139,189,
28 252,239,15,135,244,15,65,199,134,233,237,65,252,255,150,233,65,199,134,233, 28 233,139,108,36,16,141,68,193,252,248,137,141,233,141,136,233,137,133,233,
29 237,139,149,233,141,12,194,252,247,217,3,141,233,248,16,131,192,1,137,68, 29 59,141,233,76,137,252,254,137,252,239,15,135,244,15,65,199,134,233,237,65,
30 36,4,252,247,195,237,255,15,132,244,17,252,233,244,18,248,19,137,89,252,252, 30 252,255,150,233,65,199,134,233,237,139,149,233,255,141,12,194,252,247,217,
31 76,139,189,233,139,108,36,16,141,68,193,252,248,137,141,233,141,136,233,137, 31 3,141,233,248,16,131,192,1,137,68,36,4,252,247,195,237,15,132,244,17,252,
32 133,233,59,141,233,137,252,239,15,135,244,15,65,199,134,233,237,65,252,255, 32 233,244,18,248,19,137,89,252,252,76,139,189,233,139,108,36,16,141,68,193,
33 215,65,199,134,233,237,139,149,233,141,12,194,252,247,217,3,141,233,248,16, 33 252,248,137,141,233,141,136,233,137,133,233,59,141,233,137,252,239,15,135,
34 131,192,1,137,68,36,4,252,247,195,237,255,15,132,244,17,248,18,252,247,195, 34 244,15,65,199,134,233,237,65,252,255,215,65,199,134,233,237,139,149,233,255,
35 237,15,132,244,20,65,199,134,233,237,131,227,252,248,41,211,252,247,219,131, 35 141,12,194,252,247,217,3,141,233,248,16,131,192,1,137,68,36,4,252,247,195,
36 232,1,15,132,244,248,248,1,139,44,10,137,106,252,248,139,108,10,4,137,106, 36 237,15,132,244,17,248,18,252,247,195,237,15,132,244,20,65,199,134,233,237,
37 252,252,131,194,8,131,232,1,15,133,244,1,248,2,139,108,36,16,137,157,233, 37 131,227,252,248,41,211,252,247,219,131,232,1,15,132,244,248,248,1,139,44,
38 248,3,139,68,36,4,139,76,36,8,248,4,57,193,15,133,244,252,248,5,255,131,252, 38 10,137,106,252,248,139,108,10,4,137,106,252,252,131,194,8,131,232,1,15,133,
39 234,8,137,149,233,248,21,72,139,76,36,32,72,137,141,233,49,192,248,22,72, 39 244,1,248,2,139,108,36,16,137,157,233,248,3,139,68,36,4,139,76,36,8,248,4,
40 131,196,40,65,94,65,95,91,93,195,248,6,15,130,244,253,59,149,233,15,135,244, 40 255,57,193,15,133,244,252,248,5,131,252,234,8,137,149,233,248,21,72,139,76,
41 254,199,66,252,252,237,131,194,8,131,192,1,252,233,244,4,248,7,133,201,15, 41 36,32,72,137,141,233,49,192,248,22,72,131,196,40,65,94,65,95,91,93,195,248,
42 132,244,5,41,193,141,20,202,252,233,244,5,248,8,137,149,233,255,137,68,36, 42 6,15,130,244,253,59,149,233,15,135,244,254,199,66,252,252,237,131,194,8,131,
43 4,137,206,137,252,239,232,251,1,0,139,149,233,252,233,244,3,248,23,137,252, 43 192,1,252,233,244,4,248,7,133,201,15,132,244,5,41,193,141,20,202,252,233,
44 240,72,137,252,252,248,24,139,108,36,16,139,173,233,199,133,233,237,252,233, 44 244,5,248,8,255,137,149,233,137,68,36,4,137,206,137,252,239,232,251,1,0,139,
45 244,22,248,25,72,129,231,239,72,137,252,252,248,26,139,108,36,16,72,199,193, 45 149,233,252,233,244,3,248,23,137,252,240,72,137,252,252,248,24,139,108,36,
46 252,248,252,255,252,255,252,255,184,237,139,149,233,68,139,181,233,65,129, 46 16,139,173,233,199,133,233,237,252,233,244,22,248,25,72,129,231,239,72,137,
47 198,239,139,90,252,252,199,66,252,252,237,65,199,134,233,237,255,252,233, 47 252,252,248,26,139,108,36,16,72,199,193,252,248,252,255,252,255,252,255,184,
48 244,16,248,20,252,247,195,237,15,132,244,27,131,227,252,248,41,218,72,141, 48 237,139,149,233,68,139,181,233,65,129,198,239,139,90,252,252,199,66,252,252,
49 76,25,252,248,139,90,252,252,199,68,10,4,237,252,233,244,16,248,15,190,237, 49 237,65,199,134,233,237,255,252,233,244,16,248,20,252,247,195,237,15,132,244,
50 252,233,244,247,248,13,131,232,8,137,202,68,137,252,249,141,157,233,139,108, 50 27,131,227,252,248,41,218,72,141,76,25,252,248,139,90,252,252,199,68,10,4,
51 36,16,248,11,131,232,4,41,209,193,252,233,3,131,195,4,137,149,233,137,133, 51 237,252,233,244,16,248,15,190,237,252,233,244,247,248,13,137,202,248,11,141,
52 233,137,92,36,20,137,206,248,1,137,252,239,232,251,1,0,139,141,233,255,139, 52 68,194,252,248,15,182,139,233,131,195,4,137,149,233,137,133,233,137,92,36,
53 133,233,139,105,252,248,139,89,252,252,41,200,193,232,3,131,192,1,252,255, 53 20,137,206,248,1,137,252,239,232,251,1,0,139,141,233,255,139,133,233,139,
54 165,233,248,28,85,83,65,87,65,86,72,131,252,236,40,137,252,253,137,124,36, 54 105,252,248,139,89,252,252,41,200,193,232,3,131,192,1,252,255,165,233,248,
55 16,137,252,241,187,237,49,192,76,141,188,253,36,233,68,139,181,233,65,129, 55 28,85,83,65,87,65,86,72,131,252,236,40,137,252,253,137,124,36,16,137,252,
56 198,239,76,137,189,233,137,68,36,20,72,137,68,36,32,137,68,36,8,137,68,36, 56 241,187,237,49,192,76,141,188,253,36,233,68,139,181,233,65,129,198,239,76,
57 12,56,133,233,15,132,244,249,65,199,134,233,237,136,133,233,139,149,233,139, 57 137,189,233,137,68,36,20,72,137,68,36,32,137,68,36,8,137,68,36,12,56,133,
58 133,233,41,200,193,232,3,131,192,1,41,209,139,90,252,252,137,68,36,4,252, 58 233,15,132,244,249,65,199,134,233,237,136,133,233,139,149,233,139,133,233,
59 247,195,237,15,132,244,17,252,233,244,18,248,29,255,85,83,65,87,65,86,72, 59 41,200,193,232,3,131,192,1,41,209,139,90,252,252,137,68,36,4,252,247,195,
60 131,252,236,40,187,237,137,76,36,12,252,233,244,247,248,30,85,83,65,87,65, 60 237,15,132,244,17,252,233,244,18,248,29,255,85,83,65,87,65,86,72,131,252,
61 86,72,131,252,236,40,187,237,248,1,137,84,36,8,137,252,253,137,124,36,16, 61 236,40,187,237,137,76,36,12,252,233,244,247,248,30,85,83,65,87,65,86,72,131,
62 137,252,241,248,2,76,139,189,233,76,137,124,36,32,137,108,36,20,72,137,165, 62 252,236,40,187,237,248,1,137,84,36,8,137,252,253,137,124,36,16,137,252,241,
63 233,68,139,181,233,65,129,198,239,248,3,65,199,134,233,237,139,149,233,1, 63 248,2,76,139,189,233,76,137,124,36,32,137,108,36,20,72,137,165,233,68,139,
64 203,41,211,139,133,233,41,200,193,232,3,131,192,1,139,105,252,248,129,121, 64 181,233,65,129,198,239,248,3,65,199,134,233,237,139,149,233,1,203,41,211,
65 253,252,252,239,15,133,244,31,252,255,165,233,248,32,255,85,83,65,87,65,86, 65 139,133,233,41,200,193,232,3,131,192,1,139,105,252,248,129,121,253,252,252,
66 72,131,252,236,40,137,252,253,137,124,36,16,137,108,36,20,68,139,189,233, 66 239,15,133,244,31,252,255,165,233,248,32,255,85,83,65,87,65,86,72,131,252,
67 68,43,189,233,199,68,36,12,0,0,0,0,68,137,124,36,8,76,139,189,233,76,137, 67 236,40,137,252,253,137,124,36,16,137,108,36,20,68,139,189,233,68,43,189,233,
68 124,36,32,72,137,165,233,252,255,209,133,192,15,132,244,21,137,193,187,237, 68 199,68,36,12,0,0,0,0,68,137,124,36,8,76,139,189,233,76,137,124,36,32,72,137,
69 252,233,244,2,248,27,1,209,131,227,252,248,137,213,41,218,199,68,193,252, 69 165,233,252,255,209,133,192,15,132,244,21,137,193,187,237,252,233,244,2,248,
70 252,237,137,200,139,93,252,244,72,99,77,252,240,76,141,61,245,76,1,252,249, 70 27,1,209,131,227,252,248,137,213,41,218,199,68,193,252,252,237,137,200,139,
71 68,139,122,252,248,69,139,191,233,69,139,191,233,252,255,225,248,33,15,182, 71 93,252,244,72,99,77,252,240,76,141,61,245,76,1,252,249,68,139,122,252,248,
72 75,252,255,131,252,237,16,141,12,202,41,252,233,15,132,244,34,252,247,217, 72 69,139,191,233,69,139,191,233,252,255,225,248,33,15,182,75,252,255,131,252,
73 193,252,233,3,139,124,36,16,137,151,233,137,202,139,72,4,139,0,137,77,4,137, 73 237,16,141,12,202,41,252,233,15,132,244,34,252,247,217,193,252,233,3,139,
74 69,0,137,252,238,252,233,244,35,248,36,255,137,4,36,199,68,36,4,237,72,141, 74 124,36,16,137,151,233,137,202,139,72,4,139,0,137,77,4,137,69,0,137,252,238,
75 4,36,128,123,252,252,235,15,133,244,247,65,141,142,233,137,41,199,65,4,237, 75 252,233,244,35,248,36,255,137,4,36,199,68,36,4,237,72,141,4,36,128,123,252,
76 137,205,252,233,244,248,248,37,15,182,67,252,254,255,252,242,15,42,192,252, 76 252,235,15,133,244,247,65,141,142,233,137,41,199,65,4,237,137,205,252,233,
77 242,15,17,4,36,255,72,141,4,36,252,233,244,247,248,38,15,182,67,252,254,141, 77 244,248,248,37,15,182,67,252,254,255,252,242,15,42,192,252,242,15,17,4,36,
78 4,194,248,1,15,182,107,252,255,141,44,252,234,248,2,139,124,36,16,137,151, 78 255,72,141,4,36,252,233,244,247,248,38,15,182,67,252,254,141,4,194,248,1,
79 233,137,252,238,72,137,194,137,252,253,137,92,36,20,232,251,1,1,139,149,233, 79 15,182,107,252,255,141,44,252,234,248,2,139,124,36,16,137,151,233,137,252,
80 133,192,15,132,244,249,248,34,15,182,75,252,253,139,104,4,139,0,137,108,202, 80 238,72,137,194,137,252,253,137,92,36,20,232,251,1,1,139,149,233,133,192,15,
81 4,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 81 132,244,249,248,34,15,182,75,252,253,139,104,4,139,0,137,108,202,4,137,4,
82 252,238,248,3,139,141,233,137,89,252,244,141,153,233,41,211,139,105,252,248, 82 202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,
83 184,3,0,0,0,252,255,165,233,248,39,137,4,36,199,68,36,4,237,72,141,4,36,128, 83 248,3,139,141,233,137,89,252,244,141,153,233,41,211,139,105,252,248,184,3,
84 123,252,252,235,15,133,244,247,65,141,142,233,255,137,41,199,65,4,237,137, 84 0,0,0,252,255,165,233,248,39,137,4,36,199,68,36,4,237,72,141,4,36,128,123,
85 205,252,233,244,248,248,40,15,182,67,252,254,255,72,141,4,36,252,233,244, 85 252,252,235,15,133,244,247,65,141,142,233,255,137,41,199,65,4,237,137,205,
86 247,248,41,15,182,67,252,254,141,4,194,248,1,15,182,107,252,255,141,44,252, 86 252,233,244,248,248,40,15,182,67,252,254,255,72,141,4,36,252,233,244,247,
87 234,248,2,139,124,36,16,137,151,233,137,252,238,72,137,194,137,252,253,137, 87 248,41,15,182,67,252,254,141,4,194,248,1,15,182,107,252,255,141,44,252,234,
88 92,36,20,232,251,1,2,139,149,233,133,192,15,132,244,249,15,182,75,252,253, 88 248,2,139,124,36,16,137,151,233,137,252,238,72,137,194,137,252,253,137,92,
89 139,108,202,4,139,12,202,137,104,4,137,8,248,42,139,3,15,182,204,15,182,232, 89 36,20,232,251,1,2,139,149,233,133,192,15,132,244,249,15,182,75,252,253,139,
90 131,195,4,193,232,16,65,252,255,36,252,238,248,3,139,141,233,137,89,252,244, 90 108,202,4,139,12,202,137,104,4,137,8,248,42,139,3,15,182,204,15,182,232,131,
91 15,182,67,252,253,139,108,194,4,139,4,194,137,105,20,137,65,16,141,153,233, 91 195,4,193,232,16,65,252,255,36,252,238,248,3,139,141,233,137,89,252,244,15,
92 41,211,139,105,252,248,184,4,0,0,0,252,255,165,233,248,43,139,108,36,16,137, 92 182,67,252,253,139,108,194,4,139,4,194,137,105,20,137,65,16,141,153,233,41,
93 211,139,105,252,248,184,4,0,0,0,252,255,165,233,248,43,139,108,36,16,137,
93 149,233,141,52,202,141,20,194,137,252,239,15,182,75,252,252,137,92,36,20, 94 149,233,141,52,202,141,20,194,137,252,239,15,182,75,252,252,137,92,36,20,
94 232,251,1,3,248,3,139,149,233,131,252,248,1,15,135,244,44,248,4,255,141,91, 95 232,251,1,3,248,3,139,149,233,131,252,248,1,15,135,244,44,248,4,255,141,91,
95 4,15,130,244,252,248,5,15,183,67,252,254,141,156,253,131,233,248,6,139,3, 96 4,15,130,244,252,248,5,15,183,67,252,254,141,156,253,131,233,248,6,139,3,
@@ -467,210 +468,209 @@ static const unsigned char build_actionlist[13633] = {
467 233,219,209,221,217,195,248,1,219,252,233,218,209,221,217,195,255,221,225, 468 233,219,209,221,217,195,248,1,219,252,233,218,209,221,217,195,255,221,225,
468 223,224,252,246,196,1,15,132,244,248,217,201,248,2,221,216,195,248,1,221, 469 223,224,252,246,196,1,15,132,244,248,217,201,248,2,221,216,195,248,1,221,
469 225,223,224,252,246,196,1,15,133,244,248,217,201,248,2,221,216,195,255,248, 470 225,223,224,252,246,196,1,15,133,244,248,217,201,248,2,221,216,195,255,248,
470 155,137,252,248,83,15,162,137,6,137,94,4,137,78,8,137,86,12,91,195,255,249, 471 155,137,252,248,83,15,162,137,6,137,94,4,137,78,8,137,86,12,91,195,255,129,
471 255,129,124,253,202,4,239,15,135,244,43,129,124,253,194,4,239,15,135,244, 472 124,253,202,4,239,15,135,244,43,129,124,253,194,4,239,15,135,244,43,255,252,
472 43,255,252,242,15,16,4,194,131,195,4,102,15,46,4,202,255,221,4,202,221,4, 473 242,15,16,4,194,131,195,4,102,15,46,4,202,255,221,4,202,221,4,194,131,195,
473 194,131,195,4,255,223,252,233,221,216,255,218,252,233,223,224,158,255,15, 474 4,255,223,252,233,221,216,255,218,252,233,223,224,158,255,15,134,244,248,
474 134,244,248,255,15,131,244,248,255,248,1,15,183,67,252,254,141,156,253,131, 475 255,15,131,244,248,255,248,1,15,183,67,252,254,141,156,253,131,233,248,2,
475 233,248,2,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 476 139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,
476 252,238,255,139,108,194,4,131,195,4,129,252,253,239,15,135,244,251,129,124, 477 139,108,194,4,131,195,4,129,252,253,239,15,135,244,251,129,124,253,202,4,
477 253,202,4,239,15,135,244,251,255,252,242,15,16,4,194,102,15,46,4,202,255, 478 239,15,135,244,251,255,252,242,15,16,4,194,102,15,46,4,202,255,221,4,202,
478 221,4,202,221,4,194,255,15,138,244,248,15,133,244,248,255,15,138,244,248, 479 221,4,194,255,15,138,244,248,15,133,244,248,255,15,138,244,248,15,132,244,
479 15,132,244,247,255,248,1,15,183,67,252,254,141,156,253,131,233,248,2,255, 480 247,255,248,1,15,183,67,252,254,141,156,253,131,233,248,2,255,248,2,15,183,
480 248,2,15,183,67,252,254,141,156,253,131,233,248,1,255,248,5,57,108,202,4, 481 67,252,254,141,156,253,131,233,248,1,255,248,5,57,108,202,4,15,133,244,2,
481 15,133,244,2,129,252,253,239,15,131,244,1,139,12,202,139,4,194,57,193,15, 482 129,252,253,239,15,131,244,1,139,12,202,139,4,194,57,193,15,132,244,1,129,
482 132,244,1,129,252,253,239,15,135,244,2,139,169,233,133,252,237,15,132,244, 483 252,253,239,15,135,244,2,139,169,233,133,252,237,15,132,244,2,252,246,133,
483 2,252,246,133,233,235,15,133,244,2,255,49,252,237,255,189,1,0,0,0,255,252, 484 233,235,15,133,244,2,255,49,252,237,255,189,1,0,0,0,255,252,233,244,47,255,
484 233,244,47,255,72,252,247,208,131,195,4,129,124,253,202,4,239,15,133,244, 485 72,252,247,208,131,195,4,129,124,253,202,4,239,15,133,244,248,139,12,202,
485 248,139,12,202,65,59,12,135,255,131,195,4,129,124,253,202,4,239,15,135,244, 486 65,59,12,135,255,131,195,4,129,124,253,202,4,239,15,135,244,248,255,252,242,
486 248,255,252,242,65,15,16,4,199,102,15,46,4,202,255,221,4,202,65,221,4,199, 487 65,15,16,4,199,102,15,46,4,202,255,221,4,202,65,221,4,199,255,72,252,247,
487 255,72,252,247,208,131,195,4,57,68,202,4,255,139,108,194,4,131,195,4,129, 488 208,131,195,4,57,68,202,4,255,139,108,194,4,131,195,4,129,252,253,239,255,
488 252,253,239,255,15,131,244,247,255,15,130,244,247,255,137,108,202,4,139,44, 489 15,131,244,247,255,15,130,244,247,255,137,108,202,4,139,44,194,137,44,202,
489 194,137,44,202,255,15,183,67,252,254,141,156,253,131,233,248,1,139,3,15,182, 490 255,15,183,67,252,254,141,156,253,131,233,248,1,139,3,15,182,204,15,182,232,
490 204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,139,108,194, 491 131,195,4,193,232,16,65,252,255,36,252,238,255,139,108,194,4,139,4,194,137,
491 4,139,4,194,137,108,202,4,137,4,202,139,3,15,182,204,15,182,232,131,195,4, 492 108,202,4,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,
492 193,232,16,65,252,255,36,252,238,255,49,252,237,129,124,253,194,4,239,129, 493 255,36,252,238,255,49,252,237,129,124,253,194,4,239,129,213,239,137,108,202,
493 213,239,137,108,202,4,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, 494 4,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,
494 252,255,36,252,238,255,129,124,253,194,4,239,15,135,244,50,255,252,242,15, 495 255,129,124,253,194,4,239,15,135,244,50,255,252,242,15,16,4,194,72,184,237,
495 16,4,194,72,184,237,237,102,72,15,110,200,15,87,193,252,242,15,17,4,202,255, 496 237,102,72,15,110,200,15,87,193,252,242,15,17,4,202,255,221,4,194,217,224,
496 221,4,194,217,224,221,28,202,255,129,124,253,194,4,239,15,133,244,248,139, 497 221,28,202,255,129,124,253,194,4,239,15,133,244,248,139,4,194,255,15,87,192,
497 4,194,255,15,87,192,252,242,15,42,128,233,248,1,252,242,15,17,4,202,255,219, 498 252,242,15,42,128,233,248,1,252,242,15,17,4,202,255,219,128,233,248,1,221,
498 128,233,248,1,221,28,202,255,139,3,15,182,204,15,182,232,131,195,4,193,232, 499 28,202,255,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
499 16,65,252,255,36,252,238,248,2,129,124,253,194,4,239,15,133,244,52,139,60, 500 252,238,248,2,129,124,253,194,4,239,15,133,244,52,139,60,194,137,213,232,
500 194,137,213,232,251,1,18,255,252,242,15,42,192,137,252,234,255,15,182,75, 501 251,1,18,255,252,242,15,42,192,137,252,234,255,15,182,75,252,253,252,233,
501 252,253,252,233,244,1,255,15,182,252,236,15,182,192,255,129,124,253,252,234, 502 244,1,255,15,182,252,236,15,182,192,255,129,124,253,252,234,4,239,15,135,
502 4,239,15,135,244,48,255,252,242,15,16,4,252,234,252,242,65,15,88,4,199,255, 503 244,48,255,252,242,15,16,4,252,234,252,242,65,15,88,4,199,255,221,4,252,234,
503 221,4,252,234,65,220,4,199,255,129,124,253,252,234,4,239,15,135,244,49,255, 504 65,220,4,199,255,129,124,253,252,234,4,239,15,135,244,49,255,252,242,65,15,
504 252,242,65,15,16,4,199,252,242,15,88,4,252,234,255,65,221,4,199,220,4,252, 505 16,4,199,252,242,15,88,4,252,234,255,65,221,4,199,220,4,252,234,255,129,124,
505 234,255,129,124,253,252,234,4,239,15,135,244,51,129,124,253,194,4,239,15, 506 253,252,234,4,239,15,135,244,51,129,124,253,194,4,239,15,135,244,51,255,252,
506 135,244,51,255,252,242,15,16,4,252,234,252,242,15,88,4,194,255,221,4,252, 507 242,15,16,4,252,234,252,242,15,88,4,194,255,221,4,252,234,220,4,194,255,252,
507 234,220,4,194,255,252,242,15,16,4,252,234,252,242,65,15,92,4,199,255,221, 508 242,15,16,4,252,234,252,242,65,15,92,4,199,255,221,4,252,234,65,220,36,199,
508 4,252,234,65,220,36,199,255,252,242,65,15,16,4,199,252,242,15,92,4,252,234, 509 255,252,242,65,15,16,4,199,252,242,15,92,4,252,234,255,65,221,4,199,220,36,
509 255,65,221,4,199,220,36,252,234,255,252,242,15,16,4,252,234,252,242,15,92, 510 252,234,255,252,242,15,16,4,252,234,252,242,15,92,4,194,255,221,4,252,234,
510 4,194,255,221,4,252,234,220,36,194,255,252,242,15,16,4,252,234,252,242,65, 511 220,36,194,255,252,242,15,16,4,252,234,252,242,65,15,89,4,199,255,221,4,252,
511 15,89,4,199,255,221,4,252,234,65,220,12,199,255,252,242,65,15,16,4,199,252, 512 234,65,220,12,199,255,252,242,65,15,16,4,199,252,242,15,89,4,252,234,255,
512 242,15,89,4,252,234,255,65,221,4,199,220,12,252,234,255,252,242,15,16,4,252, 513 65,221,4,199,220,12,252,234,255,252,242,15,16,4,252,234,252,242,15,89,4,194,
513 234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,252,242,15,16,4, 514 255,221,4,252,234,220,12,194,255,252,242,15,16,4,252,234,252,242,65,15,94,
514 252,234,252,242,65,15,94,4,199,255,221,4,252,234,65,220,52,199,255,252,242, 515 4,199,255,221,4,252,234,65,220,52,199,255,252,242,65,15,16,4,199,252,242,
515 65,15,16,4,199,252,242,15,94,4,252,234,255,65,221,4,199,220,52,252,234,255, 516 15,94,4,252,234,255,65,221,4,199,220,52,252,234,255,252,242,15,16,4,252,234,
516 252,242,15,16,4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,52,194, 517 252,242,15,94,4,194,255,221,4,252,234,220,52,194,255,252,242,15,16,4,252,
517 255,252,242,15,16,4,252,234,252,242,65,15,16,12,199,255,221,4,252,234,65, 518 234,252,242,65,15,16,12,199,255,221,4,252,234,65,221,4,199,255,252,242,65,
518 221,4,199,255,252,242,65,15,16,4,199,252,242,15,16,12,252,234,255,65,221, 519 15,16,4,199,252,242,15,16,12,252,234,255,65,221,4,199,221,4,252,234,255,252,
519 4,199,221,4,252,234,255,252,242,15,16,4,252,234,252,242,15,16,12,194,255, 520 242,15,16,4,252,234,252,242,15,16,12,194,255,221,4,252,234,221,4,194,255,
520 221,4,252,234,221,4,194,255,248,156,232,244,148,255,252,233,244,156,255,232, 521 248,156,232,244,148,255,252,233,244,156,255,232,244,108,255,15,182,252,236,
521 244,108,255,15,182,252,236,15,182,192,139,124,36,16,137,151,233,141,52,194, 522 15,182,192,139,124,36,16,137,151,233,141,52,194,137,194,41,252,234,248,35,
522 137,194,41,252,234,248,35,137,252,253,137,92,36,20,232,251,1,21,139,149,233, 523 137,252,253,137,92,36,20,232,251,1,21,139,149,233,133,192,15,133,244,44,15,
523 133,192,15,133,244,44,15,182,107,252,255,15,182,75,252,253,139,68,252,234, 524 182,107,252,255,15,182,75,252,253,139,68,252,234,4,139,44,252,234,137,68,
524 4,139,44,252,234,137,68,202,4,137,44,202,139,3,15,182,204,15,182,232,131, 525 202,4,137,44,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,
525 195,4,193,232,16,65,252,255,36,252,238,255,72,252,247,208,65,139,4,135,199, 526 255,36,252,238,255,72,252,247,208,65,139,4,135,199,68,202,4,237,137,4,202,
526 68,202,4,237,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, 527 139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,
527 252,255,36,252,238,255,15,191,192,252,242,15,42,192,252,242,15,17,4,202,255, 528 15,191,192,252,242,15,42,192,252,242,15,17,4,202,255,223,67,252,254,221,28,
528 223,67,252,254,221,28,202,255,252,242,65,15,16,4,199,252,242,15,17,4,202, 529 202,255,252,242,65,15,16,4,199,252,242,15,17,4,202,255,65,221,4,199,221,28,
529 255,65,221,4,199,221,28,202,255,72,252,247,208,137,68,202,4,139,3,15,182, 530 202,255,72,252,247,208,137,68,202,4,139,3,15,182,204,15,182,232,131,195,4,
530 204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,141,76,202, 531 193,232,16,65,252,255,36,252,238,255,141,76,202,12,141,68,194,4,189,237,137,
531 12,141,68,194,4,189,237,137,105,252,248,248,1,137,41,131,193,8,57,193,15, 532 105,252,248,248,1,137,41,131,193,8,57,193,15,134,244,1,139,3,15,182,204,15,
532 134,244,1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, 533 182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,139,106,252,248,139,
533 252,238,255,139,106,252,248,139,172,253,133,233,139,173,233,139,69,4,139, 534 172,253,133,233,139,173,233,139,69,4,139,109,0,137,68,202,4,137,44,202,139,
534 109,0,137,68,202,4,137,44,202,139,3,15,182,204,15,182,232,131,195,4,193,232, 535 3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,139,
535 16,65,252,255,36,252,238,255,139,106,252,248,139,172,253,141,233,128,189, 536 106,252,248,139,172,253,141,233,128,189,233,0,139,173,233,139,12,194,139,
536 233,0,139,173,233,139,12,194,139,68,194,4,137,77,0,137,69,4,15,132,244,247, 537 68,194,4,137,77,0,137,69,4,15,132,244,247,252,246,133,233,235,15,133,244,
537 252,246,133,233,235,15,133,244,248,248,1,139,3,15,182,204,15,182,232,131, 538 248,248,1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
538 195,4,193,232,16,65,252,255,36,252,238,248,2,129,232,239,129,252,248,239, 539 252,238,248,2,129,232,239,129,252,248,239,15,134,244,1,252,246,129,233,235,
539 15,134,244,1,252,246,129,233,235,15,132,244,1,137,252,238,137,213,65,141, 540 15,132,244,1,137,252,238,137,213,65,141,190,233,255,232,251,1,22,137,252,
540 190,233,255,232,251,1,22,137,252,234,252,233,244,1,255,72,252,247,208,139, 541 234,252,233,244,1,255,72,252,247,208,139,106,252,248,139,172,253,141,233,
541 106,252,248,139,172,253,141,233,65,139,12,135,139,133,233,137,8,199,64,4, 542 65,139,12,135,139,133,233,137,8,199,64,4,237,252,246,133,233,235,15,133,244,
542 237,252,246,133,233,235,15,133,244,248,248,1,139,3,15,182,204,15,182,232, 543 248,248,1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
543 131,195,4,193,232,16,65,252,255,36,252,238,248,2,252,246,129,233,235,15,132, 544 252,238,248,2,252,246,129,233,235,15,132,244,1,128,189,233,0,15,132,244,1,
544 244,1,128,189,233,0,15,132,244,1,137,213,137,198,65,141,190,233,232,251,1, 545 137,213,137,198,65,141,190,233,232,251,1,22,137,252,234,252,233,244,1,255,
545 22,137,252,234,252,233,244,1,255,139,106,252,248,255,252,242,65,15,16,4,199, 546 139,106,252,248,255,252,242,65,15,16,4,199,255,139,172,253,141,233,139,141,
546 255,139,172,253,141,233,139,141,233,255,72,252,247,208,139,106,252,248,139, 547 233,255,72,252,247,208,139,106,252,248,139,172,253,141,233,139,141,233,137,
547 172,253,141,233,139,141,233,137,65,4,139,3,15,182,204,15,182,232,131,195, 548 65,4,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,
548 4,193,232,16,65,252,255,36,252,238,255,141,156,253,131,233,139,108,36,16, 549 255,141,156,253,131,233,139,108,36,16,131,189,233,0,15,132,244,247,137,149,
549 131,189,233,0,15,132,244,247,137,149,233,141,52,202,137,252,239,232,251,1, 550 233,141,52,202,137,252,239,232,251,1,23,139,149,233,248,1,139,3,15,182,204,
550 23,139,149,233,248,1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, 551 15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,72,252,247,208,
551 252,255,36,252,238,255,72,252,247,208,139,108,36,16,137,149,233,139,82,252, 552 139,108,36,16,137,149,233,139,82,252,248,65,139,52,135,137,252,239,137,92,
552 248,65,139,52,135,137,252,239,137,92,36,20,232,251,1,24,139,149,233,15,182, 553 36,20,232,251,1,24,139,149,233,15,182,75,252,253,137,4,202,199,68,202,4,237,
553 75,252,253,137,4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195, 554 139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,
554 4,193,232,16,65,252,255,36,252,238,255,139,124,36,16,137,151,233,248,1,137, 555 139,124,36,16,137,151,233,248,1,137,194,37,252,255,7,0,0,193,252,234,11,61,
555 194,37,252,255,7,0,0,193,252,234,11,61,252,255,7,0,0,15,132,244,249,248,2, 556 252,255,7,0,0,15,132,244,249,248,2,137,198,65,139,134,233,137,252,253,65,
556 137,198,65,139,134,233,137,252,253,65,59,134,233,137,92,36,20,15,131,244, 557 59,134,233,137,92,36,20,15,131,244,251,232,251,1,25,139,149,233,15,182,75,
557 251,232,251,1,25,139,149,233,15,182,75,252,253,137,4,202,199,68,202,4,237, 558 252,253,137,4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,
558 139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248, 559 193,232,16,65,252,255,36,252,238,248,3,184,1,8,0,0,252,233,244,2,248,5,232,
559 3,184,1,8,0,0,252,233,244,2,248,5,232,251,1,26,15,183,67,252,254,137,252, 560 251,1,26,15,183,67,252,254,137,252,239,252,233,244,1,255,72,252,247,208,139,
560 239,252,233,244,1,255,72,252,247,208,139,108,36,16,65,139,142,233,137,92, 561 108,36,16,65,139,142,233,137,92,36,20,65,59,142,233,137,149,233,15,131,244,
561 36,20,65,59,142,233,137,149,233,15,131,244,249,248,2,65,139,52,135,137,252, 562 249,248,2,65,139,52,135,137,252,239,232,251,1,27,139,149,233,15,182,75,252,
562 239,232,251,1,27,139,149,233,15,182,75,252,253,137,4,202,199,68,202,4,237, 563 253,137,4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193,
563 139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248, 564 232,16,65,252,255,36,252,238,248,3,137,252,239,232,251,1,26,15,183,67,252,
564 3,137,252,239,232,251,1,26,15,183,67,252,254,72,252,247,208,252,233,244,2, 565 254,72,252,247,208,252,233,244,2,255,72,252,247,208,139,106,252,248,139,173,
565 255,72,252,247,208,139,106,252,248,139,173,233,65,139,4,135,252,233,244,157, 566 233,65,139,4,135,252,233,244,157,255,72,252,247,208,139,106,252,248,139,173,
566 255,72,252,247,208,139,106,252,248,139,173,233,65,139,4,135,252,233,244,158, 567 233,65,139,4,135,252,233,244,158,255,15,182,252,236,15,182,192,129,124,253,
567 255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,38,139, 568 252,234,4,239,15,133,244,38,139,44,252,234,129,124,253,194,4,239,15,135,244,
568 44,252,234,129,124,253,194,4,239,15,135,244,251,255,252,242,15,16,4,194,252, 569 251,255,252,242,15,16,4,194,252,242,15,45,192,252,242,15,42,200,102,15,46,
569 242,15,45,192,252,242,15,42,200,102,15,46,193,255,15,133,244,38,59,133,233, 570 193,255,15,133,244,38,59,133,233,15,131,244,38,193,224,3,3,133,233,129,120,
570 15,131,244,38,193,224,3,3,133,233,129,120,253,4,239,15,132,244,248,248,1, 571 253,4,239,15,132,244,248,248,1,139,40,139,64,4,137,44,202,137,68,202,4,139,
571 139,40,139,64,4,137,44,202,137,68,202,4,139,3,15,182,204,15,182,232,131,195, 572 3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,2,
572 4,193,232,16,65,252,255,36,252,238,248,2,131,189,233,0,15,132,244,1,139,141, 573 131,189,233,0,15,132,244,1,139,141,233,252,246,129,233,235,15,132,244,38,
573 233,252,246,129,233,235,15,132,244,38,15,182,75,252,253,252,233,244,1,248, 574 15,182,75,252,253,252,233,244,1,248,5,255,129,124,253,194,4,239,15,133,244,
574 5,255,129,124,253,194,4,239,15,133,244,38,139,4,194,252,233,244,157,255,15, 575 38,139,4,194,252,233,244,157,255,15,182,252,236,15,182,192,72,252,247,208,
575 182,252,236,15,182,192,72,252,247,208,65,139,4,135,129,124,253,252,234,4, 576 65,139,4,135,129,124,253,252,234,4,239,15,133,244,36,139,44,252,234,248,157,
576 239,15,133,244,36,139,44,252,234,248,157,139,141,233,35,136,233,105,201,239, 577 139,141,233,35,136,233,105,201,239,3,141,233,248,1,129,185,233,239,15,133,
577 3,141,233,248,1,129,185,233,239,15,133,244,250,57,129,233,15,133,244,250, 578 244,250,57,129,233,15,133,244,250,129,121,253,4,239,15,132,244,251,15,182,
578 129,121,253,4,239,15,132,244,251,15,182,67,252,253,139,41,139,73,4,137,44, 579 67,252,253,139,41,139,73,4,137,44,194,248,2,255,137,76,194,4,139,3,15,182,
579 194,248,2,255,137,76,194,4,139,3,15,182,204,15,182,232,131,195,4,193,232, 580 204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,15,182,67,
580 16,65,252,255,36,252,238,248,3,15,182,67,252,253,185,237,252,233,244,2,248, 581 252,253,185,237,252,233,244,2,248,4,139,137,233,133,201,15,133,244,1,248,
581 4,139,137,233,133,201,15,133,244,1,248,5,139,141,233,133,201,15,132,244,3, 582 5,139,141,233,133,201,15,132,244,3,252,246,129,233,235,15,133,244,3,252,233,
582 252,246,129,233,235,15,133,244,3,252,233,244,36,255,15,182,252,236,15,182, 583 244,36,255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,
583 192,129,124,253,252,234,4,239,15,133,244,37,139,44,252,234,59,133,233,15, 584 37,139,44,252,234,59,133,233,15,131,244,37,193,224,3,3,133,233,129,120,253,
584 131,244,37,193,224,3,3,133,233,129,120,253,4,239,15,132,244,248,248,1,139, 585 4,239,15,132,244,248,248,1,139,40,139,64,4,137,44,202,137,68,202,4,139,3,
585 40,139,64,4,137,44,202,137,68,202,4,139,3,15,182,204,15,182,232,131,195,4, 586 15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,2,131,
586 193,232,16,65,252,255,36,252,238,248,2,131,189,233,0,15,132,244,1,139,141, 587 189,233,0,15,132,244,1,139,141,233,252,246,129,233,235,15,132,244,37,255,
587 233,252,246,129,233,235,15,132,244,37,255,15,182,252,236,15,182,192,129,124, 588 15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,41,139,44,
588 253,252,234,4,239,15,133,244,41,139,44,252,234,129,124,253,194,4,239,15,135, 589 252,234,129,124,253,194,4,239,15,135,244,251,255,15,133,244,41,59,133,233,
589 244,251,255,15,133,244,41,59,133,233,15,131,244,41,193,224,3,3,133,233,129, 590 15,131,244,41,193,224,3,3,133,233,129,120,253,4,239,15,132,244,249,248,1,
590 120,253,4,239,15,132,244,249,248,1,252,246,133,233,235,15,133,244,253,248, 591 252,246,133,233,235,15,133,244,253,248,2,139,108,202,4,139,12,202,137,104,
591 2,139,108,202,4,139,12,202,137,104,4,137,8,139,3,15,182,204,15,182,232,131,
592 195,4,193,232,16,65,252,255,36,252,238,248,3,131,189,233,0,15,132,244,1,139,
593 141,233,255,252,246,129,233,235,15,132,244,41,15,182,75,252,253,252,233,244,
594 1,248,5,129,124,253,194,4,239,15,133,244,41,139,4,194,252,233,244,158,248,
595 7,128,165,233,235,65,139,142,233,65,137,174,233,137,141,233,15,182,75,252,
596 253,252,233,244,2,255,15,182,252,236,15,182,192,72,252,247,208,65,139,4,135,
597 129,124,253,252,234,4,239,15,133,244,39,139,44,252,234,248,158,139,141,233,
598 35,136,233,105,201,239,198,133,233,0,3,141,233,248,1,129,185,233,239,15,133,
599 244,251,57,129,233,15,133,244,251,129,121,253,4,239,15,132,244,250,248,2,
600 255,252,246,133,233,235,15,133,244,253,248,3,15,182,67,252,253,139,108,194,
601 4,139,4,194,137,105,4,137,1,139,3,15,182,204,15,182,232,131,195,4,193,232,
602 16,65,252,255,36,252,238,248,4,131,189,233,0,15,132,244,2,137,12,36,139,141,
603 233,252,246,129,233,235,15,132,244,39,139,12,36,252,233,244,2,248,5,139,137,
604 233,133,201,15,133,244,1,255,139,141,233,133,201,15,132,244,252,252,246,129,
605 233,235,15,132,244,39,248,6,137,4,36,199,68,36,4,237,137,108,36,24,139,124,
606 36,16,137,151,233,72,141,20,36,137,252,238,137,252,253,137,92,36,20,232,251,
607 1,28,139,149,233,139,108,36,24,137,193,252,233,244,2,248,7,128,165,233,235,
608 65,139,134,233,65,137,174,233,137,133,233,252,233,244,3,255,15,182,252,236,
609 15,182,192,129,124,253,252,234,4,239,15,133,244,40,139,44,252,234,59,133,
610 233,15,131,244,40,193,224,3,3,133,233,129,120,253,4,239,15,132,244,249,248,
611 1,252,246,133,233,235,15,133,244,253,248,2,139,108,202,4,139,12,202,137,104,
612 4,137,8,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252, 592 4,137,8,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,
613 238,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252,246,129,233,235, 593 238,248,3,131,189,233,0,15,132,244,1,139,141,233,255,252,246,129,233,235,
614 15,132,244,40,15,182,75,252,253,252,233,244,1,248,7,128,165,233,235,65,139, 594 15,132,244,41,15,182,75,252,253,252,233,244,1,248,5,129,124,253,194,4,239,
615 142,233,65,137,174,233,137,141,233,15,182,75,252,253,252,233,244,2,255,68, 595 15,133,244,41,139,4,194,252,233,244,158,248,7,128,165,233,235,65,139,142,
616 137,60,36,255,248,1,141,12,202,139,105,252,248,252,246,133,233,235,15,133, 596 233,65,137,174,233,137,141,233,15,182,75,252,253,252,233,244,2,255,15,182,
617 244,253,248,2,139,68,36,4,255,252,242,68,15,45,252,248,255,131,232,1,15,132, 597 252,236,15,182,192,72,252,247,208,65,139,4,135,129,124,253,252,234,4,239,
618 244,250,68,1,252,248,59,133,233,15,131,244,251,68,41,252,248,65,193,231,3, 598 15,133,244,39,139,44,252,234,248,158,139,141,233,35,136,233,105,201,239,198,
619 68,3,189,233,248,3,139,41,65,137,47,139,105,4,131,193,8,65,137,111,4,65,131, 599 133,233,0,3,141,233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133,
620 199,8,131,232,1,15,133,244,3,248,4,68,139,60,36,139,3,15,182,204,15,182,232, 600 244,251,129,121,253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15,
621 131,195,4,193,232,16,65,252,255,36,252,238,248,5,139,124,36,16,137,151,233, 601 133,244,253,248,3,15,182,67,252,253,139,108,194,4,139,4,194,137,105,4,137,
622 137,252,238,137,194,137,252,253,137,92,36,20,232,251,1,29,139,149,233,15, 602 1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,
623 182,75,252,253,252,233,244,1,248,7,128,165,233,235,65,139,134,233,65,137, 603 248,4,131,189,233,0,15,132,244,2,137,12,36,139,141,233,252,246,129,233,235,
624 174,233,255,137,133,233,252,233,244,2,255,3,68,36,4,255,141,76,202,8,139, 604 15,132,244,39,139,12,36,252,233,244,2,248,5,139,137,233,133,201,15,133,244,
625 105,252,248,129,121,253,252,252,239,15,133,244,31,252,255,165,233,255,141, 605 1,255,139,141,233,133,201,15,132,244,252,252,246,129,233,235,15,132,244,39,
626 76,202,8,65,137,215,139,105,252,248,129,121,253,252,252,239,15,133,244,31, 606 248,6,137,4,36,199,68,36,4,237,137,108,36,24,139,124,36,16,137,151,233,72,
627 248,53,139,90,252,252,252,247,195,237,15,133,244,253,248,1,137,106,252,248, 607 141,20,36,137,252,238,137,252,253,137,92,36,20,232,251,1,28,139,149,233,139,
628 137,68,36,4,131,232,1,15,132,244,249,248,2,139,41,65,137,47,139,105,4,65, 608 108,36,24,137,193,252,233,244,2,248,7,128,165,233,235,65,139,134,233,65,137,
629 137,111,4,65,131,199,8,131,193,8,131,232,1,15,133,244,2,139,106,252,248,248, 609 174,233,137,133,233,252,233,244,3,255,15,182,252,236,15,182,192,129,124,253,
630 3,137,209,128,189,233,1,15,135,244,251,248,4,139,68,36,4,252,255,165,233, 610 252,234,4,239,15,133,244,40,139,44,252,234,59,133,233,15,131,244,40,193,224,
631 248,5,255,252,247,195,237,15,133,244,4,15,182,67,252,253,72,252,247,208,141, 611 3,3,133,233,129,120,253,4,239,15,132,244,249,248,1,252,246,133,233,235,15,
632 20,194,68,139,122,252,248,69,139,191,233,69,139,191,233,252,233,244,4,248, 612 133,244,253,248,2,139,108,202,4,139,12,202,137,104,4,137,8,139,3,15,182,204,
633 7,15,139,244,1,131,227,252,248,41,218,65,137,215,139,90,252,252,252,233,244, 613 15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,3,131,189,233,0,
634 1,255,141,76,202,8,139,105,232,139,65,252,236,137,41,137,65,4,139,105,252, 614 15,132,244,1,255,139,141,233,252,246,129,233,235,15,132,244,40,15,182,75,
635 240,139,65,252,244,137,105,8,137,65,12,139,105,224,139,65,228,137,105,252, 615 252,253,252,233,244,1,248,7,128,165,233,235,65,139,142,233,65,137,174,233,
636 248,137,65,252,252,129,252,248,239,184,3,0,0,0,15,133,244,31,252,255,165, 616 137,141,233,15,182,75,252,253,252,233,244,2,255,68,137,60,36,255,248,1,141,
637 233,255,15,182,252,236,139,66,252,248,141,12,202,139,128,233,15,182,128,233, 617 12,202,139,105,252,248,252,246,133,233,235,15,133,244,253,248,2,139,68,36,
638 68,137,60,36,68,141,188,253,194,233,68,43,122,252,252,133,252,237,15,132, 618 4,255,252,242,68,15,45,252,248,255,131,232,1,15,132,244,250,68,1,252,248,
639 244,251,141,108,252,233,252,248,65,57,215,15,131,244,248,248,1,65,139,71, 619 59,133,233,15,131,244,251,68,41,252,248,65,193,231,3,68,3,189,233,248,3,139,
640 252,248,137,1,65,139,71,252,252,65,131,199,8,137,65,4,131,193,8,57,252,233, 620 41,65,137,47,139,105,4,131,193,8,65,137,111,4,65,131,199,8,131,232,1,15,133,
641 15,131,244,249,65,57,215,15,130,244,1,248,2,199,65,4,237,131,193,8,57,252, 621 244,3,248,4,68,139,60,36,139,3,15,182,204,15,182,232,131,195,4,193,232,16,
642 233,15,130,244,2,248,3,68,139,60,36,139,3,15,182,204,15,182,232,131,195,4, 622 65,252,255,36,252,238,248,5,139,124,36,16,137,151,233,137,252,238,137,194,
643 193,232,16,65,252,255,36,252,238,248,5,199,68,36,4,1,0,0,0,137,208,68,41, 623 137,252,253,137,92,36,20,232,251,1,29,139,149,233,15,182,75,252,253,252,233,
644 252,248,15,134,244,3,255,137,197,193,252,237,3,131,197,1,137,108,36,4,139, 624 244,1,248,7,128,165,233,235,65,139,134,233,65,137,174,233,255,137,133,233,
645 108,36,16,1,200,59,133,233,15,135,244,253,248,6,65,139,71,252,248,137,1,65, 625 252,233,244,2,255,3,68,36,4,255,141,76,202,8,139,105,252,248,129,121,253,
646 139,71,252,252,65,131,199,8,137,65,4,131,193,8,65,57,215,15,130,244,6,252, 626 252,252,239,15,133,244,31,252,255,165,233,255,141,76,202,8,65,137,215,139,
647 233,244,3,248,7,137,149,233,137,141,233,137,92,36,20,65,41,215,139,116,36, 627 105,252,248,129,121,253,252,252,239,15,133,244,31,248,53,139,90,252,252,252,
648 4,131,252,238,1,137,252,239,232,251,1,0,139,149,233,139,141,233,65,1,215, 628 247,195,237,15,133,244,253,248,1,137,106,252,248,137,68,36,4,131,232,1,15,
649 252,233,244,6,255,193,225,3,255,248,1,139,90,252,252,137,68,36,4,252,247, 629 132,244,249,248,2,139,41,65,137,47,139,105,4,65,137,111,4,65,131,199,8,131,
650 195,237,15,133,244,253,255,248,17,65,137,215,131,232,1,15,132,244,249,248, 630 193,8,131,232,1,15,133,244,2,139,106,252,248,248,3,137,209,128,189,233,1,
651 2,65,139,44,15,65,137,111,252,248,65,139,108,15,4,65,137,111,252,252,65,131, 631 15,135,244,251,248,4,139,68,36,4,252,255,165,233,248,5,255,252,247,195,237,
652 199,8,131,232,1,15,133,244,2,248,3,139,68,36,4,15,182,107,252,255,248,5,57, 632 15,133,244,4,15,182,67,252,253,72,252,247,208,141,20,194,68,139,122,252,248,
653 197,15,135,244,252,255,139,108,10,4,137,106,252,252,139,44,10,137,106,252, 633 69,139,191,233,69,139,191,233,252,233,244,4,248,7,15,139,244,1,131,227,252,
654 248,255,248,5,56,67,252,255,15,135,244,252,255,15,182,75,252,253,72,252,247, 634 248,41,218,65,137,215,139,90,252,252,252,233,244,1,255,141,76,202,8,139,105,
655 209,141,20,202,68,139,122,252,248,69,139,191,233,69,139,191,233,139,3,15, 635 232,139,65,252,236,137,41,137,65,4,139,105,252,240,139,65,252,244,137,105,
656 182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248,6,255,65, 636 8,137,65,12,139,105,224,139,65,228,137,105,252,248,137,65,252,252,129,252,
657 199,71,252,252,237,65,131,199,8,255,199,68,194,252,244,237,255,131,192,1, 637 248,239,184,3,0,0,0,15,133,244,31,252,255,165,233,255,15,182,252,236,139,
658 252,233,244,5,248,7,15,139,244,18,131,227,252,248,41,218,255,1,217,255,137, 638 66,252,248,141,12,202,139,128,233,15,182,128,233,68,137,60,36,68,141,188,
659 221,209,252,237,129,229,239,102,65,131,172,253,46,233,1,15,132,244,141,255, 639 253,194,233,68,43,122,252,252,133,252,237,15,132,244,251,141,108,252,233,
660 141,12,202,255,129,121,253,4,239,15,135,244,54,129,121,253,12,239,15,135, 640 252,248,65,57,215,15,131,244,248,248,1,65,139,71,252,248,137,1,65,139,71,
661 244,54,255,139,105,20,255,129,252,253,239,15,135,244,54,255,252,242,15,16, 641 252,252,65,131,199,8,137,65,4,131,193,8,57,252,233,15,131,244,249,65,57,215,
662 1,252,242,15,16,73,8,255,252,242,15,88,65,16,252,242,15,17,1,133,252,237, 642 15,130,244,1,248,2,199,65,4,237,131,193,8,57,252,233,15,130,244,2,248,3,68,
663 15,136,244,249,255,15,140,244,249,255,102,15,46,200,248,1,252,242,15,17,65, 643 139,60,36,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,
664 24,255,221,65,8,221,1,255,220,65,16,221,17,221,81,24,133,252,237,15,136,244, 644 252,238,248,5,199,68,36,4,1,0,0,0,137,208,68,41,252,248,15,134,244,3,255,
665 247,255,221,81,24,15,140,244,247,255,217,201,248,1,255,15,183,67,252,254, 645 137,197,193,252,237,3,131,197,1,137,108,36,4,139,108,36,16,1,200,59,133,233,
666 255,15,131,244,248,141,156,253,131,233,255,141,156,253,131,233,15,183,67, 646 15,135,244,253,248,6,65,139,71,252,248,137,1,65,139,71,252,252,65,131,199,
667 252,254,15,131,245,255,15,130,244,248,141,156,253,131,233,255,248,3,102,15, 647 8,137,65,4,131,193,8,65,57,215,15,130,244,6,252,233,244,3,248,7,137,149,233,
668 46,193,252,233,244,1,255,141,12,202,139,105,4,129,252,253,239,15,132,244, 648 137,141,233,137,92,36,20,65,41,215,139,116,36,4,131,252,238,1,137,252,239,
669 247,255,137,105,252,252,139,41,137,105,252,248,252,233,245,255,141,156,253, 649 232,251,1,0,139,149,233,139,141,233,65,1,215,252,233,244,6,255,193,225,3,
670 131,233,139,1,137,105,252,252,137,65,252,248,255,65,139,142,233,139,4,129, 650 255,248,1,139,90,252,252,137,68,36,4,252,247,195,237,15,133,244,253,255,248,
671 72,139,128,233,139,108,36,16,65,137,150,233,65,137,174,233,252,255,224,255, 651 17,65,137,215,131,232,1,15,132,244,249,248,2,65,139,44,15,65,137,111,252,
672 141,156,253,131,233,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252, 652 248,65,139,108,15,4,65,137,111,252,252,65,131,199,8,131,232,1,15,133,244,
673 255,36,252,238,255,254,0 653 2,248,3,139,68,36,4,15,182,107,252,255,248,5,57,197,15,135,244,252,255,139,
654 108,10,4,137,106,252,252,139,44,10,137,106,252,248,255,248,5,56,67,252,255,
655 15,135,244,252,255,15,182,75,252,253,72,252,247,209,141,20,202,68,139,122,
656 252,248,69,139,191,233,69,139,191,233,139,3,15,182,204,15,182,232,131,195,
657 4,193,232,16,65,252,255,36,252,238,248,6,255,65,199,71,252,252,237,65,131,
658 199,8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248,7,15,139,
659 244,18,131,227,252,248,41,218,255,1,217,255,137,221,209,252,237,129,229,239,
660 102,65,131,172,253,46,233,1,15,132,244,141,255,141,12,202,255,129,121,253,
661 4,239,15,135,244,54,129,121,253,12,239,15,135,244,54,255,139,105,20,255,129,
662 252,253,239,15,135,244,54,255,252,242,15,16,1,252,242,15,16,73,8,255,252,
663 242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244,249,255,15,140,244,
664 249,255,102,15,46,200,248,1,252,242,15,17,65,24,255,221,65,8,221,1,255,220,
665 65,16,221,17,221,81,24,133,252,237,15,136,244,247,255,221,81,24,15,140,244,
666 247,255,217,201,248,1,255,15,183,67,252,254,255,15,131,244,248,141,156,253,
667 131,233,255,141,156,253,131,233,15,183,67,252,254,15,131,245,255,15,130,244,
668 248,141,156,253,131,233,255,248,3,102,15,46,193,252,233,244,1,255,141,12,
669 202,139,105,4,129,252,253,239,15,132,244,247,255,137,105,252,252,139,41,137,
670 105,252,248,252,233,245,255,141,156,253,131,233,139,1,137,105,252,252,137,
671 65,252,248,255,65,139,142,233,139,4,129,72,139,128,233,139,108,36,16,65,137,
672 150,233,65,137,174,233,252,255,224,255,141,156,253,131,233,139,3,15,182,204,
673 15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,254,0
674}; 674};
675 675
676enum { 676enum {
@@ -1026,395 +1026,399 @@ static const char *const extnames[] = {
1026#define DtE(_V) (int)(ptrdiff_t)&(((ExitInfo *)0)_V) 1026#define DtE(_V) (int)(ptrdiff_t)&(((ExitInfo *)0)_V)
1027#define DISPATCH_GL(field) (GG_DISP2G + (int)offsetof(global_State, field)) 1027#define DISPATCH_GL(field) (GG_DISP2G + (int)offsetof(global_State, field))
1028#define DISPATCH_J(field) (GG_DISP2J + (int)offsetof(jit_State, field)) 1028#define DISPATCH_J(field) (GG_DISP2J + (int)offsetof(jit_State, field))
1029#define PC2PROTO(field) ((int)offsetof(GCproto, field)-(int)sizeof(GCproto))
1029 1030
1030/* Generate subroutines used by opcodes and other parts of the VM. */ 1031/* Generate subroutines used by opcodes and other parts of the VM. */
1031/* The .code_sub section should be last to help static branch prediction. */ 1032/* The .code_sub section should be last to help static branch prediction. */
1032static void build_subroutines(BuildCtx *ctx, int cmov, int sse) 1033static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1033{ 1034{
1034 dasm_put(Dst, 0); 1035 dasm_put(Dst, 0);
1035 dasm_put(Dst, 2, Dt7(->pt), Dt9(->framesize), sizeof(GCproto), Dt9(->k), Dt1(->maxstack), LJ_TNIL); 1036 dasm_put(Dst, 2, Dt7(->pc), PC2PROTO(framesize), PC2PROTO(k), Dt1(->maxstack), PC2PROTO(numparams));
1036#if LJ_HASJIT 1037#if LJ_HASJIT
1037#endif 1038#endif
1038 dasm_put(Dst, 64, FRAME_VARG, -FRAME_VARG, Dt7(->pt), Dt9(->framesize), Dt1(->maxstack), Dt9(->numparams), LJ_TNIL, Dt9(->framesize), sizeof(GCproto)); 1039 dasm_put(Dst, 48, LJ_TNIL, FRAME_VARG, -FRAME_VARG, Dt7(->pc), PC2PROTO(framesize), Dt1(->maxstack), PC2PROTO(numparams));
1039 dasm_put(Dst, 198, Dt9(->k), Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), DISPATCH_GL(vmstate), ~LJ_VMST_C, DISPATCH_GL(wrapf), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top), FRAME_TYPE); 1040 dasm_put(Dst, 161, LJ_TNIL, PC2PROTO(k));
1040 dasm_put(Dst, 292, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), DISPATCH_GL(vmstate), ~LJ_VMST_C, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top), FRAME_TYPE); 1041#if LJ_HASJIT
1041 dasm_put(Dst, 378, FRAME_C, DISPATCH_GL(vmstate), ~LJ_VMST_C, Dt1(->base)); 1042#endif
1042 dasm_put(Dst, 470, Dt1(->top), Dt1(->cframe), Dt1(->maxstack), LJ_TNIL, Dt1(->top)); 1043 dasm_put(Dst, 201, LJ_TNIL, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), DISPATCH_GL(vmstate), ~LJ_VMST_C, DISPATCH_GL(wrapf), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base));
1043 dasm_put(Dst, 554, Dt1(->top), Dt1(->glref), Dt2(->vmstate), ~LJ_VMST_C, CFRAME_RAWMASK, 1+1, Dt1(->base), Dt1(->glref), GG_G2DISP, LJ_TFALSE, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP); 1044 dasm_put(Dst, 303, Dt1(->top), FRAME_TYPE, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), DISPATCH_GL(vmstate), ~LJ_VMST_C, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base));
1044 dasm_put(Dst, 655, FRAME_P, LJ_TTRUE, LUA_MINSTACK, sizeof(GCproto), Dt1(->base), Dt1(->top), Dt1(->base)); 1045 dasm_put(Dst, 389, Dt1(->top), FRAME_TYPE, FRAME_C, DISPATCH_GL(vmstate), ~LJ_VMST_C, Dt1(->base));
1045 dasm_put(Dst, 759, Dt1(->top), Dt7(->gate), 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); 1046 dasm_put(Dst, 495, Dt1(->top), Dt1(->cframe), Dt1(->maxstack), LJ_TNIL);
1046 dasm_put(Dst, 898, FRAME_CP, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top), LJ_TFUNC, Dt7(->gate)); 1047 dasm_put(Dst, 584, Dt1(->top), Dt1(->top), Dt1(->glref), Dt2(->vmstate), ~LJ_VMST_C, CFRAME_RAWMASK, 1+1, Dt1(->base), Dt1(->glref), GG_G2DISP, LJ_TFALSE, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP);
1047 dasm_put(Dst, 1023, Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), FRAME_CP, LJ_TNIL, 0, Dt7(->pt), Dt9(->k), Dt1(->base)); 1048 dasm_put(Dst, 688, FRAME_P, LJ_TTRUE, LUA_MINSTACK, PC2PROTO(framesize), Dt1(->base), Dt1(->top), Dt1(->base));
1048 dasm_put(Dst, 1207, LJ_TSTR, BC_GGET, DISPATCH_GL(tmptv), LJ_TTAB); 1049 dasm_put(Dst, 778, Dt1(->top), Dt7(->gate), 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);
1050 dasm_put(Dst, 917, FRAME_CP, FRAME_C, Dt1(->cframe), Dt1(->cframe), Dt1(->glref), GG_G2DISP, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top), LJ_TFUNC, Dt7(->gate));
1051 dasm_put(Dst, 1042, Dt1(->stack), Dt1(->top), Dt1(->cframe), Dt1(->cframe), FRAME_CP, LJ_TNIL, 0, Dt7(->pc), PC2PROTO(k), Dt1(->base));
1052 dasm_put(Dst, 1226, LJ_TSTR, BC_GGET, DISPATCH_GL(tmptv), LJ_TTAB);
1049 if (sse) { 1053 if (sse) {
1050 dasm_put(Dst, 1252); 1054 dasm_put(Dst, 1271);
1051 } else { 1055 } else {
1052 } 1056 }
1053 dasm_put(Dst, 1264, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, Dt7(->gate), LJ_TSTR, BC_GSET, DISPATCH_GL(tmptv)); 1057 dasm_put(Dst, 1283, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, Dt7(->gate), LJ_TSTR, BC_GSET, DISPATCH_GL(tmptv));
1054 dasm_put(Dst, 1422, LJ_TTAB); 1058 dasm_put(Dst, 1441, LJ_TTAB);
1055 if (sse) { 1059 if (sse) {
1056 dasm_put(Dst, 1252); 1060 dasm_put(Dst, 1271);
1057 } else { 1061 } else {
1058 } 1062 }
1059 dasm_put(Dst, 1442, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, Dt7(->gate), Dt1(->base), Dt1(->base)); 1063 dasm_put(Dst, 1461, Dt1(->base), Dt1(->base), Dt1(->top), FRAME_CONT, Dt7(->gate), Dt1(->base), Dt1(->base));
1060 dasm_put(Dst, 1637, -BCBIAS_J*4, LJ_TISTRUECOND, LJ_TISTRUECOND, Dt1(->base)); 1064 dasm_put(Dst, 1656, -BCBIAS_J*4, LJ_TISTRUECOND, LJ_TISTRUECOND, Dt1(->base));
1061 dasm_put(Dst, 1745, Dt1(->base), Dt1(->base), FRAME_CONT, LJ_TFUNC); 1065 dasm_put(Dst, 1764, Dt1(->base), Dt1(->base), FRAME_CONT, LJ_TFUNC);
1062 dasm_put(Dst, 1868, Dt7(->gate), Dt1(->base), Dt1(->base), Dt1(->base), Dt1(->base), Dt7(->gate), Dt1(->base), Dt1(->base), GG_DISP_STATIC*8, 1+1); 1066 dasm_put(Dst, 1887, Dt7(->gate), Dt1(->base), Dt1(->base), Dt1(->base), Dt1(->base), Dt7(->gate), Dt1(->base), Dt1(->base), GG_DISP_STATIC*8, 1+1);
1063 dasm_put(Dst, 2023, LJ_TISTRUECOND, 1+1, ~LJ_TNUMX); 1067 dasm_put(Dst, 2042, LJ_TISTRUECOND, 1+1, ~LJ_TNUMX);
1064 if (cmov) { 1068 if (cmov) {
1065 dasm_put(Dst, 2117); 1069 dasm_put(Dst, 2136);
1066 } else { 1070 } else {
1067 dasm_put(Dst, 2121); 1071 dasm_put(Dst, 2140);
1068 } 1072 }
1069 dasm_put(Dst, 2130, ((char *)(&((GCfuncC *)0)->upvalue)), LJ_TSTR, 1+1, LJ_TTAB, Dt6(->metatable), LJ_TNIL, DISPATCH_GL(mmname)+4*MM_metatable, LJ_TTAB, Dt6(->hmask)); 1073 dasm_put(Dst, 2149, ((char *)(&((GCfuncC *)0)->upvalue)), LJ_TSTR, 1+1, LJ_TTAB, Dt6(->metatable), LJ_TNIL, DISPATCH_GL(mmname)+4*MM_metatable, LJ_TTAB, Dt6(->hmask));
1070 dasm_put(Dst, 2218, Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), DtB(->next), LJ_TNIL); 1074 dasm_put(Dst, 2237, Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), DtB(->next), LJ_TNIL);
1071 dasm_put(Dst, 2273, LJ_TUDATA, LJ_TISNUM, LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT]), 2+1, LJ_TTAB); 1075 dasm_put(Dst, 2292, LJ_TUDATA, LJ_TISNUM, LJ_TNUMX, DISPATCH_GL(gcroot[GCROOT_BASEMT]), 2+1, LJ_TTAB);
1072 dasm_put(Dst, 2345, Dt6(->metatable), LJ_TTAB, Dt6(->metatable), LJ_TTAB, Dt6(->marked), LJ_GC_BLACK, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1076 dasm_put(Dst, 2364, Dt6(->metatable), LJ_TTAB, Dt6(->metatable), LJ_TTAB, Dt6(->marked), LJ_GC_BLACK, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1073 dasm_put(Dst, 2412, 2+1, LJ_TTAB, 1+1, LJ_TISNUM); 1077 dasm_put(Dst, 2431, 2+1, LJ_TTAB, 1+1, LJ_TISNUM);
1074 if (sse) { 1078 if (sse) {
1075 dasm_put(Dst, 2490); 1079 dasm_put(Dst, 2509);
1076 } else { 1080 } else {
1077 dasm_put(Dst, 2500); 1081 dasm_put(Dst, 2519);
1078 } 1082 }
1079 dasm_put(Dst, 2507, 1+1, LJ_TSTR, LJ_TSTR, LJ_TISNUM, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 1083 dasm_put(Dst, 2526, 1+1, LJ_TSTR, LJ_TSTR, LJ_TISNUM, DISPATCH_GL(gcroot[GCROOT_BASEMT_NUM]), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
1080 dasm_put(Dst, 2572, Dt1(->base), Dt1(->base), 1+1, LJ_TTAB, Dt1(->base)); 1084 dasm_put(Dst, 2591, Dt1(->base), Dt1(->base), 1+1, LJ_TTAB, Dt1(->base));
1081 dasm_put(Dst, 2656, Dt1(->base), 1+2, LJ_TNIL, LJ_TNIL, 1+1, LJ_TTAB); 1085 dasm_put(Dst, 2675, Dt1(->base), 1+2, LJ_TNIL, LJ_TNIL, 1+1, LJ_TTAB);
1082 dasm_put(Dst, 2756, Dt8(->upvalue[0]), LJ_TFUNC, LJ_TNIL, 1+3, 1+1, LJ_TTAB, LJ_TISNUM); 1086 dasm_put(Dst, 2775, Dt8(->upvalue[0]), LJ_TFUNC, LJ_TNIL, 1+3, 1+1, LJ_TTAB, LJ_TISNUM);
1083 if (sse) { 1087 if (sse) {
1084 dasm_put(Dst, 2811, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1088 dasm_put(Dst, 2830, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1085 } else { 1089 } else {
1086 } 1090 }
1087 dasm_put(Dst, 2844, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->hmask), 1+0); 1091 dasm_put(Dst, 2863, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->hmask), 1+0);
1088 dasm_put(Dst, 2931, 1+1, LJ_TTAB, Dt8(->upvalue[0]), LJ_TFUNC); 1092 dasm_put(Dst, 2950, 1+1, LJ_TTAB, Dt8(->upvalue[0]), LJ_TFUNC);
1089 if (sse) { 1093 if (sse) {
1090 dasm_put(Dst, 2961); 1094 dasm_put(Dst, 2980);
1091 } else { 1095 } else {
1092 dasm_put(Dst, 2971); 1096 dasm_put(Dst, 2990);
1093 } 1097 }
1094 dasm_put(Dst, 2978, 1+3, 1+1, 8+FRAME_PCALL, DISPATCH_GL(hookmask), HOOK_ACTIVE, LJ_TFUNC, Dt7(->gate)); 1098 dasm_put(Dst, 2997, 1+3, 1+1, 8+FRAME_PCALL, DISPATCH_GL(hookmask), HOOK_ACTIVE, LJ_TFUNC, Dt7(->gate));
1095 dasm_put(Dst, 3052, 2+1, LJ_TFUNC, LJ_TFUNC, 2*8+FRAME_PCALL, 2*8, 1+1, LJ_TTHREAD); 1099 dasm_put(Dst, 3071, 2+1, LJ_TFUNC, LJ_TFUNC, 2*8+FRAME_PCALL, 2*8, 1+1, LJ_TTHREAD);
1096 dasm_put(Dst, 3150, Dt1(->cframe), Dt1(->status), LUA_YIELD, Dt1(->top), Dt1(->base), Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top)); 1100 dasm_put(Dst, 3169, Dt1(->cframe), Dt1(->status), LUA_YIELD, Dt1(->top), Dt1(->base), Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top));
1097 dasm_put(Dst, 3216, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top)); 1101 dasm_put(Dst, 3235, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top));
1098 dasm_put(Dst, 3320, Dt1(->maxstack), LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), Dt1(->top), 1+2); 1102 dasm_put(Dst, 3339, Dt1(->maxstack), LJ_TTRUE, FRAME_TYPE, LJ_TFALSE, Dt1(->top), Dt1(->top), 1+2);
1099 dasm_put(Dst, 3443, Dt1(->top), Dt1(->base), Dt8(->upvalue[0].gcr), Dt1(->cframe), Dt1(->status), LUA_YIELD, Dt1(->top), Dt1(->base)); 1103 dasm_put(Dst, 3462, Dt1(->top), Dt1(->base), Dt8(->upvalue[0].gcr), Dt1(->cframe), Dt1(->status), LUA_YIELD, Dt1(->top), Dt1(->base));
1100 dasm_put(Dst, 3524, Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base)); 1104 dasm_put(Dst, 3543, Dt1(->maxstack), Dt1(->top), Dt1(->base), Dt1(->top), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base));
1101 dasm_put(Dst, 3630, LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->maxstack), FRAME_TYPE); 1105 dasm_put(Dst, 3649, LUA_YIELD, Dt1(->base), Dt1(->top), Dt1(->top), Dt1(->maxstack), FRAME_TYPE);
1102 dasm_put(Dst, 3730, Dt1(->top), Dt1(->base), Dt1(->cframe), CFRAME_RESUME, Dt1(->base), Dt1(->top), Dt1(->cframe), LUA_YIELD, Dt1(->status)); 1106 dasm_put(Dst, 3749, Dt1(->top), Dt1(->base), Dt1(->cframe), CFRAME_RESUME, Dt1(->base), Dt1(->top), Dt1(->cframe), LUA_YIELD, Dt1(->status));
1103 if (sse) { 1107 if (sse) {
1104 dasm_put(Dst, 3817, 1+1, LJ_TISNUM, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32)); 1108 dasm_put(Dst, 3836, 1+1, LJ_TISNUM, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32));
1105 } else { 1109 } else {
1106 dasm_put(Dst, 3873, 1+1, LJ_TISNUM); 1110 dasm_put(Dst, 3892, 1+1, LJ_TISNUM);
1107 } 1111 }
1108 dasm_put(Dst, 3905, 1+1, FRAME_TYPE, LJ_TNIL); 1112 dasm_put(Dst, 3924, 1+1, FRAME_TYPE, LJ_TNIL);
1109 if (sse) { 1113 if (sse) {
1110 dasm_put(Dst, 3990, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM); 1114 dasm_put(Dst, 4009, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM);
1111 dasm_put(Dst, 4052, 1+1, LJ_TISNUM); 1115 dasm_put(Dst, 4071, 1+1, LJ_TISNUM);
1112 } else { 1116 } else {
1113 dasm_put(Dst, 4082, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM); 1117 dasm_put(Dst, 4101, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM);
1114 dasm_put(Dst, 4141, 1+1, LJ_TISNUM); 1118 dasm_put(Dst, 4160, 1+1, LJ_TISNUM);
1115 } 1119 }
1116 dasm_put(Dst, 4168, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1); 1120 dasm_put(Dst, 4187, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1);
1117 dasm_put(Dst, 4237, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1); 1121 dasm_put(Dst, 4256, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1);
1118 dasm_put(Dst, 4294, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1); 1122 dasm_put(Dst, 4313, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1);
1119 dasm_put(Dst, 4357, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM); 1123 dasm_put(Dst, 4376, LJ_TISNUM, 1+1, LJ_TISNUM, 1+1, LJ_TISNUM);
1120 dasm_put(Dst, 4447); 1124 dasm_put(Dst, 4466);
1121 if (sse) { 1125 if (sse) {
1122 dasm_put(Dst, 4459, 1+1, LJ_TISNUM); 1126 dasm_put(Dst, 4478, 1+1, LJ_TISNUM);
1123 } else { 1127 } else {
1124 } 1128 }
1125 dasm_put(Dst, 4484); 1129 dasm_put(Dst, 4503);
1126 if (sse) { 1130 if (sse) {
1127 dasm_put(Dst, 4504, 1+1, LJ_TISNUM); 1131 dasm_put(Dst, 4523, 1+1, LJ_TISNUM);
1128 } else { 1132 } else {
1129 } 1133 }
1130 dasm_put(Dst, 4529); 1134 dasm_put(Dst, 4548);
1131 if (sse) { 1135 if (sse) {
1132 dasm_put(Dst, 4549, 1+1, LJ_TISNUM); 1136 dasm_put(Dst, 4568, 1+1, LJ_TISNUM);
1133 } else { 1137 } else {
1134 } 1138 }
1135 dasm_put(Dst, 4574); 1139 dasm_put(Dst, 4593);
1136 if (sse) { 1140 if (sse) {
1137 dasm_put(Dst, 4596, 1+1, LJ_TISNUM, Dt8(->upvalue[0])); 1141 dasm_put(Dst, 4615, 1+1, LJ_TISNUM, Dt8(->upvalue[0]));
1138 } else { 1142 } else {
1139 dasm_put(Dst, 4631, 1+1, LJ_TISNUM, Dt8(->upvalue[0])); 1143 dasm_put(Dst, 4650, 1+1, LJ_TISNUM, Dt8(->upvalue[0]));
1140 } 1144 }
1141 dasm_put(Dst, 4660, 2+1, LJ_TISNUM, LJ_TISNUM, 2+1, LJ_TISNUM, LJ_TISNUM); 1145 dasm_put(Dst, 4679, 2+1, LJ_TISNUM, LJ_TISNUM, 2+1, LJ_TISNUM, LJ_TISNUM);
1142 dasm_put(Dst, 4725, 1+1, LJ_TISNUM); 1146 dasm_put(Dst, 4744, 1+1, LJ_TISNUM);
1143 if (sse) { 1147 if (sse) {
1144 dasm_put(Dst, 4820); 1148 dasm_put(Dst, 4839);
1145 } else { 1149 } else {
1146 dasm_put(Dst, 4826); 1150 dasm_put(Dst, 4845);
1147 } 1151 }
1148 dasm_put(Dst, 4833); 1152 dasm_put(Dst, 4852);
1149 if (sse) { 1153 if (sse) {
1150 dasm_put(Dst, 4858); 1154 dasm_put(Dst, 4877);
1151 } else { 1155 } else {
1152 dasm_put(Dst, 4864); 1156 dasm_put(Dst, 4883);
1153 } 1157 }
1154 dasm_put(Dst, 4867, 1+2); 1158 dasm_put(Dst, 4886, 1+2);
1155 if (sse) { 1159 if (sse) {
1156 dasm_put(Dst, 4876); 1160 dasm_put(Dst, 4895);
1157 } else { 1161 } else {
1158 dasm_put(Dst, 4884); 1162 dasm_put(Dst, 4903);
1159 } 1163 }
1160 dasm_put(Dst, 1634); 1164 dasm_put(Dst, 492);
1161 if (sse) { 1165 if (sse) {
1162 dasm_put(Dst, 4892, (unsigned int)(U64x(43500000,00000000)), (unsigned int)((U64x(43500000,00000000))>>32)); 1166 dasm_put(Dst, 4911, (unsigned int)(U64x(43500000,00000000)), (unsigned int)((U64x(43500000,00000000))>>32));
1163 } else { 1167 } else {
1164 dasm_put(Dst, 4919); 1168 dasm_put(Dst, 4938);
1165 } 1169 }
1166 dasm_put(Dst, 4936); 1170 dasm_put(Dst, 4955);
1167 if (sse) { 1171 if (sse) {
1168 dasm_put(Dst, 4952, 1+1, LJ_TISNUM); 1172 dasm_put(Dst, 4971, 1+1, LJ_TISNUM);
1169 } else { 1173 } else {
1170 dasm_put(Dst, 4977, 1+1, LJ_TISNUM); 1174 dasm_put(Dst, 4996, 1+1, LJ_TISNUM);
1171 } 1175 }
1172 dasm_put(Dst, 4999); 1176 dasm_put(Dst, 5018);
1173 if (sse) { 1177 if (sse) {
1174 dasm_put(Dst, 5017); 1178 dasm_put(Dst, 5036);
1175 } else { 1179 } else {
1176 dasm_put(Dst, 5043); 1180 dasm_put(Dst, 5062);
1177 } 1181 }
1178 dasm_put(Dst, 5060, 1+2); 1182 dasm_put(Dst, 5079, 1+2);
1179 if (sse) { 1183 if (sse) {
1180 dasm_put(Dst, 5100); 1184 dasm_put(Dst, 5119);
1181 } else { 1185 } else {
1182 dasm_put(Dst, 5108); 1186 dasm_put(Dst, 5127);
1183 } 1187 }
1184 dasm_put(Dst, 5118, 2+1, LJ_TISNUM, LJ_TISNUM); 1188 dasm_put(Dst, 5137, 2+1, LJ_TISNUM, LJ_TISNUM);
1185 if (sse) { 1189 if (sse) {
1186 dasm_put(Dst, 5170, 1+1, LJ_TISNUM, LJ_TISNUM); 1190 dasm_put(Dst, 5189, 1+1, LJ_TISNUM, LJ_TISNUM);
1187 } else { 1191 } else {
1188 dasm_put(Dst, 5217, 2+1, LJ_TISNUM, LJ_TISNUM); 1192 dasm_put(Dst, 5236, 2+1, LJ_TISNUM, LJ_TISNUM);
1189 } 1193 }
1190 if (sse) { 1194 if (sse) {
1191 dasm_put(Dst, 5258, 1+1, LJ_TISNUM, LJ_TISNUM); 1195 dasm_put(Dst, 5277, 1+1, LJ_TISNUM, LJ_TISNUM);
1192 } else { 1196 } else {
1193 } 1197 }
1194 if (sse) { 1198 if (sse) {
1195 dasm_put(Dst, 5329, 1+1, LJ_TISNUM, LJ_TISNUM); 1199 dasm_put(Dst, 5348, 1+1, LJ_TISNUM, LJ_TISNUM);
1196 } else { 1200 } else {
1197 } 1201 }
1198 if (!sse) { 1202 if (!sse) {
1199 dasm_put(Dst, 5400); 1203 dasm_put(Dst, 5419);
1200 } 1204 }
1201 dasm_put(Dst, 5409, 1+1, LJ_TSTR); 1205 dasm_put(Dst, 5428, 1+1, LJ_TSTR);
1202 if (sse) { 1206 if (sse) {
1203 dasm_put(Dst, 5431, Dt5(->len)); 1207 dasm_put(Dst, 5450, Dt5(->len));
1204 } else { 1208 } else {
1205 dasm_put(Dst, 5442, Dt5(->len)); 1209 dasm_put(Dst, 5461, Dt5(->len));
1206 } 1210 }
1207 dasm_put(Dst, 5450, 1+1, LJ_TSTR, Dt5(->len), Dt5([1])); 1211 dasm_put(Dst, 5469, 1+1, LJ_TSTR, Dt5(->len), Dt5([1]));
1208 if (sse) { 1212 if (sse) {
1209 dasm_put(Dst, 5484); 1213 dasm_put(Dst, 5503);
1210 } else { 1214 } else {
1211 dasm_put(Dst, 5494); 1215 dasm_put(Dst, 5513);
1212 } 1216 }
1213 dasm_put(Dst, 5505, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+1, LJ_TISNUM); 1217 dasm_put(Dst, 5524, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+1, LJ_TISNUM);
1214 if (sse) { 1218 if (sse) {
1215 dasm_put(Dst, 5542); 1219 dasm_put(Dst, 5561);
1216 } else { 1220 } else {
1217 dasm_put(Dst, 5562); 1221 dasm_put(Dst, 5581);
1218 } 1222 }
1219 dasm_put(Dst, 5582, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+2, LJ_TISNUM); 1223 dasm_put(Dst, 5601, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+2, LJ_TISNUM);
1220 dasm_put(Dst, 2485); 1224 dasm_put(Dst, 2504);
1221 if (sse) { 1225 if (sse) {
1222 dasm_put(Dst, 5696); 1226 dasm_put(Dst, 5715);
1223 } else { 1227 } else {
1224 dasm_put(Dst, 5707); 1228 dasm_put(Dst, 5726);
1225 } 1229 }
1226 dasm_put(Dst, 5715, LJ_TSTR, LJ_TISNUM, Dt5(->len)); 1230 dasm_put(Dst, 5734, LJ_TSTR, LJ_TISNUM, Dt5(->len));
1227 if (sse) { 1231 if (sse) {
1228 dasm_put(Dst, 5745); 1232 dasm_put(Dst, 5764);
1229 } else { 1233 } else {
1230 } 1234 }
1231 dasm_put(Dst, 5752, sizeof(GCstr)-1); 1235 dasm_put(Dst, 5771, sizeof(GCstr)-1);
1232 dasm_put(Dst, 5827, 2+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 1236 dasm_put(Dst, 5846, 2+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
1233 dasm_put(Dst, 5888, LJ_TSTR, LJ_TISNUM); 1237 dasm_put(Dst, 5907, LJ_TSTR, LJ_TISNUM);
1234 if (sse) { 1238 if (sse) {
1235 dasm_put(Dst, 5912); 1239 dasm_put(Dst, 5931);
1236 } else { 1240 } else {
1237 dasm_put(Dst, 5919); 1241 dasm_put(Dst, 5938);
1238 } 1242 }
1239 dasm_put(Dst, 5931, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(tmpbuf.buf), 1+1); 1243 dasm_put(Dst, 5950, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(tmpbuf.buf), 1+1);
1240 dasm_put(Dst, 5999, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 1244 dasm_put(Dst, 6018, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
1241 dasm_put(Dst, 6069, 1+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz)); 1245 dasm_put(Dst, 6088, 1+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz));
1242 dasm_put(Dst, 6145, sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), 1+1); 1246 dasm_put(Dst, 6164, sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), 1+1);
1243 dasm_put(Dst, 6230, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 1247 dasm_put(Dst, 6249, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
1244 dasm_put(Dst, 6307, 1+1, LJ_TTAB); 1248 dasm_put(Dst, 6326, 1+1, LJ_TTAB);
1245 if (sse) { 1249 if (sse) {
1246 dasm_put(Dst, 6380); 1250 dasm_put(Dst, 6399);
1247 } else { 1251 } else {
1248 } 1252 }
1249 if (sse) { 1253 if (sse) {
1250 dasm_put(Dst, 6390, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1254 dasm_put(Dst, 6409, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1251 } else { 1255 } else {
1252 } 1256 }
1253 if (sse) { 1257 if (sse) {
1254 dasm_put(Dst, 6442, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1258 dasm_put(Dst, 6461, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1255 } else { 1259 } else {
1256 } 1260 }
1257 dasm_put(Dst, 6485); 1261 dasm_put(Dst, 6504);
1258 if (sse) { 1262 if (sse) {
1259 dasm_put(Dst, 6495); 1263 dasm_put(Dst, 6514);
1260 } 1264 }
1261 dasm_put(Dst, 6499, LJ_TISNUM); 1265 dasm_put(Dst, 6518, LJ_TISNUM);
1262 if (sse) { 1266 if (sse) {
1263 dasm_put(Dst, 6517); 1267 dasm_put(Dst, 6536);
1264 } else { 1268 } else {
1265 } 1269 }
1266 dasm_put(Dst, 6534); 1270 dasm_put(Dst, 6553);
1267 if (sse) { 1271 if (sse) {
1268 dasm_put(Dst, 6542, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1272 dasm_put(Dst, 6561, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1269 } else { 1273 } else {
1270 } 1274 }
1271 dasm_put(Dst, 6485); 1275 dasm_put(Dst, 6504);
1272 if (sse) { 1276 if (sse) {
1273 dasm_put(Dst, 6495); 1277 dasm_put(Dst, 6514);
1274 } 1278 }
1275 dasm_put(Dst, 6499, LJ_TISNUM); 1279 dasm_put(Dst, 6518, LJ_TISNUM);
1276 if (sse) { 1280 if (sse) {
1277 dasm_put(Dst, 6585); 1281 dasm_put(Dst, 6604);
1278 } else { 1282 } else {
1279 } 1283 }
1280 dasm_put(Dst, 6534); 1284 dasm_put(Dst, 6553);
1281 if (sse) { 1285 if (sse) {
1282 dasm_put(Dst, 6602, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1286 dasm_put(Dst, 6621, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1283 } else { 1287 } else {
1284 } 1288 }
1285 dasm_put(Dst, 6485); 1289 dasm_put(Dst, 6504);
1286 if (sse) { 1290 if (sse) {
1287 dasm_put(Dst, 6495); 1291 dasm_put(Dst, 6514);
1288 } 1292 }
1289 dasm_put(Dst, 6499, LJ_TISNUM); 1293 dasm_put(Dst, 6518, LJ_TISNUM);
1290 if (sse) { 1294 if (sse) {
1291 dasm_put(Dst, 6645); 1295 dasm_put(Dst, 6664);
1292 } else { 1296 } else {
1293 } 1297 }
1294 dasm_put(Dst, 6534); 1298 dasm_put(Dst, 6553);
1295 if (sse) { 1299 if (sse) {
1296 dasm_put(Dst, 6662, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1300 dasm_put(Dst, 6681, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1297 } else { 1301 } else {
1298 } 1302 }
1299 dasm_put(Dst, 6705); 1303 dasm_put(Dst, 6724);
1300 if (sse) { 1304 if (sse) {
1301 dasm_put(Dst, 6712, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1305 dasm_put(Dst, 6731, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1302 } else { 1306 } else {
1303 } 1307 }
1304 dasm_put(Dst, 6755); 1308 dasm_put(Dst, 6774);
1305 if (sse) { 1309 if (sse) {
1306 dasm_put(Dst, 6759); 1310 dasm_put(Dst, 6778);
1307 } else { 1311 } else {
1308 } 1312 }
1309 dasm_put(Dst, 6785); 1313 dasm_put(Dst, 6804);
1310 if (sse) { 1314 if (sse) {
1311 dasm_put(Dst, 6376); 1315 dasm_put(Dst, 6395);
1312 } 1316 }
1313 dasm_put(Dst, 6788); 1317 dasm_put(Dst, 6807);
1314 if (sse) { 1318 if (sse) {
1315 dasm_put(Dst, 6797, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1319 dasm_put(Dst, 6816, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1316 } else { 1320 } else {
1317 } 1321 }
1318 dasm_put(Dst, 6866); 1322 dasm_put(Dst, 6885);
1319 if (sse) { 1323 if (sse) {
1320 dasm_put(Dst, 6875, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1324 dasm_put(Dst, 6894, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1321 } else { 1325 } else {
1322 } 1326 }
1323 dasm_put(Dst, 6944); 1327 dasm_put(Dst, 6963);
1324 if (sse) { 1328 if (sse) {
1325 dasm_put(Dst, 6954, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1329 dasm_put(Dst, 6973, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1326 } else { 1330 } else {
1327 } 1331 }
1328 dasm_put(Dst, 7023); 1332 dasm_put(Dst, 7042);
1329 if (sse) { 1333 if (sse) {
1330 dasm_put(Dst, 7033, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1334 dasm_put(Dst, 7052, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1331 } else { 1335 } else {
1332 } 1336 }
1333 dasm_put(Dst, 7102); 1337 dasm_put(Dst, 7121);
1334 if (sse) { 1338 if (sse) {
1335 dasm_put(Dst, 7111, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1339 dasm_put(Dst, 7130, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1336 } else { 1340 } else {
1337 } 1341 }
1338 dasm_put(Dst, 7180, 1+2, 1+1, Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), Dt8(->f), Dt1(->base)); 1342 dasm_put(Dst, 7199, 1+2, 1+1, Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), Dt8(->f), Dt1(->base));
1339 dasm_put(Dst, 7263, Dt1(->top), Dt7(->gate), LJ_TFUNC, Dt7(->gate), Dt1(->base), LUA_MINSTACK, Dt1(->base), Dt1(->top)); 1343 dasm_put(Dst, 7282, Dt1(->top), Dt7(->gate), LJ_TFUNC, Dt7(->gate), Dt1(->base), LUA_MINSTACK, Dt1(->base), Dt1(->top));
1340 dasm_put(Dst, 7381, Dt1(->base), Dt1(->top)); 1344 dasm_put(Dst, 7400, Dt1(->base), Dt1(->top));
1341#if LJ_HASJIT 1345#if LJ_HASJIT
1342 dasm_put(Dst, 7423, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount)); 1346 dasm_put(Dst, 7442, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount));
1343#endif 1347#endif
1344 dasm_put(Dst, 7456, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE, Dt1(->base), Dt1(->base)); 1348 dasm_put(Dst, 7475, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE, Dt1(->base), Dt1(->base));
1345 dasm_put(Dst, 7523, GG_DISP_STATIC*8); 1349 dasm_put(Dst, 7542, GG_DISP_STATIC*8);
1346#if LJ_HASJIT 1350#if LJ_HASJIT
1347 dasm_put(Dst, 7560); 1351 dasm_put(Dst, 7579);
1348#endif 1352#endif
1349 dasm_put(Dst, 7562); 1353 dasm_put(Dst, 7581);
1350#if LJ_HASJIT 1354#if LJ_HASJIT
1351 dasm_put(Dst, 7560); 1355 dasm_put(Dst, 7579);
1352#endif 1356#endif
1353 dasm_put(Dst, 7565); 1357 dasm_put(Dst, 7584);
1354#if LJ_HASJIT 1358#if LJ_HASJIT
1355 dasm_put(Dst, 7560); 1359 dasm_put(Dst, 7579);
1356#endif 1360#endif
1357 dasm_put(Dst, 7568); 1361 dasm_put(Dst, 7587);
1358#if LJ_HASJIT 1362#if LJ_HASJIT
1359 dasm_put(Dst, 7571, Dt7(->pt), Dt9(->k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP); 1363 dasm_put(Dst, 7590, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP);
1360#endif 1364#endif
1361 dasm_put(Dst, 7618); 1365 dasm_put(Dst, 7637);
1362 if (!sse) { 1366 if (!sse) {
1363 dasm_put(Dst, 7621); 1367 dasm_put(Dst, 7640);
1364 } 1368 }
1365 dasm_put(Dst, 7666, (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)); 1369 dasm_put(Dst, 7685, (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));
1366 if (!sse) { 1370 if (!sse) {
1367 dasm_put(Dst, 7752); 1371 dasm_put(Dst, 7771);
1368 } 1372 }
1369 dasm_put(Dst, 7797, (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)); 1373 dasm_put(Dst, 7816, (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));
1370 if (!sse) { 1374 if (!sse) {
1371 dasm_put(Dst, 7883); 1375 dasm_put(Dst, 7902);
1372 } 1376 }
1373 dasm_put(Dst, 7922, (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)); 1377 dasm_put(Dst, 7941, (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));
1374 if (sse) { 1378 if (sse) {
1375 dasm_put(Dst, 8011, (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)); 1379 dasm_put(Dst, 8030, (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));
1376 } else { 1380 } else {
1377 dasm_put(Dst, 8125); 1381 dasm_put(Dst, 8144);
1378 } 1382 }
1379 dasm_put(Dst, 8172); 1383 dasm_put(Dst, 8191);
1380 if (!sse) { 1384 if (!sse) {
1381 } else { 1385 } else {
1382 dasm_put(Dst, 8249); 1386 dasm_put(Dst, 8268);
1383 } 1387 }
1384 dasm_put(Dst, 8252); 1388 dasm_put(Dst, 8271);
1385 dasm_put(Dst, 8337, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1389 dasm_put(Dst, 8356, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1386 dasm_put(Dst, 8438, (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)); 1390 dasm_put(Dst, 8457, (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));
1387 dasm_put(Dst, 8612); 1391 dasm_put(Dst, 8631);
1388 if (sse) { 1392 if (sse) {
1389 dasm_put(Dst, 8653); 1393 dasm_put(Dst, 8672);
1390 dasm_put(Dst, 8723); 1394 dasm_put(Dst, 8742);
1391 dasm_put(Dst, 8795); 1395 dasm_put(Dst, 8814);
1392 } else { 1396 } else {
1393 dasm_put(Dst, 8847); 1397 dasm_put(Dst, 8866);
1394 dasm_put(Dst, 8939); 1398 dasm_put(Dst, 8958);
1395 } 1399 }
1396 dasm_put(Dst, 8985); 1400 dasm_put(Dst, 9004);
1397 if (sse) { 1401 if (sse) {
1398 dasm_put(Dst, 8991, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1402 dasm_put(Dst, 9010, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1399 dasm_put(Dst, 9076, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32)); 1403 dasm_put(Dst, 9095, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32));
1400 } else { 1404 } else {
1401 dasm_put(Dst, 9204); 1405 dasm_put(Dst, 9223);
1402 dasm_put(Dst, 9287); 1406 dasm_put(Dst, 9306);
1403 if (cmov) { 1407 if (cmov) {
1404 dasm_put(Dst, 9342);
1405 } else {
1406 dasm_put(Dst, 9361); 1408 dasm_put(Dst, 9361);
1409 } else {
1410 dasm_put(Dst, 9380);
1407 } 1411 }
1408 dasm_put(Dst, 9200); 1412 dasm_put(Dst, 9219);
1409 } 1413 }
1410 dasm_put(Dst, 9402); 1414 dasm_put(Dst, 9421);
1411} 1415}
1412 1416
1413/* Generate the code for a single instruction. */ 1417/* Generate the code for a single instruction. */
1414static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) 1418static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1415{ 1419{
1416 int vk = 0; 1420 int vk = 0;
1417 dasm_put(Dst, 9424, defop); 1421 dasm_put(Dst, 159, defop);
1418 1422
1419 switch (op) { 1423 switch (op) {
1420 1424
@@ -1423,602 +1427,602 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1423 /* Remember: all ops branch for a true comparison, fall through otherwise. */ 1427 /* Remember: all ops branch for a true comparison, fall through otherwise. */
1424 1428
1425 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 1429 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
1426 dasm_put(Dst, 9426, LJ_TISNUM, LJ_TISNUM); 1430 dasm_put(Dst, 9443, LJ_TISNUM, LJ_TISNUM);
1427 if (sse) { 1431 if (sse) {
1428 dasm_put(Dst, 9447); 1432 dasm_put(Dst, 9464);
1429 } else { 1433 } else {
1430 dasm_put(Dst, 9462); 1434 dasm_put(Dst, 9479);
1431 if (cmov) { 1435 if (cmov) {
1432 dasm_put(Dst, 9472); 1436 dasm_put(Dst, 9489);
1433 } else { 1437 } else {
1434 dasm_put(Dst, 9478); 1438 dasm_put(Dst, 9495);
1435 } 1439 }
1436 } 1440 }
1437 switch (op) { 1441 switch (op) {
1438 case BC_ISLT: 1442 case BC_ISLT:
1439 dasm_put(Dst, 9485); 1443 dasm_put(Dst, 9502);
1440 break; 1444 break;
1441 case BC_ISGE: 1445 case BC_ISGE:
1442 dasm_put(Dst, 9282); 1446 dasm_put(Dst, 9301);
1443 break; 1447 break;
1444 case BC_ISLE: 1448 case BC_ISLE:
1445 dasm_put(Dst, 6302); 1449 dasm_put(Dst, 6321);
1446 break; 1450 break;
1447 case BC_ISGT: 1451 case BC_ISGT:
1448 dasm_put(Dst, 9490); 1452 dasm_put(Dst, 9507);
1449 break; 1453 break;
1450 default: break; /* Shut up GCC. */ 1454 default: break; /* Shut up GCC. */
1451 } 1455 }
1452 dasm_put(Dst, 9495, -BCBIAS_J*4); 1456 dasm_put(Dst, 9512, -BCBIAS_J*4);
1453 break; 1457 break;
1454 1458
1455 case BC_ISEQV: case BC_ISNEV: 1459 case BC_ISEQV: case BC_ISNEV:
1456 vk = op == BC_ISEQV; 1460 vk = op == BC_ISEQV;
1457 dasm_put(Dst, 9530, LJ_TISNUM, LJ_TISNUM); 1461 dasm_put(Dst, 9547, LJ_TISNUM, LJ_TISNUM);
1458 if (sse) { 1462 if (sse) {
1459 dasm_put(Dst, 9556); 1463 dasm_put(Dst, 9573);
1460 } else { 1464 } else {
1461 dasm_put(Dst, 9568); 1465 dasm_put(Dst, 9585);
1462 if (cmov) { 1466 if (cmov) {
1463 dasm_put(Dst, 9472); 1467 dasm_put(Dst, 9489);
1464 } else { 1468 } else {
1465 dasm_put(Dst, 9478); 1469 dasm_put(Dst, 9495);
1466 } 1470 }
1467 } 1471 }
1468 iseqne_fp: 1472 iseqne_fp:
1469 if (vk) { 1473 if (vk) {
1470 dasm_put(Dst, 9575); 1474 dasm_put(Dst, 9592);
1471 } else { 1475 } else {
1472 dasm_put(Dst, 9584); 1476 dasm_put(Dst, 9601);
1473 } 1477 }
1474 iseqne_end: 1478 iseqne_end:
1475 if (vk) { 1479 if (vk) {
1476 dasm_put(Dst, 9593, -BCBIAS_J*4); 1480 dasm_put(Dst, 9610, -BCBIAS_J*4);
1477 } else { 1481 } else {
1478 dasm_put(Dst, 9608, -BCBIAS_J*4); 1482 dasm_put(Dst, 9625, -BCBIAS_J*4);
1479 } 1483 }
1480 dasm_put(Dst, 7597); 1484 dasm_put(Dst, 7616);
1481 if (op == BC_ISEQV || op == BC_ISNEV) { 1485 if (op == BC_ISEQV || op == BC_ISNEV) {
1482 dasm_put(Dst, 9623, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq); 1486 dasm_put(Dst, 9640, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq);
1483 if (vk) { 1487 if (vk) {
1484 dasm_put(Dst, 9681); 1488 dasm_put(Dst, 9698);
1485 } else { 1489 } else {
1486 dasm_put(Dst, 9685); 1490 dasm_put(Dst, 9702);
1487 } 1491 }
1488 dasm_put(Dst, 9691); 1492 dasm_put(Dst, 9708);
1489 } 1493 }
1490 break; 1494 break;
1491 case BC_ISEQS: case BC_ISNES: 1495 case BC_ISEQS: case BC_ISNES:
1492 vk = op == BC_ISEQS; 1496 vk = op == BC_ISEQS;
1493 dasm_put(Dst, 9696, LJ_TSTR); 1497 dasm_put(Dst, 9713, LJ_TSTR);
1494 iseqne_test: 1498 iseqne_test:
1495 if (vk) { 1499 if (vk) {
1496 dasm_put(Dst, 9579); 1500 dasm_put(Dst, 9596);
1497 } else { 1501 } else {
1498 dasm_put(Dst, 8934); 1502 dasm_put(Dst, 8953);
1499 } 1503 }
1500 goto iseqne_end; 1504 goto iseqne_end;
1501 case BC_ISEQN: case BC_ISNEN: 1505 case BC_ISEQN: case BC_ISNEN:
1502 vk = op == BC_ISEQN; 1506 vk = op == BC_ISEQN;
1503 dasm_put(Dst, 9721, LJ_TISNUM); 1507 dasm_put(Dst, 9738, LJ_TISNUM);
1504 if (sse) { 1508 if (sse) {
1505 dasm_put(Dst, 9735); 1509 dasm_put(Dst, 9752);
1506 } else { 1510 } else {
1507 dasm_put(Dst, 9748); 1511 dasm_put(Dst, 9765);
1508 if (cmov) { 1512 if (cmov) {
1509 dasm_put(Dst, 9472); 1513 dasm_put(Dst, 9489);
1510 } else { 1514 } else {
1511 dasm_put(Dst, 9478); 1515 dasm_put(Dst, 9495);
1512 } 1516 }
1513 } 1517 }
1514 goto iseqne_fp; 1518 goto iseqne_fp;
1515 case BC_ISEQP: case BC_ISNEP: 1519 case BC_ISEQP: case BC_ISNEP:
1516 vk = op == BC_ISEQP; 1520 vk = op == BC_ISEQP;
1517 dasm_put(Dst, 9756); 1521 dasm_put(Dst, 9773);
1518 goto iseqne_test; 1522 goto iseqne_test;
1519 1523
1520 /* -- Unary test and copy ops ------------------------------------------- */ 1524 /* -- Unary test and copy ops ------------------------------------------- */
1521 1525
1522 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 1526 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
1523 dasm_put(Dst, 9768, LJ_TISTRUECOND); 1527 dasm_put(Dst, 9785, LJ_TISTRUECOND);
1524 if (op == BC_IST || op == BC_ISTC) { 1528 if (op == BC_IST || op == BC_ISTC) {
1525 dasm_put(Dst, 9780); 1529 dasm_put(Dst, 9797);
1526 } else { 1530 } else {
1527 dasm_put(Dst, 9785); 1531 dasm_put(Dst, 9802);
1528 } 1532 }
1529 if (op == BC_ISTC || op == BC_ISFC) { 1533 if (op == BC_ISTC || op == BC_ISFC) {
1530 dasm_put(Dst, 9790); 1534 dasm_put(Dst, 9807);
1531 } 1535 }
1532 dasm_put(Dst, 9801, -BCBIAS_J*4); 1536 dasm_put(Dst, 9818, -BCBIAS_J*4);
1533 break; 1537 break;
1534 1538
1535 /* -- Unary ops --------------------------------------------------------- */ 1539 /* -- Unary ops --------------------------------------------------------- */
1536 1540
1537 case BC_MOV: 1541 case BC_MOV:
1538 dasm_put(Dst, 9834); 1542 dasm_put(Dst, 9851);
1539 break; 1543 break;
1540 case BC_NOT: 1544 case BC_NOT:
1541 dasm_put(Dst, 9869, LJ_TISTRUECOND, LJ_TTRUE); 1545 dasm_put(Dst, 9886, LJ_TISTRUECOND, LJ_TTRUE);
1542 break; 1546 break;
1543 case BC_UNM: 1547 case BC_UNM:
1544 dasm_put(Dst, 9906, LJ_TISNUM); 1548 dasm_put(Dst, 9923, LJ_TISNUM);
1545 if (sse) { 1549 if (sse) {
1546 dasm_put(Dst, 9917, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1550 dasm_put(Dst, 9934, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1547 } else { 1551 } else {
1548 dasm_put(Dst, 9942); 1552 dasm_put(Dst, 9959);
1549 } 1553 }
1550 dasm_put(Dst, 7597); 1554 dasm_put(Dst, 7616);
1551 break; 1555 break;
1552 case BC_LEN: 1556 case BC_LEN:
1553 dasm_put(Dst, 9951, LJ_TSTR); 1557 dasm_put(Dst, 9968, LJ_TSTR);
1554 if (sse) { 1558 if (sse) {
1555 dasm_put(Dst, 9965, Dt5(->len)); 1559 dasm_put(Dst, 9982, Dt5(->len));
1556 } else { 1560 } else {
1557 dasm_put(Dst, 9983, Dt5(->len)); 1561 dasm_put(Dst, 10000, Dt5(->len));
1558 } 1562 }
1559 dasm_put(Dst, 9992, LJ_TTAB); 1563 dasm_put(Dst, 10009, LJ_TTAB);
1560 if (sse) { 1564 if (sse) {
1561 dasm_put(Dst, 10034); 1565 dasm_put(Dst, 10051);
1562 } else { 1566 } else {
1563 } 1567 }
1564 dasm_put(Dst, 10043); 1568 dasm_put(Dst, 10060);
1565 break; 1569 break;
1566 1570
1567 /* -- Binary ops -------------------------------------------------------- */ 1571 /* -- Binary ops -------------------------------------------------------- */
1568 1572
1569 1573
1570 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: 1574 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV:
1571 dasm_put(Dst, 10053); 1575 dasm_put(Dst, 10070);
1572 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1576 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1573 switch (vk) { 1577 switch (vk) {
1574 case 0: 1578 case 0:
1575 dasm_put(Dst, 10061, LJ_TISNUM); 1579 dasm_put(Dst, 10078, LJ_TISNUM);
1576 if (sse) { 1580 if (sse) {
1577 dasm_put(Dst, 10073); 1581 dasm_put(Dst, 10090);
1578 } else { 1582 } else {
1579 dasm_put(Dst, 10088); 1583 dasm_put(Dst, 10105);
1580 } 1584 }
1581 break; 1585 break;
1582 case 1: 1586 case 1:
1583 dasm_put(Dst, 10097, LJ_TISNUM); 1587 dasm_put(Dst, 10114, LJ_TISNUM);
1584 if (sse) { 1588 if (sse) {
1585 dasm_put(Dst, 10109); 1589 dasm_put(Dst, 10126);
1586 } else { 1590 } else {
1587 dasm_put(Dst, 10124); 1591 dasm_put(Dst, 10141);
1588 } 1592 }
1589 break; 1593 break;
1590 default: 1594 default:
1591 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1595 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1592 if (sse) { 1596 if (sse) {
1593 dasm_put(Dst, 10155); 1597 dasm_put(Dst, 10172);
1594 } else { 1598 } else {
1595 dasm_put(Dst, 10169); 1599 dasm_put(Dst, 10186);
1596 } 1600 }
1597 break; 1601 break;
1598 } 1602 }
1599 if (sse) { 1603 if (sse) {
1600 dasm_put(Dst, 9935); 1604 dasm_put(Dst, 9952);
1601 } else { 1605 } else {
1602 dasm_put(Dst, 9947); 1606 dasm_put(Dst, 9964);
1603 } 1607 }
1604 dasm_put(Dst, 7597); 1608 dasm_put(Dst, 7616);
1605 break; 1609 break;
1606 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 1610 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
1607 dasm_put(Dst, 10053); 1611 dasm_put(Dst, 10070);
1608 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1612 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1609 switch (vk) { 1613 switch (vk) {
1610 case 0: 1614 case 0:
1611 dasm_put(Dst, 10061, LJ_TISNUM); 1615 dasm_put(Dst, 10078, LJ_TISNUM);
1612 if (sse) { 1616 if (sse) {
1613 dasm_put(Dst, 10177); 1617 dasm_put(Dst, 10194);
1614 } else { 1618 } else {
1615 dasm_put(Dst, 10192); 1619 dasm_put(Dst, 10209);
1616 } 1620 }
1617 break; 1621 break;
1618 case 1: 1622 case 1:
1619 dasm_put(Dst, 10097, LJ_TISNUM); 1623 dasm_put(Dst, 10114, LJ_TISNUM);
1620 if (sse) { 1624 if (sse) {
1621 dasm_put(Dst, 10201); 1625 dasm_put(Dst, 10218);
1622 } else { 1626 } else {
1623 dasm_put(Dst, 10216); 1627 dasm_put(Dst, 10233);
1624 } 1628 }
1625 break; 1629 break;
1626 default: 1630 default:
1627 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1631 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1628 if (sse) { 1632 if (sse) {
1629 dasm_put(Dst, 10225); 1633 dasm_put(Dst, 10242);
1630 } else { 1634 } else {
1631 dasm_put(Dst, 10239); 1635 dasm_put(Dst, 10256);
1632 } 1636 }
1633 break; 1637 break;
1634 } 1638 }
1635 if (sse) { 1639 if (sse) {
1636 dasm_put(Dst, 9935); 1640 dasm_put(Dst, 9952);
1637 } else { 1641 } else {
1638 dasm_put(Dst, 9947); 1642 dasm_put(Dst, 9964);
1639 } 1643 }
1640 dasm_put(Dst, 7597); 1644 dasm_put(Dst, 7616);
1641 break; 1645 break;
1642 case BC_MULVN: case BC_MULNV: case BC_MULVV: 1646 case BC_MULVN: case BC_MULNV: case BC_MULVV:
1643 dasm_put(Dst, 10053); 1647 dasm_put(Dst, 10070);
1644 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1648 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1645 switch (vk) { 1649 switch (vk) {
1646 case 0: 1650 case 0:
1647 dasm_put(Dst, 10061, LJ_TISNUM); 1651 dasm_put(Dst, 10078, LJ_TISNUM);
1648 if (sse) { 1652 if (sse) {
1649 dasm_put(Dst, 10247); 1653 dasm_put(Dst, 10264);
1650 } else { 1654 } else {
1651 dasm_put(Dst, 10262); 1655 dasm_put(Dst, 10279);
1652 } 1656 }
1653 break; 1657 break;
1654 case 1: 1658 case 1:
1655 dasm_put(Dst, 10097, LJ_TISNUM); 1659 dasm_put(Dst, 10114, LJ_TISNUM);
1656 if (sse) { 1660 if (sse) {
1657 dasm_put(Dst, 10271); 1661 dasm_put(Dst, 10288);
1658 } else { 1662 } else {
1659 dasm_put(Dst, 10286); 1663 dasm_put(Dst, 10303);
1660 } 1664 }
1661 break; 1665 break;
1662 default: 1666 default:
1663 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1667 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1664 if (sse) { 1668 if (sse) {
1665 dasm_put(Dst, 10295); 1669 dasm_put(Dst, 10312);
1666 } else { 1670 } else {
1667 dasm_put(Dst, 10309); 1671 dasm_put(Dst, 10326);
1668 } 1672 }
1669 break; 1673 break;
1670 } 1674 }
1671 if (sse) { 1675 if (sse) {
1672 dasm_put(Dst, 9935); 1676 dasm_put(Dst, 9952);
1673 } else { 1677 } else {
1674 dasm_put(Dst, 9947); 1678 dasm_put(Dst, 9964);
1675 } 1679 }
1676 dasm_put(Dst, 7597); 1680 dasm_put(Dst, 7616);
1677 break; 1681 break;
1678 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 1682 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
1679 dasm_put(Dst, 10053); 1683 dasm_put(Dst, 10070);
1680 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1684 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1681 switch (vk) { 1685 switch (vk) {
1682 case 0: 1686 case 0:
1683 dasm_put(Dst, 10061, LJ_TISNUM); 1687 dasm_put(Dst, 10078, LJ_TISNUM);
1684 if (sse) { 1688 if (sse) {
1685 dasm_put(Dst, 10317); 1689 dasm_put(Dst, 10334);
1686 } else { 1690 } else {
1687 dasm_put(Dst, 10332); 1691 dasm_put(Dst, 10349);
1688 } 1692 }
1689 break; 1693 break;
1690 case 1: 1694 case 1:
1691 dasm_put(Dst, 10097, LJ_TISNUM); 1695 dasm_put(Dst, 10114, LJ_TISNUM);
1692 if (sse) { 1696 if (sse) {
1693 dasm_put(Dst, 10341); 1697 dasm_put(Dst, 10358);
1694 } else { 1698 } else {
1695 dasm_put(Dst, 10356); 1699 dasm_put(Dst, 10373);
1696 } 1700 }
1697 break; 1701 break;
1698 default: 1702 default:
1699 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1703 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1700 if (sse) { 1704 if (sse) {
1701 dasm_put(Dst, 10365); 1705 dasm_put(Dst, 10382);
1702 } else { 1706 } else {
1703 dasm_put(Dst, 10379); 1707 dasm_put(Dst, 10396);
1704 } 1708 }
1705 break; 1709 break;
1706 } 1710 }
1707 if (sse) { 1711 if (sse) {
1708 dasm_put(Dst, 9935); 1712 dasm_put(Dst, 9952);
1709 } else { 1713 } else {
1710 dasm_put(Dst, 9947); 1714 dasm_put(Dst, 9964);
1711 } 1715 }
1712 dasm_put(Dst, 7597); 1716 dasm_put(Dst, 7616);
1713 break; 1717 break;
1714 case BC_MODVN: 1718 case BC_MODVN:
1715 dasm_put(Dst, 10053); 1719 dasm_put(Dst, 10070);
1716 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1720 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1717 switch (vk) { 1721 switch (vk) {
1718 case 0: 1722 case 0:
1719 dasm_put(Dst, 10061, LJ_TISNUM); 1723 dasm_put(Dst, 10078, LJ_TISNUM);
1720 if (sse) { 1724 if (sse) {
1721 dasm_put(Dst, 10387); 1725 dasm_put(Dst, 10404);
1722 } else { 1726 } else {
1723 dasm_put(Dst, 10402); 1727 dasm_put(Dst, 10419);
1724 } 1728 }
1725 break; 1729 break;
1726 case 1: 1730 case 1:
1727 dasm_put(Dst, 10097, LJ_TISNUM); 1731 dasm_put(Dst, 10114, LJ_TISNUM);
1728 if (sse) { 1732 if (sse) {
1729 dasm_put(Dst, 10411); 1733 dasm_put(Dst, 10428);
1730 } else { 1734 } else {
1731 dasm_put(Dst, 10426); 1735 dasm_put(Dst, 10443);
1732 } 1736 }
1733 break; 1737 break;
1734 default: 1738 default:
1735 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1739 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1736 if (sse) { 1740 if (sse) {
1737 dasm_put(Dst, 10435); 1741 dasm_put(Dst, 10452);
1738 } else { 1742 } else {
1739 dasm_put(Dst, 10449); 1743 dasm_put(Dst, 10466);
1740 } 1744 }
1741 break; 1745 break;
1742 } 1746 }
1743 dasm_put(Dst, 10457); 1747 dasm_put(Dst, 10474);
1744 if (sse) { 1748 if (sse) {
1745 dasm_put(Dst, 9935); 1749 dasm_put(Dst, 9952);
1746 } else { 1750 } else {
1747 dasm_put(Dst, 9947); 1751 dasm_put(Dst, 9964);
1748 } 1752 }
1749 dasm_put(Dst, 7597); 1753 dasm_put(Dst, 7616);
1750 break; 1754 break;
1751 case BC_MODNV: case BC_MODVV: 1755 case BC_MODNV: case BC_MODVV:
1752 dasm_put(Dst, 10053); 1756 dasm_put(Dst, 10070);
1753 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1757 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1754 switch (vk) { 1758 switch (vk) {
1755 case 0: 1759 case 0:
1756 dasm_put(Dst, 10061, LJ_TISNUM); 1760 dasm_put(Dst, 10078, LJ_TISNUM);
1757 if (sse) { 1761 if (sse) {
1758 dasm_put(Dst, 10387); 1762 dasm_put(Dst, 10404);
1759 } else { 1763 } else {
1760 dasm_put(Dst, 10402); 1764 dasm_put(Dst, 10419);
1761 } 1765 }
1762 break; 1766 break;
1763 case 1: 1767 case 1:
1764 dasm_put(Dst, 10097, LJ_TISNUM); 1768 dasm_put(Dst, 10114, LJ_TISNUM);
1765 if (sse) { 1769 if (sse) {
1766 dasm_put(Dst, 10411); 1770 dasm_put(Dst, 10428);
1767 } else { 1771 } else {
1768 dasm_put(Dst, 10426); 1772 dasm_put(Dst, 10443);
1769 } 1773 }
1770 break; 1774 break;
1771 default: 1775 default:
1772 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1776 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1773 if (sse) { 1777 if (sse) {
1774 dasm_put(Dst, 10435); 1778 dasm_put(Dst, 10452);
1775 } else { 1779 } else {
1776 dasm_put(Dst, 10449); 1780 dasm_put(Dst, 10466);
1777 } 1781 }
1778 break; 1782 break;
1779 } 1783 }
1780 dasm_put(Dst, 10463); 1784 dasm_put(Dst, 10480);
1781 break; 1785 break;
1782 case BC_POW: 1786 case BC_POW:
1783 dasm_put(Dst, 10053); 1787 dasm_put(Dst, 10070);
1784 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1788 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1785 switch (vk) { 1789 switch (vk) {
1786 case 0: 1790 case 0:
1787 dasm_put(Dst, 10061, LJ_TISNUM); 1791 dasm_put(Dst, 10078, LJ_TISNUM);
1788 if (sse) { 1792 if (sse) {
1789 dasm_put(Dst, 10387); 1793 dasm_put(Dst, 10404);
1790 } else { 1794 } else {
1791 dasm_put(Dst, 10402); 1795 dasm_put(Dst, 10419);
1792 } 1796 }
1793 break; 1797 break;
1794 case 1: 1798 case 1:
1795 dasm_put(Dst, 10097, LJ_TISNUM); 1799 dasm_put(Dst, 10114, LJ_TISNUM);
1796 if (sse) { 1800 if (sse) {
1797 dasm_put(Dst, 10411); 1801 dasm_put(Dst, 10428);
1798 } else { 1802 } else {
1799 dasm_put(Dst, 10426); 1803 dasm_put(Dst, 10443);
1800 } 1804 }
1801 break; 1805 break;
1802 default: 1806 default:
1803 dasm_put(Dst, 10133, LJ_TISNUM, LJ_TISNUM); 1807 dasm_put(Dst, 10150, LJ_TISNUM, LJ_TISNUM);
1804 if (sse) { 1808 if (sse) {
1805 dasm_put(Dst, 10435); 1809 dasm_put(Dst, 10452);
1806 } else { 1810 } else {
1807 dasm_put(Dst, 10449); 1811 dasm_put(Dst, 10466);
1808 } 1812 }
1809 break; 1813 break;
1810 } 1814 }
1811 dasm_put(Dst, 10468); 1815 dasm_put(Dst, 10485);
1812 if (sse) { 1816 if (sse) {
1813 dasm_put(Dst, 9935); 1817 dasm_put(Dst, 9952);
1814 } else { 1818 } else {
1815 dasm_put(Dst, 9947); 1819 dasm_put(Dst, 9964);
1816 } 1820 }
1817 dasm_put(Dst, 7597); 1821 dasm_put(Dst, 7616);
1818 break; 1822 break;
1819 1823
1820 case BC_CAT: 1824 case BC_CAT:
1821 dasm_put(Dst, 10472, Dt1(->base), Dt1(->base)); 1825 dasm_put(Dst, 10489, Dt1(->base), Dt1(->base));
1822 break; 1826 break;
1823 1827
1824 /* -- Constant ops ------------------------------------------------------ */ 1828 /* -- Constant ops ------------------------------------------------------ */
1825 1829
1826 case BC_KSTR: 1830 case BC_KSTR:
1827 dasm_put(Dst, 10563, LJ_TSTR); 1831 dasm_put(Dst, 10580, LJ_TSTR);
1828 break; 1832 break;
1829 case BC_KSHORT: 1833 case BC_KSHORT:
1830 if (sse) { 1834 if (sse) {
1831 dasm_put(Dst, 10600); 1835 dasm_put(Dst, 10617);
1832 } else { 1836 } else {
1833 dasm_put(Dst, 10615); 1837 dasm_put(Dst, 10632);
1834 } 1838 }
1835 dasm_put(Dst, 7597); 1839 dasm_put(Dst, 7616);
1836 break; 1840 break;
1837 case BC_KNUM: 1841 case BC_KNUM:
1838 if (sse) { 1842 if (sse) {
1839 dasm_put(Dst, 10623); 1843 dasm_put(Dst, 10640);
1840 } else { 1844 } else {
1841 dasm_put(Dst, 10637); 1845 dasm_put(Dst, 10654);
1842 } 1846 }
1843 dasm_put(Dst, 7597); 1847 dasm_put(Dst, 7616);
1844 break; 1848 break;
1845 case BC_KPRI: 1849 case BC_KPRI:
1846 dasm_put(Dst, 10645); 1850 dasm_put(Dst, 10662);
1847 break; 1851 break;
1848 case BC_KNIL: 1852 case BC_KNIL:
1849 dasm_put(Dst, 10674, LJ_TNIL); 1853 dasm_put(Dst, 10691, LJ_TNIL);
1850 break; 1854 break;
1851 1855
1852 /* -- Upvalue and function ops ------------------------------------------ */ 1856 /* -- Upvalue and function ops ------------------------------------------ */
1853 1857
1854 case BC_UGET: 1858 case BC_UGET:
1855 dasm_put(Dst, 10722, offsetof(GCfuncL, uvptr), DtA(->v)); 1859 dasm_put(Dst, 10739, offsetof(GCfuncL, uvptr), DtA(->v));
1856 break; 1860 break;
1857 case BC_USETV: 1861 case BC_USETV:
1858#define TV2MARKOFS \ 1862#define TV2MARKOFS \
1859 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) 1863 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv))
1860 dasm_put(Dst, 10768, 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); 1864 dasm_put(Dst, 10785, 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);
1861 dasm_put(Dst, 10864); 1865 dasm_put(Dst, 10881);
1862 break; 1866 break;
1863#undef TV2MARKOFS 1867#undef TV2MARKOFS
1864 case BC_USETS: 1868 case BC_USETS:
1865 dasm_put(Dst, 10876, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); 1869 dasm_put(Dst, 10893, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G);
1866 break; 1870 break;
1867 case BC_USETN: 1871 case BC_USETN:
1868 dasm_put(Dst, 10972); 1872 dasm_put(Dst, 10989);
1869 if (sse) { 1873 if (sse) {
1870 dasm_put(Dst, 10977); 1874 dasm_put(Dst, 10994);
1871 } else { 1875 } else {
1872 dasm_put(Dst, 9751); 1876 dasm_put(Dst, 9768);
1873 } 1877 }
1874 dasm_put(Dst, 10985, offsetof(GCfuncL, uvptr), DtA(->v)); 1878 dasm_put(Dst, 11002, offsetof(GCfuncL, uvptr), DtA(->v));
1875 if (sse) { 1879 if (sse) {
1876 dasm_put(Dst, 4858); 1880 dasm_put(Dst, 4877);
1877 } else { 1881 } else {
1878 dasm_put(Dst, 4864); 1882 dasm_put(Dst, 4883);
1879 } 1883 }
1880 dasm_put(Dst, 7597); 1884 dasm_put(Dst, 7616);
1881 break; 1885 break;
1882 case BC_USETP: 1886 case BC_USETP:
1883 dasm_put(Dst, 10994, offsetof(GCfuncL, uvptr), DtA(->v)); 1887 dasm_put(Dst, 11011, offsetof(GCfuncL, uvptr), DtA(->v));
1884 break; 1888 break;
1885 case BC_UCLO: 1889 case BC_UCLO:
1886 dasm_put(Dst, 11034, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); 1890 dasm_put(Dst, 11051, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base));
1887 break; 1891 break;
1888 1892
1889 case BC_FNEW: 1893 case BC_FNEW:
1890 dasm_put(Dst, 11090, Dt1(->base), Dt1(->base), LJ_TFUNC); 1894 dasm_put(Dst, 11107, Dt1(->base), Dt1(->base), LJ_TFUNC);
1891 break; 1895 break;
1892 1896
1893 /* -- Table ops --------------------------------------------------------- */ 1897 /* -- Table ops --------------------------------------------------------- */
1894 1898
1895 case BC_TNEW: 1899 case BC_TNEW:
1896 dasm_put(Dst, 11157, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); 1900 dasm_put(Dst, 11174, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB);
1897 break; 1901 break;
1898 case BC_TDUP: 1902 case BC_TDUP:
1899 dasm_put(Dst, 11281, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 1903 dasm_put(Dst, 11298, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
1900 break; 1904 break;
1901 1905
1902 case BC_GGET: 1906 case BC_GGET:
1903 dasm_put(Dst, 11380, Dt7(->env)); 1907 dasm_put(Dst, 11397, Dt7(->env));
1904 break; 1908 break;
1905 case BC_GSET: 1909 case BC_GSET:
1906 dasm_put(Dst, 11400, Dt7(->env)); 1910 dasm_put(Dst, 11417, Dt7(->env));
1907 break; 1911 break;
1908 1912
1909 case BC_TGETV: 1913 case BC_TGETV:
1910 dasm_put(Dst, 11420, LJ_TTAB, LJ_TISNUM); 1914 dasm_put(Dst, 11437, LJ_TTAB, LJ_TISNUM);
1911 if (sse) { 1915 if (sse) {
1912 dasm_put(Dst, 11453); 1916 dasm_put(Dst, 11470);
1913 } else { 1917 } else {
1914 } 1918 }
1915 dasm_put(Dst, 11474, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1919 dasm_put(Dst, 11491, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1916 dasm_put(Dst, 11568, LJ_TSTR); 1920 dasm_put(Dst, 11585, LJ_TSTR);
1917 break; 1921 break;
1918 case BC_TGETS: 1922 case BC_TGETS:
1919 dasm_put(Dst, 11586, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 1923 dasm_put(Dst, 11603, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
1920 dasm_put(Dst, 11672, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1924 dasm_put(Dst, 11689, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1921 break; 1925 break;
1922 case BC_TGETB: 1926 case BC_TGETB:
1923 dasm_put(Dst, 11745, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1927 dasm_put(Dst, 11762, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1924 dasm_put(Dst, 10043); 1928 dasm_put(Dst, 10060);
1925 break; 1929 break;
1926 1930
1927 case BC_TSETV: 1931 case BC_TSETV:
1928 dasm_put(Dst, 11846, LJ_TTAB, LJ_TISNUM); 1932 dasm_put(Dst, 11863, LJ_TTAB, LJ_TISNUM);
1929 if (sse) { 1933 if (sse) {
1930 dasm_put(Dst, 11453); 1934 dasm_put(Dst, 11470);
1931 } else { 1935 } else {
1932 } 1936 }
1933 dasm_put(Dst, 11879, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable)); 1937 dasm_put(Dst, 11896, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable));
1934 dasm_put(Dst, 11964, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1938 dasm_put(Dst, 11981, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1935 break; 1939 break;
1936 case BC_TSETS: 1940 case BC_TSETS:
1937 dasm_put(Dst, 12028, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 1941 dasm_put(Dst, 12045, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
1938 dasm_put(Dst, 12105, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next)); 1942 dasm_put(Dst, 12122, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next));
1939 dasm_put(Dst, 12197, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1943 dasm_put(Dst, 12214, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1940 break; 1944 break;
1941 case BC_TSETB: 1945 case BC_TSETB:
1942 dasm_put(Dst, 12289, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 1946 dasm_put(Dst, 12306, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
1943 dasm_put(Dst, 12389, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1947 dasm_put(Dst, 12406, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1944 break; 1948 break;
1945 1949
1946 case BC_TSETM: 1950 case BC_TSETM:
1947 dasm_put(Dst, 12437); 1951 dasm_put(Dst, 12454);
1948 if (sse) { 1952 if (sse) {
1949 dasm_put(Dst, 10977); 1953 dasm_put(Dst, 10994);
1950 } else { 1954 } else {
1951 } 1955 }
1952 dasm_put(Dst, 12442, Dt6(->marked), LJ_GC_BLACK); 1956 dasm_put(Dst, 12459, Dt6(->marked), LJ_GC_BLACK);
1953 if (sse) { 1957 if (sse) {
1954 dasm_put(Dst, 12467); 1958 dasm_put(Dst, 12484);
1955 } else { 1959 } else {
1956 } 1960 }
1957 dasm_put(Dst, 12475, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain)); 1961 dasm_put(Dst, 12492, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain));
1958 dasm_put(Dst, 12611, Dt6(->gclist)); 1962 dasm_put(Dst, 12628, Dt6(->gclist));
1959 break; 1963 break;
1960 1964
1961 /* -- Calls and vararg handling ----------------------------------------- */ 1965 /* -- Calls and vararg handling ----------------------------------------- */
1962 1966
1963 case BC_CALL: case BC_CALLM: 1967 case BC_CALL: case BC_CALLM:
1964 dasm_put(Dst, 10057); 1968 dasm_put(Dst, 10074);
1965 if (op == BC_CALLM) { 1969 if (op == BC_CALLM) {
1966 dasm_put(Dst, 12619); 1970 dasm_put(Dst, 12636);
1967 } 1971 }
1968 dasm_put(Dst, 12624, LJ_TFUNC, Dt7(->gate)); 1972 dasm_put(Dst, 12641, LJ_TFUNC, Dt7(->gate));
1969 break; 1973 break;
1970 1974
1971 case BC_CALLMT: 1975 case BC_CALLMT:
1972 dasm_put(Dst, 12619); 1976 dasm_put(Dst, 12636);
1973 break; 1977 break;
1974 case BC_CALLT: 1978 case BC_CALLT:
1975 dasm_put(Dst, 12647, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->gate)); 1979 dasm_put(Dst, 12664, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->gate));
1976 dasm_put(Dst, 12756, FRAME_TYPE, Dt7(->pt), Dt9(->k)); 1980 dasm_put(Dst, 12773, FRAME_TYPE, Dt7(->pc), PC2PROTO(k));
1977 break; 1981 break;
1978 1982
1979 case BC_ITERC: 1983 case BC_ITERC:
1980 dasm_put(Dst, 12817, LJ_TFUNC, Dt7(->gate)); 1984 dasm_put(Dst, 12834, LJ_TFUNC, Dt7(->gate));
1981 break; 1985 break;
1982 1986
1983 case BC_VARG: 1987 case BC_VARG:
1984 dasm_put(Dst, 12879, Dt7(->pt), Dt9(->numparams), (8+FRAME_VARG), LJ_TNIL); 1988 dasm_put(Dst, 12896, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL);
1985 dasm_put(Dst, 13033, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 1989 dasm_put(Dst, 13050, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
1986 break; 1990 break;
1987 1991
1988 /* -- Returns ----------------------------------------------------------- */ 1992 /* -- Returns ----------------------------------------------------------- */
1989 1993
1990 case BC_RETM: 1994 case BC_RETM:
1991 dasm_put(Dst, 12619); 1995 dasm_put(Dst, 12636);
1992 break; 1996 break;
1993 1997
1994 case BC_RET: case BC_RET0: case BC_RET1: 1998 case BC_RET: case BC_RET0: case BC_RET1:
1995 if (op != BC_RET0) { 1999 if (op != BC_RET0) {
1996 dasm_put(Dst, 13138); 2000 dasm_put(Dst, 13155);
1997 } 2001 }
1998 dasm_put(Dst, 13142, FRAME_TYPE); 2002 dasm_put(Dst, 13159, FRAME_TYPE);
1999 switch (op) { 2003 switch (op) {
2000 case BC_RET: 2004 case BC_RET:
2001 dasm_put(Dst, 13161); 2005 dasm_put(Dst, 13178);
2002 break; 2006 break;
2003 case BC_RET1: 2007 case BC_RET1:
2004 dasm_put(Dst, 13225); 2008 dasm_put(Dst, 13242);
2005 /* fallthrough */ 2009 /* fallthrough */
2006 case BC_RET0: 2010 case BC_RET0:
2007 dasm_put(Dst, 13241); 2011 dasm_put(Dst, 13258);
2008 default: 2012 default:
2009 break; 2013 break;
2010 } 2014 }
2011 dasm_put(Dst, 13252, Dt7(->pt), Dt9(->k)); 2015 dasm_put(Dst, 13269, Dt7(->pc), PC2PROTO(k));
2012 if (op == BC_RET) { 2016 if (op == BC_RET) {
2013 dasm_put(Dst, 13300, LJ_TNIL); 2017 dasm_put(Dst, 13317, LJ_TNIL);
2014 } else { 2018 } else {
2015 dasm_put(Dst, 13311, LJ_TNIL); 2019 dasm_put(Dst, 13328, LJ_TNIL);
2016 } 2020 }
2017 dasm_put(Dst, 13318); 2021 dasm_put(Dst, 13335);
2018 if (op != BC_RET0) { 2022 if (op != BC_RET0) {
2019 dasm_put(Dst, 13338); 2023 dasm_put(Dst, 13355);
2020 } 2024 }
2021 dasm_put(Dst, 4947); 2025 dasm_put(Dst, 4966);
2022 break; 2026 break;
2023 2027
2024 /* -- Loops and branches ------------------------------------------------ */ 2028 /* -- Loops and branches ------------------------------------------------ */
@@ -2026,7 +2030,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2026 2030
2027 case BC_FORL: 2031 case BC_FORL:
2028#if LJ_HASJIT 2032#if LJ_HASJIT
2029 dasm_put(Dst, 13341, HOTCOUNT_PCMASK, GG_DISP2HOT); 2033 dasm_put(Dst, 13358, HOTCOUNT_PCMASK, GG_DISP2HOT);
2030#endif 2034#endif
2031 break; 2035 break;
2032 2036
@@ -2038,57 +2042,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2038 case BC_FORI: 2042 case BC_FORI:
2039 case BC_IFORL: 2043 case BC_IFORL:
2040 vk = (op == BC_IFORL || op == BC_JFORL); 2044 vk = (op == BC_IFORL || op == BC_JFORL);
2041 dasm_put(Dst, 13362); 2045 dasm_put(Dst, 13379);
2042 if (!vk) { 2046 if (!vk) {
2043 dasm_put(Dst, 13366, LJ_TISNUM, LJ_TISNUM); 2047 dasm_put(Dst, 13383, LJ_TISNUM, LJ_TISNUM);
2044 } 2048 }
2045 dasm_put(Dst, 13385); 2049 dasm_put(Dst, 13402);
2046 if (!vk) { 2050 if (!vk) {
2047 dasm_put(Dst, 13389, LJ_TISNUM); 2051 dasm_put(Dst, 13406, LJ_TISNUM);
2048 } 2052 }
2049 if (sse) { 2053 if (sse) {
2050 dasm_put(Dst, 13398); 2054 dasm_put(Dst, 13415);
2051 if (vk) { 2055 if (vk) {
2052 dasm_put(Dst, 13410); 2056 dasm_put(Dst, 13427);
2053 } else { 2057 } else {
2054 dasm_put(Dst, 13429); 2058 dasm_put(Dst, 13446);
2055 } 2059 }
2056 dasm_put(Dst, 13434); 2060 dasm_put(Dst, 13451);
2057 } else { 2061 } else {
2058 dasm_put(Dst, 13447); 2062 dasm_put(Dst, 13464);
2059 if (vk) { 2063 if (vk) {
2060 dasm_put(Dst, 13453); 2064 dasm_put(Dst, 13470);
2061 } else { 2065 } else {
2062 dasm_put(Dst, 13469); 2066 dasm_put(Dst, 13486);
2063 } 2067 }
2064 dasm_put(Dst, 13477); 2068 dasm_put(Dst, 13494);
2065 if (cmov) { 2069 if (cmov) {
2066 dasm_put(Dst, 9472); 2070 dasm_put(Dst, 9489);
2067 } else { 2071 } else {
2068 dasm_put(Dst, 9478); 2072 dasm_put(Dst, 9495);
2069 } 2073 }
2070 if (!cmov) { 2074 if (!cmov) {
2071 dasm_put(Dst, 13482); 2075 dasm_put(Dst, 13499);
2072 } 2076 }
2073 } 2077 }
2074 if (op == BC_FORI) { 2078 if (op == BC_FORI) {
2075 dasm_put(Dst, 13488, -BCBIAS_J*4); 2079 dasm_put(Dst, 13505, -BCBIAS_J*4);
2076 } else if (op == BC_JFORI) { 2080 } else if (op == BC_JFORI) {
2077 dasm_put(Dst, 13498, -BCBIAS_J*4, BC_JLOOP); 2081 dasm_put(Dst, 13515, -BCBIAS_J*4, BC_JLOOP);
2078 } else if (op == BC_IFORL) { 2082 } else if (op == BC_IFORL) {
2079 dasm_put(Dst, 13512, -BCBIAS_J*4); 2083 dasm_put(Dst, 13529, -BCBIAS_J*4);
2080 } else { 2084 } else {
2081 dasm_put(Dst, 13508, BC_JLOOP); 2085 dasm_put(Dst, 13525, BC_JLOOP);
2082 } 2086 }
2083 dasm_put(Dst, 9507); 2087 dasm_put(Dst, 9524);
2084 if (sse) { 2088 if (sse) {
2085 dasm_put(Dst, 13522); 2089 dasm_put(Dst, 13539);
2086 } 2090 }
2087 break; 2091 break;
2088 2092
2089 case BC_ITERL: 2093 case BC_ITERL:
2090#if LJ_HASJIT 2094#if LJ_HASJIT
2091 dasm_put(Dst, 13341, HOTCOUNT_PCMASK, GG_DISP2HOT); 2095 dasm_put(Dst, 13358, HOTCOUNT_PCMASK, GG_DISP2HOT);
2092#endif 2096#endif
2093 break; 2097 break;
2094 2098
@@ -2097,33 +2101,33 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2097 break; 2101 break;
2098#endif 2102#endif
2099 case BC_IITERL: 2103 case BC_IITERL:
2100 dasm_put(Dst, 13533, LJ_TNIL); 2104 dasm_put(Dst, 13550, LJ_TNIL);
2101 if (op == BC_JITERL) { 2105 if (op == BC_JITERL) {
2102 dasm_put(Dst, 13548, BC_JLOOP); 2106 dasm_put(Dst, 13565, BC_JLOOP);
2103 } else { 2107 } else {
2104 dasm_put(Dst, 13562, -BCBIAS_J*4); 2108 dasm_put(Dst, 13579, -BCBIAS_J*4);
2105 } 2109 }
2106 dasm_put(Dst, 9811); 2110 dasm_put(Dst, 9828);
2107 break; 2111 break;
2108 2112
2109 case BC_LOOP: 2113 case BC_LOOP:
2110#if LJ_HASJIT 2114#if LJ_HASJIT
2111 dasm_put(Dst, 13341, HOTCOUNT_PCMASK, GG_DISP2HOT); 2115 dasm_put(Dst, 13358, HOTCOUNT_PCMASK, GG_DISP2HOT);
2112#endif 2116#endif
2113 break; 2117 break;
2114 2118
2115 case BC_ILOOP: 2119 case BC_ILOOP:
2116 dasm_put(Dst, 7597); 2120 dasm_put(Dst, 7616);
2117 break; 2121 break;
2118 2122
2119 case BC_JLOOP: 2123 case BC_JLOOP:
2120#if LJ_HASJIT 2124#if LJ_HASJIT
2121 dasm_put(Dst, 13578, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); 2125 dasm_put(Dst, 13595, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L));
2122#endif 2126#endif
2123 break; 2127 break;
2124 2128
2125 case BC_JMP: 2129 case BC_JMP:
2126 dasm_put(Dst, 13605, -BCBIAS_J*4); 2130 dasm_put(Dst, 13622, -BCBIAS_J*4);
2127 break; 2131 break;
2128 2132
2129 /* ---------------------------------------------------------------------- */ 2133 /* ---------------------------------------------------------------------- */
@@ -2151,7 +2155,7 @@ static int build_backend(BuildCtx *ctx)
2151 2155
2152 build_subroutines(ctx, cmov, sse); 2156 build_subroutines(ctx, cmov, sse);
2153 2157
2154 dasm_put(Dst, 13631); 2158 dasm_put(Dst, 13648);
2155 for (op = 0; op < BC__MAX; op++) 2159 for (op = 0; op < BC__MAX; op++)
2156 build_ins(ctx, (BCOp)op, op, cmov, sse); 2160 build_ins(ctx, (BCOp)op, op, cmov, sse);
2157 2161