diff options
Diffstat (limited to 'src/buildvm_x64.h')
-rw-r--r-- | src/buildvm_x64.h | 1460 |
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 |
15 | static const unsigned char build_actionlist[13633] = { | 15 | static 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 | ||
676 | enum { | 676 | enum { |
@@ -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. */ |
1032 | static void build_subroutines(BuildCtx *ctx, int cmov, int sse) | 1033 | static 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. */ |
1414 | static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) | 1418 | static 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 | ||