summaryrefslogtreecommitdiff
path: root/src/buildvm_x64.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildvm_x64.h')
-rw-r--r--src/buildvm_x64.h938
1 files changed, 469 insertions, 469 deletions
diff --git a/src/buildvm_x64.h b/src/buildvm_x64.h
index 24505e99..b71d9b53 100644
--- a/src/buildvm_x64.h
+++ b/src/buildvm_x64.h
@@ -12,7 +12,7 @@
12#define DASM_SECTION_CODE_OP 0 12#define DASM_SECTION_CODE_OP 0
13#define DASM_SECTION_CODE_SUB 1 13#define DASM_SECTION_CODE_SUB 1
14#define DASM_MAXSECTION 2 14#define DASM_MAXSECTION 2
15static const unsigned char build_actionlist[14075] = { 15static const unsigned char build_actionlist[14077] = {
16 254,1,248,10,252,247,195,237,15,132,244,11,131,227,252,248,41,218,72,141, 16 254,1,248,10,252,247,195,237,15,132,244,11,131,227,252,248,41,218,72,141,
17 76,25,252,248,139,90,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,4, 17 76,25,252,248,139,90,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,4,
18 252,247,195,237,15,132,244,13,248,14,252,247,195,237,15,132,244,10,65,199, 18 252,247,195,237,15,132,244,13,248,14,252,247,195,237,15,132,244,10,65,199,
@@ -265,131 +265,131 @@ static const unsigned char build_actionlist[14075] = {
265 15,182,173,233,255,252,242,15,42,197,252,233,244,63,255,137,44,36,219,4,36, 265 15,182,173,233,255,252,242,15,42,197,252,233,244,63,255,137,44,36,219,4,36,
266 252,233,244,64,255,248,112,65,139,174,233,65,59,174,233,15,130,244,247,232, 266 252,233,244,64,255,248,112,65,139,174,233,65,59,174,233,15,130,244,247,232,
267 244,66,248,1,129,252,248,239,15,133,244,55,129,122,253,4,239,15,135,244,55, 267 244,66,248,1,129,252,248,239,15,133,244,55,129,122,253,4,239,15,135,244,55,
268 255,252,242,15,45,2,61,252,255,0,0,0,15,135,244,55,137,68,36,4,255,221,2, 268 255,252,242,15,45,42,129,252,253,252,255,0,0,0,15,135,244,55,137,108,36,4,
269 219,92,36,4,129,124,36,4,252,255,0,0,0,15,135,244,55,255,199,68,36,8,1,0, 269 255,221,2,219,92,36,4,129,124,36,4,252,255,0,0,0,15,135,244,55,255,199,68,
270 0,0,72,141,68,36,4,248,113,139,108,36,24,137,149,233,139,84,36,8,72,137,198, 270 36,8,1,0,0,0,72,141,68,36,4,248,113,139,108,36,24,137,149,233,139,84,36,8,
271 137,252,239,137,92,36,28,232,251,1,17,139,149,233,139,90,252,252,199,66,252, 271 72,137,198,137,252,239,137,92,36,28,232,251,1,17,139,149,233,139,90,252,252,
272 252,237,137,66,252,248,252,233,244,58,248,114,65,139,174,233,65,59,174,233, 272 199,66,252,252,237,137,66,252,248,252,233,244,58,248,114,65,139,174,233,65,
273 15,130,244,247,232,244,66,248,1,199,68,36,4,252,255,252,255,252,255,252,255, 273 59,174,233,15,130,244,247,232,244,66,248,1,199,68,36,4,252,255,252,255,252,
274 129,252,248,239,15,130,244,55,15,134,244,247,129,122,253,20,239,255,252,242, 274 255,252,255,129,252,248,239,15,130,244,55,15,134,244,247,129,122,253,20,239,
275 15,45,106,16,137,108,36,4,255,221,66,16,219,92,36,4,255,248,1,129,122,253, 275 255,252,242,15,45,106,16,137,108,36,4,255,221,66,16,219,92,36,4,255,248,1,
276 4,239,15,133,244,55,129,122,253,12,239,15,135,244,55,139,42,137,108,36,8, 276 129,122,253,4,239,15,133,244,55,129,122,253,12,239,15,135,244,55,139,42,137,
277 139,173,233,255,252,242,15,45,74,8,255,139,68,36,4,57,197,15,130,244,251, 277 108,36,8,139,173,233,255,252,242,15,45,74,8,255,139,68,36,4,57,197,15,130,
278 248,2,133,201,15,142,244,253,248,3,139,108,36,8,41,200,15,140,244,115,141, 278 244,251,248,2,133,201,15,142,244,253,248,3,139,108,36,8,41,200,15,140,244,
279 172,253,13,233,131,192,1,248,4,137,68,36,8,137,232,252,233,244,113,248,5, 279 115,141,172,253,13,233,131,192,1,248,4,137,68,36,8,137,232,252,233,244,113,
280 15,140,244,252,141,68,40,1,252,233,244,2,248,6,137,232,252,233,244,2,248, 280 248,5,15,140,244,252,141,68,40,1,252,233,244,2,248,6,137,232,252,233,244,
281 7,255,15,132,244,254,1,252,233,131,193,1,15,143,244,3,248,8,185,1,0,0,0,252, 281 2,248,7,255,15,132,244,254,1,252,233,131,193,1,15,143,244,3,248,8,185,1,0,
282 233,244,3,248,115,49,192,252,233,244,4,248,116,129,252,248,239,15,130,244, 282 0,0,252,233,244,3,248,115,49,192,252,233,244,4,248,116,129,252,248,239,15,
283 55,65,139,174,233,65,59,174,233,15,130,244,247,232,244,66,248,1,255,129,122, 283 130,244,55,65,139,174,233,65,59,174,233,15,130,244,247,232,244,66,248,1,255,
284 253,4,239,15,133,244,55,129,122,253,12,239,15,135,244,55,139,42,255,252,242, 284 129,122,253,4,239,15,133,244,55,129,122,253,12,239,15,135,244,55,139,42,255,
285 15,45,66,8,255,221,66,8,219,92,36,4,139,68,36,4,255,133,192,15,142,244,115, 285 252,242,15,45,66,8,255,221,66,8,219,92,36,4,139,68,36,4,255,133,192,15,142,
286 131,189,233,1,15,130,244,115,15,133,244,117,65,57,134,233,15,130,244,117, 286 244,115,131,189,233,1,15,130,244,115,15,133,244,117,65,57,134,233,15,130,
287 15,182,141,233,65,139,174,233,137,68,36,8,248,1,136,77,0,131,197,1,131,232, 287 244,117,15,182,141,233,65,139,174,233,137,68,36,8,248,1,136,77,0,131,197,
288 1,15,133,244,1,65,139,134,233,252,233,244,113,248,118,129,252,248,239,255, 288 1,131,232,1,15,133,244,1,65,139,134,233,252,233,244,113,248,118,129,252,248,
289 15,130,244,55,65,139,174,233,65,59,174,233,15,130,244,247,232,244,66,248, 289 239,255,15,130,244,55,65,139,174,233,65,59,174,233,15,130,244,247,232,244,
290 1,129,122,253,4,239,15,133,244,55,139,42,139,133,233,133,192,15,132,244,115, 290 66,248,1,129,122,253,4,239,15,133,244,55,139,42,139,133,233,133,192,15,132,
291 65,57,134,233,15,130,244,119,129,197,239,137,92,36,4,137,68,36,8,65,139,158, 291 244,115,65,57,134,233,15,130,244,119,129,197,239,137,92,36,4,137,68,36,8,
292 233,248,1,255,15,182,77,0,131,197,1,131,232,1,136,12,3,15,133,244,1,137,216, 292 65,139,158,233,248,1,255,15,182,77,0,131,197,1,131,232,1,136,12,3,15,133,
293 139,92,36,4,252,233,244,113,248,120,129,252,248,239,15,130,244,55,65,139, 293 244,1,137,216,139,92,36,4,252,233,244,113,248,120,129,252,248,239,15,130,
294 174,233,65,59,174,233,15,130,244,247,232,244,66,248,1,129,122,253,4,239,15, 294 244,55,65,139,174,233,65,59,174,233,15,130,244,247,232,244,66,248,1,129,122,
295 133,244,55,139,42,139,133,233,65,57,134,233,255,15,130,244,119,129,197,239, 295 253,4,239,15,133,244,55,139,42,139,133,233,65,57,134,233,255,15,130,244,119,
296 137,92,36,4,137,68,36,8,65,139,158,233,252,233,244,249,248,1,15,182,76,5, 296 129,197,239,137,92,36,4,137,68,36,8,65,139,158,233,252,233,244,249,248,1,
297 0,131,252,249,65,15,130,244,248,131,252,249,90,15,135,244,248,131,252,241, 297 15,182,76,5,0,131,252,249,65,15,130,244,248,131,252,249,90,15,135,244,248,
298 32,248,2,136,12,3,248,3,131,232,1,15,137,244,1,137,216,139,92,36,4,252,233, 298 131,252,241,32,248,2,136,12,3,248,3,131,232,1,15,137,244,1,137,216,139,92,
299 244,113,248,121,129,252,248,239,15,130,244,55,255,65,139,174,233,65,59,174, 299 36,4,252,233,244,113,248,121,129,252,248,239,15,130,244,55,255,65,139,174,
300 233,15,130,244,247,232,244,66,248,1,129,122,253,4,239,15,133,244,55,139,42, 300 233,65,59,174,233,15,130,244,247,232,244,66,248,1,129,122,253,4,239,15,133,
301 139,133,233,65,57,134,233,15,130,244,119,129,197,239,137,92,36,4,137,68,36, 301 244,55,139,42,139,133,233,65,57,134,233,15,130,244,119,129,197,239,137,92,
302 8,65,139,158,233,252,233,244,249,248,1,15,182,76,5,0,131,252,249,97,15,130, 302 36,4,137,68,36,8,65,139,158,233,252,233,244,249,248,1,15,182,76,5,0,131,252,
303 244,248,255,131,252,249,122,15,135,244,248,131,252,241,32,248,2,136,12,3, 303 249,97,15,130,244,248,255,131,252,249,122,15,135,244,248,131,252,241,32,248,
304 248,3,131,232,1,15,137,244,1,137,216,139,92,36,4,252,233,244,113,248,122, 304 2,136,12,3,248,3,131,232,1,15,137,244,1,137,216,139,92,36,4,252,233,244,113,
305 129,252,248,239,15,130,244,55,129,122,253,4,239,15,133,244,55,137,213,139, 305 248,122,129,252,248,239,15,130,244,55,129,122,253,4,239,15,133,244,55,137,
306 58,232,251,1,18,137,252,234,255,252,242,15,42,192,252,233,244,63,255,248, 306 213,139,58,232,251,1,18,137,252,234,255,252,242,15,42,192,252,233,244,63,
307 123,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,252,242, 307 255,248,123,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,
308 15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,126,197, 308 252,242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,
309 252,242,15,42,197,252,233,244,63,255,248,124,129,252,248,239,15,130,244,55, 309 126,197,252,242,15,42,197,252,233,244,63,255,248,124,129,252,248,239,15,130,
310 129,122,253,4,239,15,135,244,55,252,242,15,16,2,72,189,237,237,102,72,15, 310 244,55,129,122,253,4,239,15,135,244,55,252,242,15,16,2,72,189,237,237,102,
311 110,205,252,242,15,88,193,102,15,126,197,255,137,68,36,4,141,68,194,252,240, 311 72,15,110,205,252,242,15,88,193,102,15,126,197,255,137,68,36,4,141,68,194,
312 248,1,57,208,15,134,244,125,129,120,253,4,239,15,135,244,126,255,252,242, 312 252,240,248,1,57,208,15,134,244,125,129,120,253,4,239,15,135,244,126,255,
313 15,16,0,252,242,15,88,193,102,15,126,193,33,205,255,131,232,8,252,233,244, 313 252,242,15,16,0,252,242,15,88,193,102,15,126,193,33,205,255,131,232,8,252,
314 1,255,248,127,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244, 314 233,244,1,255,248,127,129,252,248,239,15,130,244,55,129,122,253,4,239,15,
315 135,244,55,252,242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,
316 193,102,15,126,197,255,252,242,15,16,0,252,242,15,88,193,102,15,126,193,9,
317 205,255,248,128,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,
315 55,252,242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102, 318 55,252,242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,
316 15,126,197,255,252,242,15,16,0,252,242,15,88,193,102,15,126,193,9,205,255, 319 15,126,197,255,252,242,15,16,0,252,242,15,88,193,102,15,126,193,49,205,255,
317 248,128,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,252, 320 248,129,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,252,
318 242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,126, 321 242,15,16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,126,
319 197,255,252,242,15,16,0,252,242,15,88,193,102,15,126,193,49,205,255,248,129, 322 197,255,15,205,252,233,244,125,255,248,130,129,252,248,239,15,130,244,55,
320 129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,252,242,15, 323 129,122,253,4,239,15,135,244,55,252,242,15,16,2,72,189,237,237,102,72,15,
321 16,2,72,189,237,237,102,72,15,110,205,252,242,15,88,193,102,15,126,197,255, 324 110,205,252,242,15,88,193,102,15,126,197,255,252,247,213,255,248,125,252,
322 15,205,252,233,244,125,255,248,130,129,252,248,239,15,130,244,55,129,122, 325 242,15,42,197,252,233,244,63,255,248,126,139,68,36,4,252,233,244,55,255,248,
323 253,4,239,15,135,244,55,252,242,15,16,2,72,189,237,237,102,72,15,110,205, 326 131,129,252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,129,122,
324 252,242,15,88,193,102,15,126,197,255,252,247,213,255,248,125,252,242,15,42, 327 253,12,239,15,135,244,55,252,242,15,16,2,252,242,15,16,74,8,72,189,237,237,
325 197,252,233,244,63,255,248,126,139,68,36,4,252,233,244,55,255,248,131,129, 328 102,72,15,110,213,252,242,15,88,194,252,242,15,88,202,137,200,102,15,126,
326 252,248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,129,122,253,12, 329 197,102,15,126,201,255,211,229,137,193,252,233,244,125,255,248,132,129,252,
327 239,15,135,244,55,252,242,15,16,2,252,242,15,16,74,8,72,189,237,237,102,72, 330 248,239,15,130,244,55,129,122,253,4,239,15,135,244,55,129,122,253,12,239,
328 15,110,213,252,242,15,88,194,252,242,15,88,202,137,200,102,15,126,197,102, 331 15,135,244,55,252,242,15,16,2,252,242,15,16,74,8,72,189,237,237,102,72,15,
329 15,126,201,255,211,229,137,193,252,233,244,125,255,248,132,129,252,248,239, 332 110,213,252,242,15,88,194,252,242,15,88,202,137,200,102,15,126,197,102,15,
333 126,201,255,211,252,237,137,193,252,233,244,125,255,248,133,129,252,248,239,
330 15,130,244,55,129,122,253,4,239,15,135,244,55,129,122,253,12,239,15,135,244, 334 15,130,244,55,129,122,253,4,239,15,135,244,55,129,122,253,12,239,15,135,244,
331 55,252,242,15,16,2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252, 335 55,252,242,15,16,2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,
332 242,15,88,194,252,242,15,88,202,137,200,102,15,126,197,102,15,126,201,255, 336 242,15,88,194,252,242,15,88,202,137,200,102,15,126,197,102,15,126,201,255,
333 211,252,237,137,193,252,233,244,125,255,248,133,129,252,248,239,15,130,244, 337 211,252,253,137,193,252,233,244,125,255,248,134,129,252,248,239,15,130,244,
334 55,129,122,253,4,239,15,135,244,55,129,122,253,12,239,15,135,244,55,252,242, 338 55,129,122,253,4,239,15,135,244,55,129,122,253,12,239,15,135,244,55,252,242,
335 15,16,2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88, 339 15,16,2,252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,
336 194,252,242,15,88,202,137,200,102,15,126,197,102,15,126,201,255,211,252,253, 340 194,252,242,15,88,202,137,200,102,15,126,197,102,15,126,201,255,211,197,137,
337 137,193,252,233,244,125,255,248,134,129,252,248,239,15,130,244,55,129,122, 341 193,252,233,244,125,255,248,135,129,252,248,239,15,130,244,55,129,122,253,
338 253,4,239,15,135,244,55,129,122,253,12,239,15,135,244,55,252,242,15,16,2, 342 4,239,15,135,244,55,129,122,253,12,239,15,135,244,55,252,242,15,16,2,252,
339 252,242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252, 343 242,15,16,74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,242,
340 242,15,88,202,137,200,102,15,126,197,102,15,126,201,255,211,197,137,193,252, 344 15,88,202,137,200,102,15,126,197,102,15,126,201,255,211,205,137,193,252,233,
341 233,244,125,255,248,135,129,252,248,239,15,130,244,55,129,122,253,4,239,15, 345 244,125,248,117,184,237,252,233,244,55,248,119,184,237,248,55,139,108,36,
342 135,244,55,129,122,253,12,239,15,135,244,55,252,242,15,16,2,252,242,15,16, 346 24,139,90,252,252,137,92,36,28,137,149,233,141,68,194,252,248,141,136,233,
343 74,8,72,189,237,237,102,72,15,110,213,252,242,15,88,194,252,242,15,88,202, 347 137,133,233,139,66,252,248,59,141,233,15,135,244,251,137,252,239,252,255,
344 137,200,102,15,126,197,102,15,126,201,255,211,205,137,193,252,233,244,125, 348 144,233,139,149,233,133,192,15,133,244,69,248,1,255,139,133,233,41,208,193,
345 248,117,184,237,252,233,244,55,248,119,184,237,248,55,139,108,36,24,139,90, 349 232,3,131,192,1,139,106,252,248,57,90,252,252,15,133,244,248,139,157,233,
346 252,252,137,92,36,28,137,149,233,141,68,194,252,248,141,136,233,137,133,233, 350 139,11,15,182,252,233,15,182,205,131,195,4,65,252,255,36,252,238,248,2,137,
347 139,66,252,248,59,141,233,15,135,244,251,137,252,239,252,255,144,233,139, 351 209,252,247,195,237,15,133,244,249,15,182,107,252,253,72,252,247,213,141,
348 149,233,133,192,15,133,244,69,248,1,255,139,133,233,41,208,193,232,3,131, 352 20,252,234,252,233,244,27,248,3,137,221,131,229,252,248,41,252,234,252,233,
349 192,1,139,106,252,248,57,90,252,252,15,133,244,248,139,157,233,139,11,15, 353 244,27,248,5,190,237,137,252,239,232,251,1,0,139,149,233,252,233,244,1,248,
350 182,252,233,15,182,205,131,195,4,65,252,255,36,252,238,248,2,137,209,252, 354 66,93,72,137,108,36,8,139,108,36,24,137,92,36,28,137,149,233,255,141,68,194,
351 247,195,237,15,133,244,249,15,182,107,252,253,72,252,247,213,141,20,252,234, 355 252,248,137,252,239,137,133,233,232,251,1,19,139,149,233,139,133,233,41,208,
352 252,233,244,27,248,3,137,221,131,229,252,248,41,252,234,252,233,244,27,248, 356 193,232,3,131,192,1,72,139,108,36,8,85,195,248,136,255,65,15,182,134,233,
353 5,190,237,137,252,239,232,251,1,0,139,149,233,252,233,244,1,248,66,93,72, 357 168,235,15,133,244,251,168,235,15,133,244,247,168,235,15,132,244,247,65,252,
354 137,108,36,8,139,108,36,24,137,92,36,28,137,149,233,255,141,68,194,252,248, 358 255,142,233,252,233,244,247,255,248,137,65,15,182,134,233,168,235,15,133,
355 137,252,239,137,133,233,232,251,1,19,139,149,233,139,133,233,41,208,193,232, 359 244,251,252,233,244,247,248,138,65,15,182,134,233,168,235,15,133,244,251,
356 3,131,192,1,72,139,108,36,8,85,195,248,136,255,65,15,182,134,233,168,235, 360 168,235,15,132,244,251,65,252,255,142,233,15,132,244,247,168,235,15,132,244,
357 15,133,244,251,168,235,15,133,244,247,168,235,15,132,244,247,65,252,255,142, 361 251,248,1,255,139,108,36,24,137,149,233,137,222,137,252,239,232,251,1,20,
358 233,252,233,244,247,255,248,137,65,15,182,134,233,168,235,15,133,244,251, 362 248,3,139,149,233,248,4,15,182,75,252,253,248,5,15,182,107,252,252,15,183,
359 252,233,244,247,248,138,65,15,182,134,233,168,235,15,133,244,251,168,235, 363 67,252,254,65,252,255,164,253,252,238,233,248,139,131,195,4,139,77,232,137,
360 15,132,244,251,65,252,255,142,233,15,132,244,247,168,235,15,132,244,251,248, 364 76,36,4,252,233,244,4,248,140,255,139,106,252,248,139,173,233,15,182,133,
361 1,255,139,108,36,24,137,149,233,137,222,137,252,239,232,251,1,20,248,3,139, 365 233,141,4,194,139,108,36,24,137,149,233,137,133,233,137,222,65,141,190,233,
362 149,233,248,4,15,182,75,252,253,248,5,15,182,107,252,252,15,183,67,252,254, 366 73,137,174,233,137,92,36,28,232,251,1,21,252,233,244,3,255,248,141,137,92,
363 65,252,255,164,253,252,238,233,248,139,131,195,4,139,77,232,137,76,36,4,252, 367 36,28,255,248,142,255,137,92,36,28,131,203,1,248,1,255,141,68,194,252,248,
364 233,244,4,248,140,255,139,106,252,248,139,173,233,15,182,133,233,141,4,194, 368 139,108,36,24,137,149,233,137,133,233,137,222,137,252,239,232,251,1,22,199,
365 139,108,36,24,137,149,233,137,133,233,137,222,65,141,190,233,73,137,174,233, 369 68,36,28,0,0,0,0,255,131,227,252,254,255,139,149,233,72,137,193,139,133,233,
366 137,92,36,28,232,251,1,21,252,233,244,3,255,248,141,137,92,36,28,255,248, 370 41,208,72,137,205,15,182,75,252,253,193,232,3,131,192,1,252,255,229,248,143,
367 142,255,137,92,36,28,131,203,1,248,1,255,141,68,194,252,248,139,108,36,24, 371 255,65,85,65,84,65,83,65,82,65,81,65,80,87,86,85,72,141,108,36,88,85,83,82,
368 137,149,233,137,133,233,137,222,137,252,239,232,251,1,22,199,68,36,28,0,0, 372 81,80,15,182,69,252,248,138,101,252,240,76,137,125,252,248,76,137,117,252,
369 0,0,255,131,227,252,254,255,139,149,233,72,137,193,139,133,233,41,208,72, 373 240,68,139,117,0,65,139,142,233,65,199,134,233,237,65,137,134,233,65,137,
370 137,205,15,182,75,252,253,193,232,3,131,192,1,252,255,229,248,143,255,65, 374 142,233,72,129,252,236,239,72,131,197,128,252,242,68,15,17,125,252,248,252,
371 85,65,84,65,83,65,82,65,81,65,80,87,86,85,72,141,108,36,88,85,83,82,81,80, 375 242,68,15,17,117,252,240,252,242,68,15,17,109,232,252,242,68,15,17,101,224,
372 15,182,69,252,248,138,101,252,240,76,137,125,252,248,76,137,117,252,240,68, 376 252,242,68,15,17,93,216,252,242,68,15,17,85,208,252,242,68,15,17,77,200,252,
373 139,117,0,65,139,142,233,65,199,134,233,237,65,137,134,233,65,137,142,233, 377 242,68,15,17,69,192,252,242,15,17,125,184,252,242,15,17,117,176,252,242,15,
374 72,129,252,236,239,72,131,197,128,252,242,68,15,17,125,252,248,252,242,68, 378 17,109,168,252,242,15,17,101,160,252,242,15,17,93,152,252,242,15,17,85,144,
375 15,17,117,252,240,252,242,68,15,17,109,232,252,242,68,15,17,101,224,252,242, 379 252,242,15,17,77,136,252,242,15,17,69,128,65,139,174,233,65,139,150,233,73,
376 68,15,17,93,216,252,242,68,15,17,85,208,252,242,68,15,17,77,200,252,242,68, 380 137,174,233,65,199,134,233,0,0,0,0,137,149,233,72,137,230,65,141,190,233,
377 15,17,69,192,252,242,15,17,125,184,252,242,15,17,117,176,252,242,15,17,109, 381 232,251,1,23,72,139,141,233,72,129,225,239,72,137,204,137,169,233,139,149,
378 168,252,242,15,17,101,160,252,242,15,17,93,152,252,242,15,17,85,144,252,242, 382 233,139,153,233,252,233,244,247,255,248,144,255,72,131,196,16,248,1,76,139,
379 15,17,77,136,252,242,15,17,69,128,65,139,174,233,65,139,150,233,73,137,174, 383 108,36,8,76,139,36,36,133,192,15,136,244,249,137,68,36,4,68,139,122,252,248,
380 233,65,199,134,233,0,0,0,0,137,149,233,72,137,230,65,141,190,233,232,251, 384 69,139,191,233,69,139,191,233,65,199,134,233,0,0,0,0,65,199,134,233,237,139,
381 1,23,72,139,141,233,72,129,225,239,72,137,204,137,169,233,139,149,233,139, 385 3,15,182,204,15,182,232,131,195,4,193,232,16,129,252,253,239,15,130,244,248,
382 153,233,252,233,244,247,255,248,144,255,72,131,196,16,248,1,76,139,108,36, 386 139,68,36,4,248,2,65,252,255,36,252,238,248,3,252,247,216,137,252,239,137,
383 8,76,139,36,36,133,192,15,136,244,249,137,68,36,4,68,139,122,252,248,69,139, 387 198,232,251,1,24,255,248,82,255,217,124,36,4,137,68,36,8,102,184,0,4,102,
384 191,233,69,139,191,233,65,199,134,233,0,0,0,0,65,199,134,233,237,139,3,15, 388 11,68,36,4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,252,252,
385 182,204,15,182,232,131,195,4,193,232,16,129,252,253,239,15,130,244,248,139, 389 217,108,36,4,139,68,36,8,195,255,248,145,72,184,237,237,102,72,15,110,208,
386 68,36,4,248,2,65,252,255,36,252,238,248,3,252,247,216,137,252,239,137,198, 390 72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,217,15,
387 232,251,1,24,255,248,82,255,217,124,36,4,137,68,36,8,102,184,0,4,102,11,68, 391 134,244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,
388 36,4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,252,252,217, 392 72,184,237,237,102,72,15,110,208,252,242,15,194,193,1,102,15,84,194,252,242,
389 108,36,4,139,68,36,8,195,255,248,145,72,184,237,237,102,72,15,110,208,72,
390 184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,15,46,217,15,134,
391 244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,102,15,86,202,72,
392 184,237,237,102,72,15,110,208,252,242,15,194,193,1,102,15,84,194,252,242,
393 15,92,200,15,40,193,248,1,195,248,84,255,217,124,36,4,137,68,36,8,102,184, 393 15,92,200,15,40,193,248,1,195,248,84,255,217,124,36,4,137,68,36,8,102,184,
394 0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68,36,6,217,108,36,6,217, 394 0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68,36,6,217,108,36,6,217,
395 252,252,217,108,36,4,139,68,36,8,195,255,248,146,72,184,237,237,102,72,15, 395 252,252,217,108,36,4,139,68,36,8,195,255,248,146,72,184,237,237,102,72,15,
@@ -1237,192 +1237,192 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1237 if (sse) { 1237 if (sse) {
1238 dasm_put(Dst, 5199); 1238 dasm_put(Dst, 5199);
1239 } else { 1239 } else {
1240 dasm_put(Dst, 5219); 1240 dasm_put(Dst, 5221);
1241 } 1241 }
1242 dasm_put(Dst, 5239, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+2, LJ_TISNUM); 1242 dasm_put(Dst, 5241, Dt1(->base), Dt1(->base), LJ_TSTR, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), 1+2, LJ_TISNUM);
1243 dasm_put(Dst, 2189); 1243 dasm_put(Dst, 2189);
1244 if (sse) { 1244 if (sse) {
1245 dasm_put(Dst, 5348); 1245 dasm_put(Dst, 5350);
1246 } else { 1246 } else {
1247 dasm_put(Dst, 5359); 1247 dasm_put(Dst, 5361);
1248 } 1248 }
1249 dasm_put(Dst, 5367, LJ_TSTR, LJ_TISNUM, Dt5(->len)); 1249 dasm_put(Dst, 5369, LJ_TSTR, LJ_TISNUM, Dt5(->len));
1250 if (sse) { 1250 if (sse) {
1251 dasm_put(Dst, 5397); 1251 dasm_put(Dst, 5399);
1252 } else { 1252 } else {
1253 } 1253 }
1254 dasm_put(Dst, 5404, sizeof(GCstr)-1); 1254 dasm_put(Dst, 5406, sizeof(GCstr)-1);
1255 dasm_put(Dst, 5479, 2+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold)); 1255 dasm_put(Dst, 5481, 2+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold));
1256 dasm_put(Dst, 5540, LJ_TSTR, LJ_TISNUM); 1256 dasm_put(Dst, 5542, LJ_TSTR, LJ_TISNUM);
1257 if (sse) { 1257 if (sse) {
1258 dasm_put(Dst, 5561); 1258 dasm_put(Dst, 5563);
1259 } else { 1259 } else {
1260 dasm_put(Dst, 5568); 1260 dasm_put(Dst, 5570);
1261 } 1261 }
1262 dasm_put(Dst, 5580, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(tmpbuf.buf), 1+1); 1262 dasm_put(Dst, 5582, Dt5(->len), DISPATCH_GL(tmpbuf.sz), Dt5([1]), DISPATCH_GL(tmpbuf.buf), DISPATCH_GL(tmpbuf.buf), 1+1);
1263 dasm_put(Dst, 5648, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 1263 dasm_put(Dst, 5650, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
1264 dasm_put(Dst, 5715, 1+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz)); 1264 dasm_put(Dst, 5717, 1+1, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz));
1265 dasm_put(Dst, 5788, sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), 1+1); 1265 dasm_put(Dst, 5790, sizeof(GCstr), DISPATCH_GL(tmpbuf.buf), 1+1);
1266 dasm_put(Dst, 5873, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf)); 1266 dasm_put(Dst, 5875, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), LJ_TSTR, Dt5(->len), DISPATCH_GL(tmpbuf.sz), sizeof(GCstr), DISPATCH_GL(tmpbuf.buf));
1267 dasm_put(Dst, 5947, 1+1, LJ_TTAB); 1267 dasm_put(Dst, 5949, 1+1, LJ_TTAB);
1268 if (sse) { 1268 if (sse) {
1269 dasm_put(Dst, 6014); 1269 dasm_put(Dst, 6016);
1270 } else { 1270 } else {
1271 } 1271 }
1272 if (sse) { 1272 if (sse) {
1273 dasm_put(Dst, 6024, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1273 dasm_put(Dst, 6026, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1274 } else { 1274 } else {
1275 } 1275 }
1276 if (sse) { 1276 if (sse) {
1277 dasm_put(Dst, 6076, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1277 dasm_put(Dst, 6078, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1278 } else { 1278 } else {
1279 } 1279 }
1280 dasm_put(Dst, 6119, LJ_TISNUM); 1280 dasm_put(Dst, 6121, LJ_TISNUM);
1281 if (sse) { 1281 if (sse) {
1282 dasm_put(Dst, 6146); 1282 dasm_put(Dst, 6148);
1283 } else { 1283 } else {
1284 } 1284 }
1285 dasm_put(Dst, 6163); 1285 dasm_put(Dst, 6165);
1286 if (sse) { 1286 if (sse) {
1287 dasm_put(Dst, 6171, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1287 dasm_put(Dst, 6173, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1288 } else { 1288 } else {
1289 } 1289 }
1290 dasm_put(Dst, 6119, LJ_TISNUM); 1290 dasm_put(Dst, 6121, LJ_TISNUM);
1291 if (sse) { 1291 if (sse) {
1292 dasm_put(Dst, 6214); 1292 dasm_put(Dst, 6216);
1293 } else { 1293 } else {
1294 } 1294 }
1295 dasm_put(Dst, 6163); 1295 dasm_put(Dst, 6165);
1296 if (sse) { 1296 if (sse) {
1297 dasm_put(Dst, 6231, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1297 dasm_put(Dst, 6233, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1298 } else { 1298 } else {
1299 } 1299 }
1300 dasm_put(Dst, 6119, LJ_TISNUM); 1300 dasm_put(Dst, 6121, LJ_TISNUM);
1301 if (sse) { 1301 if (sse) {
1302 dasm_put(Dst, 6274); 1302 dasm_put(Dst, 6276);
1303 } else { 1303 } else {
1304 } 1304 }
1305 dasm_put(Dst, 6163); 1305 dasm_put(Dst, 6165);
1306 if (sse) { 1306 if (sse) {
1307 dasm_put(Dst, 6291, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1307 dasm_put(Dst, 6293, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1308 } else { 1308 } else {
1309 } 1309 }
1310 dasm_put(Dst, 6334); 1310 dasm_put(Dst, 6336);
1311 if (sse) { 1311 if (sse) {
1312 dasm_put(Dst, 6341, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1312 dasm_put(Dst, 6343, 1+1, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1313 } else { 1313 } else {
1314 } 1314 }
1315 dasm_put(Dst, 6384); 1315 dasm_put(Dst, 6386);
1316 if (sse) { 1316 if (sse) {
1317 dasm_put(Dst, 6388); 1317 dasm_put(Dst, 6390);
1318 } else { 1318 } else {
1319 } 1319 }
1320 dasm_put(Dst, 6400); 1320 dasm_put(Dst, 6402);
1321 if (sse) { 1321 if (sse) {
1322 dasm_put(Dst, 6411, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1322 dasm_put(Dst, 6413, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1323 } else { 1323 } else {
1324 } 1324 }
1325 dasm_put(Dst, 6480); 1325 dasm_put(Dst, 6482);
1326 if (sse) { 1326 if (sse) {
1327 dasm_put(Dst, 6489, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1327 dasm_put(Dst, 6491, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1328 } else { 1328 } else {
1329 } 1329 }
1330 dasm_put(Dst, 6558); 1330 dasm_put(Dst, 6560);
1331 if (sse) { 1331 if (sse) {
1332 dasm_put(Dst, 6568, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1332 dasm_put(Dst, 6570, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1333 } else { 1333 } else {
1334 } 1334 }
1335 dasm_put(Dst, 6637); 1335 dasm_put(Dst, 6639);
1336 if (sse) { 1336 if (sse) {
1337 dasm_put(Dst, 6647, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1337 dasm_put(Dst, 6649, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1338 } else { 1338 } else {
1339 } 1339 }
1340 dasm_put(Dst, 6716); 1340 dasm_put(Dst, 6718);
1341 if (sse) { 1341 if (sse) {
1342 dasm_put(Dst, 6725, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32)); 1342 dasm_put(Dst, 6727, 1+1, LJ_TISNUM, LJ_TISNUM, (unsigned int)(U64x(43380000,00000000)), (unsigned int)((U64x(43380000,00000000))>>32));
1343 } else { 1343 } else {
1344 } 1344 }
1345 dasm_put(Dst, 6794, 1+2, 1+1, Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), Dt8(->f), Dt1(->base)); 1345 dasm_put(Dst, 6796, 1+2, 1+1, Dt1(->base), 8*LUA_MINSTACK, Dt1(->top), Dt1(->maxstack), Dt8(->f), Dt1(->base));
1346 dasm_put(Dst, 6872, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base)); 1346 dasm_put(Dst, 6874, Dt1(->top), Dt7(->pc), FRAME_TYPE, LUA_MINSTACK, Dt1(->base), Dt1(->base));
1347 dasm_put(Dst, 6998, Dt1(->top), Dt1(->base), Dt1(->top)); 1347 dasm_put(Dst, 7000, Dt1(->top), Dt1(->base), Dt1(->top));
1348#if LJ_HASJIT 1348#if LJ_HASJIT
1349 dasm_put(Dst, 7037, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount)); 1349 dasm_put(Dst, 7039, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount));
1350#endif 1350#endif
1351 dasm_put(Dst, 7070, DISPATCH_GL(hookmask), HOOK_ACTIVE, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE); 1351 dasm_put(Dst, 7072, DISPATCH_GL(hookmask), HOOK_ACTIVE, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE);
1352 dasm_put(Dst, 7124, Dt1(->base), Dt1(->base), GG_DISP2STATIC); 1352 dasm_put(Dst, 7126, Dt1(->base), Dt1(->base), GG_DISP2STATIC);
1353#if LJ_HASJIT 1353#if LJ_HASJIT
1354 dasm_put(Dst, 7191, Dt7(->pc), PC2PROTO(framesize), Dt1(->base), Dt1(->top), GG_DISP2J, DISPATCH_J(L)); 1354 dasm_put(Dst, 7193, Dt7(->pc), PC2PROTO(framesize), Dt1(->base), Dt1(->top), GG_DISP2J, DISPATCH_J(L));
1355#endif 1355#endif
1356 dasm_put(Dst, 7238); 1356 dasm_put(Dst, 7240);
1357#if LJ_HASJIT 1357#if LJ_HASJIT
1358 dasm_put(Dst, 7065); 1358 dasm_put(Dst, 7067);
1359#endif 1359#endif
1360 dasm_put(Dst, 7245); 1360 dasm_put(Dst, 7247);
1361#if LJ_HASJIT 1361#if LJ_HASJIT
1362 dasm_put(Dst, 7248); 1362 dasm_put(Dst, 7250);
1363#endif 1363#endif
1364 dasm_put(Dst, 7258, Dt1(->base), Dt1(->top)); 1364 dasm_put(Dst, 7260, Dt1(->base), Dt1(->top));
1365#if LJ_HASJIT 1365#if LJ_HASJIT
1366 dasm_put(Dst, 7291); 1366 dasm_put(Dst, 7293);
1367#endif 1367#endif
1368 dasm_put(Dst, 7296, Dt1(->base), Dt1(->top)); 1368 dasm_put(Dst, 7298, Dt1(->base), Dt1(->top));
1369#if LJ_HASJIT 1369#if LJ_HASJIT
1370 dasm_put(Dst, 7327, DISPATCH_GL(vmstate), DISPATCH_GL(vmstate), ~LJ_VMST_EXIT, DISPATCH_J(exitno), DISPATCH_J(parent), 16*8, DISPATCH_GL(jit_L), DISPATCH_GL(jit_base), DISPATCH_J(L), DISPATCH_GL(jit_L), Dt1(->base), GG_DISP2J, Dt1(->cframe), CFRAME_RAWMASK, CFRAME_OFS_L, Dt1(->base), CFRAME_OFS_PC); 1370 dasm_put(Dst, 7329, DISPATCH_GL(vmstate), DISPATCH_GL(vmstate), ~LJ_VMST_EXIT, DISPATCH_J(exitno), DISPATCH_J(parent), 16*8, DISPATCH_GL(jit_L), DISPATCH_GL(jit_base), DISPATCH_J(L), DISPATCH_GL(jit_L), Dt1(->base), GG_DISP2J, Dt1(->cframe), CFRAME_RAWMASK, CFRAME_OFS_L, Dt1(->base), CFRAME_OFS_PC);
1371#endif 1371#endif
1372 dasm_put(Dst, 7566); 1372 dasm_put(Dst, 7568);
1373#if LJ_HASJIT 1373#if LJ_HASJIT
1374 dasm_put(Dst, 7569, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, BC_FUNCF); 1374 dasm_put(Dst, 7571, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, BC_FUNCF);
1375#endif 1375#endif
1376 dasm_put(Dst, 7669); 1376 dasm_put(Dst, 7671);
1377 if (!sse) { 1377 if (!sse) {
1378 dasm_put(Dst, 7672); 1378 dasm_put(Dst, 7674);
1379 } 1379 }
1380 dasm_put(Dst, 7717, (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)); 1380 dasm_put(Dst, 7719, (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));
1381 if (!sse) { 1381 if (!sse) {
1382 dasm_put(Dst, 7803); 1382 dasm_put(Dst, 7805);
1383 } 1383 }
1384 dasm_put(Dst, 7848, (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)); 1384 dasm_put(Dst, 7850, (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));
1385 if (!sse) { 1385 if (!sse) {
1386 dasm_put(Dst, 7934); 1386 dasm_put(Dst, 7936);
1387 } 1387 }
1388 dasm_put(Dst, 7973, (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)); 1388 dasm_put(Dst, 7975, (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));
1389 if (sse) { 1389 if (sse) {
1390 dasm_put(Dst, 8062, (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)); 1390 dasm_put(Dst, 8064, (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));
1391 } else { 1391 } else {
1392 dasm_put(Dst, 8176); 1392 dasm_put(Dst, 8178);
1393 } 1393 }
1394 dasm_put(Dst, 8223); 1394 dasm_put(Dst, 8225);
1395 if (!sse) { 1395 if (!sse) {
1396 } else { 1396 } else {
1397 dasm_put(Dst, 8300); 1397 dasm_put(Dst, 8302);
1398 } 1398 }
1399 dasm_put(Dst, 8303); 1399 dasm_put(Dst, 8305);
1400 dasm_put(Dst, 8388, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1400 dasm_put(Dst, 8390, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1401 dasm_put(Dst, 8489, (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)); 1401 dasm_put(Dst, 8491, (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));
1402 dasm_put(Dst, 8663); 1402 dasm_put(Dst, 8665);
1403 if (sse) { 1403 if (sse) {
1404 dasm_put(Dst, 8704); 1404 dasm_put(Dst, 8706);
1405 dasm_put(Dst, 8774); 1405 dasm_put(Dst, 8776);
1406 dasm_put(Dst, 8846); 1406 dasm_put(Dst, 8848);
1407 } else { 1407 } else {
1408 dasm_put(Dst, 8898); 1408 dasm_put(Dst, 8900);
1409 dasm_put(Dst, 8990); 1409 dasm_put(Dst, 8992);
1410 } 1410 }
1411 dasm_put(Dst, 9036); 1411 dasm_put(Dst, 9038);
1412 if (sse) { 1412 if (sse) {
1413 dasm_put(Dst, 9042, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1413 dasm_put(Dst, 9044, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1414 dasm_put(Dst, 9127, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32)); 1414 dasm_put(Dst, 9129, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32));
1415 } else { 1415 } else {
1416 dasm_put(Dst, 9255); 1416 dasm_put(Dst, 9257);
1417 dasm_put(Dst, 9338); 1417 dasm_put(Dst, 9340);
1418 if (cmov) { 1418 if (cmov) {
1419 dasm_put(Dst, 9393); 1419 dasm_put(Dst, 9395);
1420 } else { 1420 } else {
1421 dasm_put(Dst, 9412); 1421 dasm_put(Dst, 9414);
1422 } 1422 }
1423 dasm_put(Dst, 9251); 1423 dasm_put(Dst, 9253);
1424 } 1424 }
1425 dasm_put(Dst, 9453); 1425 dasm_put(Dst, 9455);
1426} 1426}
1427 1427
1428/* Generate the code for a single instruction. */ 1428/* Generate the code for a single instruction. */
@@ -1438,595 +1438,595 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1438 /* Remember: all ops branch for a true comparison, fall through otherwise. */ 1438 /* Remember: all ops branch for a true comparison, fall through otherwise. */
1439 1439
1440 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 1440 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
1441 dasm_put(Dst, 9475, LJ_TISNUM, LJ_TISNUM); 1441 dasm_put(Dst, 9477, LJ_TISNUM, LJ_TISNUM);
1442 if (sse) { 1442 if (sse) {
1443 dasm_put(Dst, 9496); 1443 dasm_put(Dst, 9498);
1444 } else { 1444 } else {
1445 dasm_put(Dst, 9511); 1445 dasm_put(Dst, 9513);
1446 if (cmov) { 1446 if (cmov) {
1447 dasm_put(Dst, 9521); 1447 dasm_put(Dst, 9523);
1448 } else { 1448 } else {
1449 dasm_put(Dst, 9527); 1449 dasm_put(Dst, 9529);
1450 } 1450 }
1451 } 1451 }
1452 switch (op) { 1452 switch (op) {
1453 case BC_ISLT: 1453 case BC_ISLT:
1454 dasm_put(Dst, 9534); 1454 dasm_put(Dst, 9536);
1455 break; 1455 break;
1456 case BC_ISGE: 1456 case BC_ISGE:
1457 dasm_put(Dst, 9333); 1457 dasm_put(Dst, 9335);
1458 break; 1458 break;
1459 case BC_ISLE: 1459 case BC_ISLE:
1460 dasm_put(Dst, 5942); 1460 dasm_put(Dst, 5944);
1461 break; 1461 break;
1462 case BC_ISGT: 1462 case BC_ISGT:
1463 dasm_put(Dst, 9539); 1463 dasm_put(Dst, 9541);
1464 break; 1464 break;
1465 default: break; /* Shut up GCC. */ 1465 default: break; /* Shut up GCC. */
1466 } 1466 }
1467 dasm_put(Dst, 9544, -BCBIAS_J*4); 1467 dasm_put(Dst, 9546, -BCBIAS_J*4);
1468 break; 1468 break;
1469 1469
1470 case BC_ISEQV: case BC_ISNEV: 1470 case BC_ISEQV: case BC_ISNEV:
1471 vk = op == BC_ISEQV; 1471 vk = op == BC_ISEQV;
1472 dasm_put(Dst, 9579, LJ_TISNUM, LJ_TISNUM); 1472 dasm_put(Dst, 9581, LJ_TISNUM, LJ_TISNUM);
1473 if (sse) { 1473 if (sse) {
1474 dasm_put(Dst, 9605); 1474 dasm_put(Dst, 9607);
1475 } else { 1475 } else {
1476 dasm_put(Dst, 9617); 1476 dasm_put(Dst, 9619);
1477 if (cmov) { 1477 if (cmov) {
1478 dasm_put(Dst, 9521); 1478 dasm_put(Dst, 9523);
1479 } else { 1479 } else {
1480 dasm_put(Dst, 9527); 1480 dasm_put(Dst, 9529);
1481 } 1481 }
1482 } 1482 }
1483 iseqne_fp: 1483 iseqne_fp:
1484 if (vk) { 1484 if (vk) {
1485 dasm_put(Dst, 9624); 1485 dasm_put(Dst, 9626);
1486 } else { 1486 } else {
1487 dasm_put(Dst, 9633); 1487 dasm_put(Dst, 9635);
1488 } 1488 }
1489 iseqne_end: 1489 iseqne_end:
1490 if (vk) { 1490 if (vk) {
1491 dasm_put(Dst, 9642, -BCBIAS_J*4); 1491 dasm_put(Dst, 9644, -BCBIAS_J*4);
1492 } else { 1492 } else {
1493 dasm_put(Dst, 9657, -BCBIAS_J*4); 1493 dasm_put(Dst, 9659, -BCBIAS_J*4);
1494 } 1494 }
1495 dasm_put(Dst, 9558); 1495 dasm_put(Dst, 9560);
1496 if (op == BC_ISEQV || op == BC_ISNEV) { 1496 if (op == BC_ISEQV || op == BC_ISNEV) {
1497 dasm_put(Dst, 9672, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq); 1497 dasm_put(Dst, 9674, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq);
1498 if (vk) { 1498 if (vk) {
1499 dasm_put(Dst, 9730); 1499 dasm_put(Dst, 9732);
1500 } else { 1500 } else {
1501 dasm_put(Dst, 9734); 1501 dasm_put(Dst, 9736);
1502 } 1502 }
1503 dasm_put(Dst, 9740); 1503 dasm_put(Dst, 9742);
1504 } 1504 }
1505 break; 1505 break;
1506 case BC_ISEQS: case BC_ISNES: 1506 case BC_ISEQS: case BC_ISNES:
1507 vk = op == BC_ISEQS; 1507 vk = op == BC_ISEQS;
1508 dasm_put(Dst, 9745, LJ_TSTR); 1508 dasm_put(Dst, 9747, LJ_TSTR);
1509 iseqne_test: 1509 iseqne_test:
1510 if (vk) { 1510 if (vk) {
1511 dasm_put(Dst, 9628); 1511 dasm_put(Dst, 9630);
1512 } else { 1512 } else {
1513 dasm_put(Dst, 2833); 1513 dasm_put(Dst, 2833);
1514 } 1514 }
1515 goto iseqne_end; 1515 goto iseqne_end;
1516 case BC_ISEQN: case BC_ISNEN: 1516 case BC_ISEQN: case BC_ISNEN:
1517 vk = op == BC_ISEQN; 1517 vk = op == BC_ISEQN;
1518 dasm_put(Dst, 9770, LJ_TISNUM); 1518 dasm_put(Dst, 9772, LJ_TISNUM);
1519 if (sse) { 1519 if (sse) {
1520 dasm_put(Dst, 9784); 1520 dasm_put(Dst, 9786);
1521 } else { 1521 } else {
1522 dasm_put(Dst, 9797); 1522 dasm_put(Dst, 9799);
1523 if (cmov) { 1523 if (cmov) {
1524 dasm_put(Dst, 9521); 1524 dasm_put(Dst, 9523);
1525 } else { 1525 } else {
1526 dasm_put(Dst, 9527); 1526 dasm_put(Dst, 9529);
1527 } 1527 }
1528 } 1528 }
1529 goto iseqne_fp; 1529 goto iseqne_fp;
1530 case BC_ISEQP: case BC_ISNEP: 1530 case BC_ISEQP: case BC_ISNEP:
1531 vk = op == BC_ISEQP; 1531 vk = op == BC_ISEQP;
1532 dasm_put(Dst, 9805); 1532 dasm_put(Dst, 9807);
1533 goto iseqne_test; 1533 goto iseqne_test;
1534 1534
1535 /* -- Unary test and copy ops ------------------------------------------- */ 1535 /* -- Unary test and copy ops ------------------------------------------- */
1536 1536
1537 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 1537 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
1538 dasm_put(Dst, 9817, LJ_TISTRUECOND); 1538 dasm_put(Dst, 9819, LJ_TISTRUECOND);
1539 if (op == BC_IST || op == BC_ISTC) { 1539 if (op == BC_IST || op == BC_ISTC) {
1540 dasm_put(Dst, 9829); 1540 dasm_put(Dst, 9831);
1541 } else { 1541 } else {
1542 dasm_put(Dst, 9834); 1542 dasm_put(Dst, 9836);
1543 } 1543 }
1544 if (op == BC_ISTC || op == BC_ISFC) { 1544 if (op == BC_ISTC || op == BC_ISFC) {
1545 dasm_put(Dst, 9839); 1545 dasm_put(Dst, 9841);
1546 } 1546 }
1547 dasm_put(Dst, 9850, -BCBIAS_J*4); 1547 dasm_put(Dst, 9852, -BCBIAS_J*4);
1548 break; 1548 break;
1549 1549
1550 /* -- Unary ops --------------------------------------------------------- */ 1550 /* -- Unary ops --------------------------------------------------------- */
1551 1551
1552 case BC_MOV: 1552 case BC_MOV:
1553 dasm_put(Dst, 9883); 1553 dasm_put(Dst, 9885);
1554 break; 1554 break;
1555 case BC_NOT: 1555 case BC_NOT:
1556 dasm_put(Dst, 9918, LJ_TISTRUECOND, LJ_TTRUE); 1556 dasm_put(Dst, 9920, LJ_TISTRUECOND, LJ_TTRUE);
1557 break; 1557 break;
1558 case BC_UNM: 1558 case BC_UNM:
1559 dasm_put(Dst, 9955, LJ_TISNUM); 1559 dasm_put(Dst, 9957, LJ_TISNUM);
1560 if (sse) { 1560 if (sse) {
1561 dasm_put(Dst, 9966, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1561 dasm_put(Dst, 9968, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1562 } else { 1562 } else {
1563 dasm_put(Dst, 9991); 1563 dasm_put(Dst, 9993);
1564 } 1564 }
1565 dasm_put(Dst, 9558); 1565 dasm_put(Dst, 9560);
1566 break; 1566 break;
1567 case BC_LEN: 1567 case BC_LEN:
1568 dasm_put(Dst, 10000, LJ_TSTR); 1568 dasm_put(Dst, 10002, LJ_TSTR);
1569 if (sse) { 1569 if (sse) {
1570 dasm_put(Dst, 10014, Dt5(->len)); 1570 dasm_put(Dst, 10016, Dt5(->len));
1571 } else { 1571 } else {
1572 dasm_put(Dst, 10032, Dt5(->len)); 1572 dasm_put(Dst, 10034, Dt5(->len));
1573 } 1573 }
1574 dasm_put(Dst, 10041, LJ_TTAB); 1574 dasm_put(Dst, 10043, LJ_TTAB);
1575 if (sse) { 1575 if (sse) {
1576 dasm_put(Dst, 10083); 1576 dasm_put(Dst, 10085);
1577 } else { 1577 } else {
1578 } 1578 }
1579 dasm_put(Dst, 10092); 1579 dasm_put(Dst, 10094);
1580 break; 1580 break;
1581 1581
1582 /* -- Binary ops -------------------------------------------------------- */ 1582 /* -- Binary ops -------------------------------------------------------- */
1583 1583
1584 1584
1585 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: 1585 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV:
1586 dasm_put(Dst, 10102); 1586 dasm_put(Dst, 10104);
1587 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1587 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1588 switch (vk) { 1588 switch (vk) {
1589 case 0: 1589 case 0:
1590 dasm_put(Dst, 10110, LJ_TISNUM); 1590 dasm_put(Dst, 10112, LJ_TISNUM);
1591 if (sse) { 1591 if (sse) {
1592 dasm_put(Dst, 10122); 1592 dasm_put(Dst, 10124);
1593 } else { 1593 } else {
1594 dasm_put(Dst, 10137); 1594 dasm_put(Dst, 10139);
1595 } 1595 }
1596 break; 1596 break;
1597 case 1: 1597 case 1:
1598 dasm_put(Dst, 10146, LJ_TISNUM); 1598 dasm_put(Dst, 10148, LJ_TISNUM);
1599 if (sse) { 1599 if (sse) {
1600 dasm_put(Dst, 10158); 1600 dasm_put(Dst, 10160);
1601 } else { 1601 } else {
1602 dasm_put(Dst, 10173); 1602 dasm_put(Dst, 10175);
1603 } 1603 }
1604 break; 1604 break;
1605 default: 1605 default:
1606 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1606 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1607 if (sse) { 1607 if (sse) {
1608 dasm_put(Dst, 10204); 1608 dasm_put(Dst, 10206);
1609 } else { 1609 } else {
1610 dasm_put(Dst, 10218); 1610 dasm_put(Dst, 10220);
1611 } 1611 }
1612 break; 1612 break;
1613 } 1613 }
1614 if (sse) { 1614 if (sse) {
1615 dasm_put(Dst, 9984); 1615 dasm_put(Dst, 9986);
1616 } else { 1616 } else {
1617 dasm_put(Dst, 9996); 1617 dasm_put(Dst, 9998);
1618 } 1618 }
1619 dasm_put(Dst, 9558); 1619 dasm_put(Dst, 9560);
1620 break; 1620 break;
1621 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 1621 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
1622 dasm_put(Dst, 10102); 1622 dasm_put(Dst, 10104);
1623 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1623 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1624 switch (vk) { 1624 switch (vk) {
1625 case 0: 1625 case 0:
1626 dasm_put(Dst, 10110, LJ_TISNUM); 1626 dasm_put(Dst, 10112, LJ_TISNUM);
1627 if (sse) { 1627 if (sse) {
1628 dasm_put(Dst, 10226); 1628 dasm_put(Dst, 10228);
1629 } else { 1629 } else {
1630 dasm_put(Dst, 10241); 1630 dasm_put(Dst, 10243);
1631 } 1631 }
1632 break; 1632 break;
1633 case 1: 1633 case 1:
1634 dasm_put(Dst, 10146, LJ_TISNUM); 1634 dasm_put(Dst, 10148, LJ_TISNUM);
1635 if (sse) { 1635 if (sse) {
1636 dasm_put(Dst, 10250); 1636 dasm_put(Dst, 10252);
1637 } else { 1637 } else {
1638 dasm_put(Dst, 10265); 1638 dasm_put(Dst, 10267);
1639 } 1639 }
1640 break; 1640 break;
1641 default: 1641 default:
1642 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1642 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1643 if (sse) { 1643 if (sse) {
1644 dasm_put(Dst, 10274); 1644 dasm_put(Dst, 10276);
1645 } else { 1645 } else {
1646 dasm_put(Dst, 10288); 1646 dasm_put(Dst, 10290);
1647 } 1647 }
1648 break; 1648 break;
1649 } 1649 }
1650 if (sse) { 1650 if (sse) {
1651 dasm_put(Dst, 9984); 1651 dasm_put(Dst, 9986);
1652 } else { 1652 } else {
1653 dasm_put(Dst, 9996); 1653 dasm_put(Dst, 9998);
1654 } 1654 }
1655 dasm_put(Dst, 9558); 1655 dasm_put(Dst, 9560);
1656 break; 1656 break;
1657 case BC_MULVN: case BC_MULNV: case BC_MULVV: 1657 case BC_MULVN: case BC_MULNV: case BC_MULVV:
1658 dasm_put(Dst, 10102); 1658 dasm_put(Dst, 10104);
1659 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1659 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1660 switch (vk) { 1660 switch (vk) {
1661 case 0: 1661 case 0:
1662 dasm_put(Dst, 10110, LJ_TISNUM); 1662 dasm_put(Dst, 10112, LJ_TISNUM);
1663 if (sse) { 1663 if (sse) {
1664 dasm_put(Dst, 10296); 1664 dasm_put(Dst, 10298);
1665 } else { 1665 } else {
1666 dasm_put(Dst, 10311); 1666 dasm_put(Dst, 10313);
1667 } 1667 }
1668 break; 1668 break;
1669 case 1: 1669 case 1:
1670 dasm_put(Dst, 10146, LJ_TISNUM); 1670 dasm_put(Dst, 10148, LJ_TISNUM);
1671 if (sse) { 1671 if (sse) {
1672 dasm_put(Dst, 10320); 1672 dasm_put(Dst, 10322);
1673 } else { 1673 } else {
1674 dasm_put(Dst, 10335); 1674 dasm_put(Dst, 10337);
1675 } 1675 }
1676 break; 1676 break;
1677 default: 1677 default:
1678 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1678 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1679 if (sse) { 1679 if (sse) {
1680 dasm_put(Dst, 10344); 1680 dasm_put(Dst, 10346);
1681 } else { 1681 } else {
1682 dasm_put(Dst, 10358); 1682 dasm_put(Dst, 10360);
1683 } 1683 }
1684 break; 1684 break;
1685 } 1685 }
1686 if (sse) { 1686 if (sse) {
1687 dasm_put(Dst, 9984); 1687 dasm_put(Dst, 9986);
1688 } else { 1688 } else {
1689 dasm_put(Dst, 9996); 1689 dasm_put(Dst, 9998);
1690 } 1690 }
1691 dasm_put(Dst, 9558); 1691 dasm_put(Dst, 9560);
1692 break; 1692 break;
1693 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 1693 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
1694 dasm_put(Dst, 10102); 1694 dasm_put(Dst, 10104);
1695 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1695 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1696 switch (vk) { 1696 switch (vk) {
1697 case 0: 1697 case 0:
1698 dasm_put(Dst, 10110, LJ_TISNUM); 1698 dasm_put(Dst, 10112, LJ_TISNUM);
1699 if (sse) { 1699 if (sse) {
1700 dasm_put(Dst, 10366); 1700 dasm_put(Dst, 10368);
1701 } else { 1701 } else {
1702 dasm_put(Dst, 10381); 1702 dasm_put(Dst, 10383);
1703 } 1703 }
1704 break; 1704 break;
1705 case 1: 1705 case 1:
1706 dasm_put(Dst, 10146, LJ_TISNUM); 1706 dasm_put(Dst, 10148, LJ_TISNUM);
1707 if (sse) { 1707 if (sse) {
1708 dasm_put(Dst, 10390); 1708 dasm_put(Dst, 10392);
1709 } else { 1709 } else {
1710 dasm_put(Dst, 10405); 1710 dasm_put(Dst, 10407);
1711 } 1711 }
1712 break; 1712 break;
1713 default: 1713 default:
1714 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1714 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1715 if (sse) { 1715 if (sse) {
1716 dasm_put(Dst, 10414); 1716 dasm_put(Dst, 10416);
1717 } else { 1717 } else {
1718 dasm_put(Dst, 10428); 1718 dasm_put(Dst, 10430);
1719 } 1719 }
1720 break; 1720 break;
1721 } 1721 }
1722 if (sse) { 1722 if (sse) {
1723 dasm_put(Dst, 9984); 1723 dasm_put(Dst, 9986);
1724 } else { 1724 } else {
1725 dasm_put(Dst, 9996); 1725 dasm_put(Dst, 9998);
1726 } 1726 }
1727 dasm_put(Dst, 9558); 1727 dasm_put(Dst, 9560);
1728 break; 1728 break;
1729 case BC_MODVN: 1729 case BC_MODVN:
1730 dasm_put(Dst, 10102); 1730 dasm_put(Dst, 10104);
1731 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1731 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1732 switch (vk) { 1732 switch (vk) {
1733 case 0: 1733 case 0:
1734 dasm_put(Dst, 10110, LJ_TISNUM); 1734 dasm_put(Dst, 10112, LJ_TISNUM);
1735 if (sse) { 1735 if (sse) {
1736 dasm_put(Dst, 10436); 1736 dasm_put(Dst, 10438);
1737 } else { 1737 } else {
1738 dasm_put(Dst, 10451); 1738 dasm_put(Dst, 10453);
1739 } 1739 }
1740 break; 1740 break;
1741 case 1: 1741 case 1:
1742 dasm_put(Dst, 10146, LJ_TISNUM); 1742 dasm_put(Dst, 10148, LJ_TISNUM);
1743 if (sse) { 1743 if (sse) {
1744 dasm_put(Dst, 10460); 1744 dasm_put(Dst, 10462);
1745 } else { 1745 } else {
1746 dasm_put(Dst, 10475); 1746 dasm_put(Dst, 10477);
1747 } 1747 }
1748 break; 1748 break;
1749 default: 1749 default:
1750 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1750 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1751 if (sse) { 1751 if (sse) {
1752 dasm_put(Dst, 10484); 1752 dasm_put(Dst, 10486);
1753 } else { 1753 } else {
1754 dasm_put(Dst, 10498); 1754 dasm_put(Dst, 10500);
1755 } 1755 }
1756 break; 1756 break;
1757 } 1757 }
1758 dasm_put(Dst, 10506); 1758 dasm_put(Dst, 10508);
1759 if (sse) { 1759 if (sse) {
1760 dasm_put(Dst, 9984); 1760 dasm_put(Dst, 9986);
1761 } else { 1761 } else {
1762 dasm_put(Dst, 9996); 1762 dasm_put(Dst, 9998);
1763 } 1763 }
1764 dasm_put(Dst, 9558); 1764 dasm_put(Dst, 9560);
1765 break; 1765 break;
1766 case BC_MODNV: case BC_MODVV: 1766 case BC_MODNV: case BC_MODVV:
1767 dasm_put(Dst, 10102); 1767 dasm_put(Dst, 10104);
1768 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1768 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1769 switch (vk) { 1769 switch (vk) {
1770 case 0: 1770 case 0:
1771 dasm_put(Dst, 10110, LJ_TISNUM); 1771 dasm_put(Dst, 10112, LJ_TISNUM);
1772 if (sse) { 1772 if (sse) {
1773 dasm_put(Dst, 10436); 1773 dasm_put(Dst, 10438);
1774 } else { 1774 } else {
1775 dasm_put(Dst, 10451); 1775 dasm_put(Dst, 10453);
1776 } 1776 }
1777 break; 1777 break;
1778 case 1: 1778 case 1:
1779 dasm_put(Dst, 10146, LJ_TISNUM); 1779 dasm_put(Dst, 10148, LJ_TISNUM);
1780 if (sse) { 1780 if (sse) {
1781 dasm_put(Dst, 10460); 1781 dasm_put(Dst, 10462);
1782 } else { 1782 } else {
1783 dasm_put(Dst, 10475); 1783 dasm_put(Dst, 10477);
1784 } 1784 }
1785 break; 1785 break;
1786 default: 1786 default:
1787 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1787 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1788 if (sse) { 1788 if (sse) {
1789 dasm_put(Dst, 10484); 1789 dasm_put(Dst, 10486);
1790 } else { 1790 } else {
1791 dasm_put(Dst, 10498); 1791 dasm_put(Dst, 10500);
1792 } 1792 }
1793 break; 1793 break;
1794 } 1794 }
1795 dasm_put(Dst, 10512); 1795 dasm_put(Dst, 10514);
1796 break; 1796 break;
1797 case BC_POW: 1797 case BC_POW:
1798 dasm_put(Dst, 10102); 1798 dasm_put(Dst, 10104);
1799 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1799 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1800 switch (vk) { 1800 switch (vk) {
1801 case 0: 1801 case 0:
1802 dasm_put(Dst, 10110, LJ_TISNUM); 1802 dasm_put(Dst, 10112, LJ_TISNUM);
1803 if (sse) { 1803 if (sse) {
1804 dasm_put(Dst, 10436); 1804 dasm_put(Dst, 10438);
1805 } else { 1805 } else {
1806 dasm_put(Dst, 10451); 1806 dasm_put(Dst, 10453);
1807 } 1807 }
1808 break; 1808 break;
1809 case 1: 1809 case 1:
1810 dasm_put(Dst, 10146, LJ_TISNUM); 1810 dasm_put(Dst, 10148, LJ_TISNUM);
1811 if (sse) { 1811 if (sse) {
1812 dasm_put(Dst, 10460); 1812 dasm_put(Dst, 10462);
1813 } else { 1813 } else {
1814 dasm_put(Dst, 10475); 1814 dasm_put(Dst, 10477);
1815 } 1815 }
1816 break; 1816 break;
1817 default: 1817 default:
1818 dasm_put(Dst, 10182, LJ_TISNUM, LJ_TISNUM); 1818 dasm_put(Dst, 10184, LJ_TISNUM, LJ_TISNUM);
1819 if (sse) { 1819 if (sse) {
1820 dasm_put(Dst, 10484); 1820 dasm_put(Dst, 10486);
1821 } else { 1821 } else {
1822 dasm_put(Dst, 10498); 1822 dasm_put(Dst, 10500);
1823 } 1823 }
1824 break; 1824 break;
1825 } 1825 }
1826 dasm_put(Dst, 10517); 1826 dasm_put(Dst, 10519);
1827 if (sse) { 1827 if (sse) {
1828 dasm_put(Dst, 9984); 1828 dasm_put(Dst, 9986);
1829 } else { 1829 } else {
1830 dasm_put(Dst, 9996); 1830 dasm_put(Dst, 9998);
1831 } 1831 }
1832 dasm_put(Dst, 9558); 1832 dasm_put(Dst, 9560);
1833 break; 1833 break;
1834 1834
1835 case BC_CAT: 1835 case BC_CAT:
1836 dasm_put(Dst, 10521, Dt1(->base), Dt1(->base)); 1836 dasm_put(Dst, 10523, Dt1(->base), Dt1(->base));
1837 break; 1837 break;
1838 1838
1839 /* -- Constant ops ------------------------------------------------------ */ 1839 /* -- Constant ops ------------------------------------------------------ */
1840 1840
1841 case BC_KSTR: 1841 case BC_KSTR:
1842 dasm_put(Dst, 10612, LJ_TSTR); 1842 dasm_put(Dst, 10614, LJ_TSTR);
1843 break; 1843 break;
1844 case BC_KSHORT: 1844 case BC_KSHORT:
1845 if (sse) { 1845 if (sse) {
1846 dasm_put(Dst, 10649); 1846 dasm_put(Dst, 10651);
1847 } else { 1847 } else {
1848 dasm_put(Dst, 10664); 1848 dasm_put(Dst, 10666);
1849 } 1849 }
1850 dasm_put(Dst, 9558); 1850 dasm_put(Dst, 9560);
1851 break; 1851 break;
1852 case BC_KNUM: 1852 case BC_KNUM:
1853 if (sse) { 1853 if (sse) {
1854 dasm_put(Dst, 10672); 1854 dasm_put(Dst, 10674);
1855 } else { 1855 } else {
1856 dasm_put(Dst, 10686); 1856 dasm_put(Dst, 10688);
1857 } 1857 }
1858 dasm_put(Dst, 9558); 1858 dasm_put(Dst, 9560);
1859 break; 1859 break;
1860 case BC_KPRI: 1860 case BC_KPRI:
1861 dasm_put(Dst, 10694); 1861 dasm_put(Dst, 10696);
1862 break; 1862 break;
1863 case BC_KNIL: 1863 case BC_KNIL:
1864 dasm_put(Dst, 10723, LJ_TNIL); 1864 dasm_put(Dst, 10725, LJ_TNIL);
1865 break; 1865 break;
1866 1866
1867 /* -- Upvalue and function ops ------------------------------------------ */ 1867 /* -- Upvalue and function ops ------------------------------------------ */
1868 1868
1869 case BC_UGET: 1869 case BC_UGET:
1870 dasm_put(Dst, 10771, offsetof(GCfuncL, uvptr), DtA(->v)); 1870 dasm_put(Dst, 10773, offsetof(GCfuncL, uvptr), DtA(->v));
1871 break; 1871 break;
1872 case BC_USETV: 1872 case BC_USETV:
1873#define TV2MARKOFS \ 1873#define TV2MARKOFS \
1874 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) 1874 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv))
1875 dasm_put(Dst, 10817, 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); 1875 dasm_put(Dst, 10819, 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);
1876 dasm_put(Dst, 10913); 1876 dasm_put(Dst, 10915);
1877 break; 1877 break;
1878#undef TV2MARKOFS 1878#undef TV2MARKOFS
1879 case BC_USETS: 1879 case BC_USETS:
1880 dasm_put(Dst, 10925, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); 1880 dasm_put(Dst, 10927, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G);
1881 break; 1881 break;
1882 case BC_USETN: 1882 case BC_USETN:
1883 dasm_put(Dst, 11021); 1883 dasm_put(Dst, 11023);
1884 if (sse) { 1884 if (sse) {
1885 dasm_put(Dst, 11026); 1885 dasm_put(Dst, 11028);
1886 } else { 1886 } else {
1887 dasm_put(Dst, 9800); 1887 dasm_put(Dst, 9802);
1888 } 1888 }
1889 dasm_put(Dst, 11034, offsetof(GCfuncL, uvptr), DtA(->v)); 1889 dasm_put(Dst, 11036, offsetof(GCfuncL, uvptr), DtA(->v));
1890 if (sse) { 1890 if (sse) {
1891 dasm_put(Dst, 11043); 1891 dasm_put(Dst, 11045);
1892 } else { 1892 } else {
1893 dasm_put(Dst, 11049); 1893 dasm_put(Dst, 11051);
1894 } 1894 }
1895 dasm_put(Dst, 9558); 1895 dasm_put(Dst, 9560);
1896 break; 1896 break;
1897 case BC_USETP: 1897 case BC_USETP:
1898 dasm_put(Dst, 11052, offsetof(GCfuncL, uvptr), DtA(->v)); 1898 dasm_put(Dst, 11054, offsetof(GCfuncL, uvptr), DtA(->v));
1899 break; 1899 break;
1900 case BC_UCLO: 1900 case BC_UCLO:
1901 dasm_put(Dst, 11092, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); 1901 dasm_put(Dst, 11094, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base));
1902 break; 1902 break;
1903 1903
1904 case BC_FNEW: 1904 case BC_FNEW:
1905 dasm_put(Dst, 11148, Dt1(->base), Dt1(->base), LJ_TFUNC); 1905 dasm_put(Dst, 11150, Dt1(->base), Dt1(->base), LJ_TFUNC);
1906 break; 1906 break;
1907 1907
1908 /* -- Table ops --------------------------------------------------------- */ 1908 /* -- Table ops --------------------------------------------------------- */
1909 1909
1910 case BC_TNEW: 1910 case BC_TNEW:
1911 dasm_put(Dst, 11215, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); 1911 dasm_put(Dst, 11217, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB);
1912 break; 1912 break;
1913 case BC_TDUP: 1913 case BC_TDUP:
1914 dasm_put(Dst, 11339, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 1914 dasm_put(Dst, 11341, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
1915 break; 1915 break;
1916 1916
1917 case BC_GGET: 1917 case BC_GGET:
1918 dasm_put(Dst, 11438, Dt7(->env)); 1918 dasm_put(Dst, 11440, Dt7(->env));
1919 break; 1919 break;
1920 case BC_GSET: 1920 case BC_GSET:
1921 dasm_put(Dst, 11458, Dt7(->env)); 1921 dasm_put(Dst, 11460, Dt7(->env));
1922 break; 1922 break;
1923 1923
1924 case BC_TGETV: 1924 case BC_TGETV:
1925 dasm_put(Dst, 11478, LJ_TTAB, LJ_TISNUM); 1925 dasm_put(Dst, 11480, LJ_TTAB, LJ_TISNUM);
1926 if (sse) { 1926 if (sse) {
1927 dasm_put(Dst, 11511); 1927 dasm_put(Dst, 11513);
1928 } else { 1928 } else {
1929 } 1929 }
1930 dasm_put(Dst, 11532, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1930 dasm_put(Dst, 11534, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1931 dasm_put(Dst, 11626, LJ_TSTR); 1931 dasm_put(Dst, 11628, LJ_TSTR);
1932 break; 1932 break;
1933 case BC_TGETS: 1933 case BC_TGETS:
1934 dasm_put(Dst, 11644, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 1934 dasm_put(Dst, 11646, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
1935 dasm_put(Dst, 11730, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1935 dasm_put(Dst, 11732, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1936 break; 1936 break;
1937 case BC_TGETB: 1937 case BC_TGETB:
1938 dasm_put(Dst, 11803, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1938 dasm_put(Dst, 11805, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1939 dasm_put(Dst, 10092); 1939 dasm_put(Dst, 10094);
1940 break; 1940 break;
1941 1941
1942 case BC_TSETV: 1942 case BC_TSETV:
1943 dasm_put(Dst, 11904, LJ_TTAB, LJ_TISNUM); 1943 dasm_put(Dst, 11906, LJ_TTAB, LJ_TISNUM);
1944 if (sse) { 1944 if (sse) {
1945 dasm_put(Dst, 11511); 1945 dasm_put(Dst, 11513);
1946 } else { 1946 } else {
1947 } 1947 }
1948 dasm_put(Dst, 11937, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable)); 1948 dasm_put(Dst, 11939, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable));
1949 dasm_put(Dst, 12022, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1949 dasm_put(Dst, 12024, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1950 break; 1950 break;
1951 case BC_TSETS: 1951 case BC_TSETS:
1952 dasm_put(Dst, 12086, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 1952 dasm_put(Dst, 12088, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
1953 dasm_put(Dst, 12163, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next)); 1953 dasm_put(Dst, 12165, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next));
1954 dasm_put(Dst, 12255, 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)); 1954 dasm_put(Dst, 12257, 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));
1955 break; 1955 break;
1956 case BC_TSETB: 1956 case BC_TSETB:
1957 dasm_put(Dst, 12347, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 1957 dasm_put(Dst, 12349, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
1958 dasm_put(Dst, 12447, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1958 dasm_put(Dst, 12449, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1959 break; 1959 break;
1960 1960
1961 case BC_TSETM: 1961 case BC_TSETM:
1962 dasm_put(Dst, 12495); 1962 dasm_put(Dst, 12497);
1963 if (sse) { 1963 if (sse) {
1964 dasm_put(Dst, 12500); 1964 dasm_put(Dst, 12502);
1965 } else { 1965 } else {
1966 } 1966 }
1967 dasm_put(Dst, 12508, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); 1967 dasm_put(Dst, 12510, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base));
1968 dasm_put(Dst, 12656, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1968 dasm_put(Dst, 12658, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1969 break; 1969 break;
1970 1970
1971 /* -- Calls and vararg handling ----------------------------------------- */ 1971 /* -- Calls and vararg handling ----------------------------------------- */
1972 1972
1973 case BC_CALL: case BC_CALLM: 1973 case BC_CALL: case BC_CALLM:
1974 dasm_put(Dst, 10106); 1974 dasm_put(Dst, 10108);
1975 if (op == BC_CALLM) { 1975 if (op == BC_CALLM) {
1976 dasm_put(Dst, 12676); 1976 dasm_put(Dst, 12678);
1977 } 1977 }
1978 dasm_put(Dst, 12681, LJ_TFUNC, Dt7(->pc)); 1978 dasm_put(Dst, 12683, LJ_TFUNC, Dt7(->pc));
1979 break; 1979 break;
1980 1980
1981 case BC_CALLMT: 1981 case BC_CALLMT:
1982 dasm_put(Dst, 12676); 1982 dasm_put(Dst, 12678);
1983 break; 1983 break;
1984 case BC_CALLT: 1984 case BC_CALLT:
1985 dasm_put(Dst, 12724, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); 1985 dasm_put(Dst, 12726, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc));
1986 dasm_put(Dst, 12848, FRAME_TYPE, Dt7(->pc), PC2PROTO(k)); 1986 dasm_put(Dst, 12850, FRAME_TYPE, Dt7(->pc), PC2PROTO(k));
1987 break; 1987 break;
1988 1988
1989 case BC_ITERC: 1989 case BC_ITERC:
1990 dasm_put(Dst, 12909, LJ_TFUNC, 2+1, Dt7(->pc)); 1990 dasm_put(Dst, 12911, LJ_TFUNC, 2+1, Dt7(->pc));
1991 break; 1991 break;
1992 1992
1993 case BC_VARG: 1993 case BC_VARG:
1994 dasm_put(Dst, 12991, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL); 1994 dasm_put(Dst, 12993, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL);
1995 dasm_put(Dst, 13145, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 1995 dasm_put(Dst, 13147, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
1996 break; 1996 break;
1997 1997
1998 /* -- Returns ----------------------------------------------------------- */ 1998 /* -- Returns ----------------------------------------------------------- */
1999 1999
2000 case BC_RETM: 2000 case BC_RETM:
2001 dasm_put(Dst, 12676); 2001 dasm_put(Dst, 12678);
2002 break; 2002 break;
2003 2003
2004 case BC_RET: case BC_RET0: case BC_RET1: 2004 case BC_RET: case BC_RET0: case BC_RET1:
2005 if (op != BC_RET0) { 2005 if (op != BC_RET0) {
2006 dasm_put(Dst, 13250); 2006 dasm_put(Dst, 13252);
2007 } 2007 }
2008 dasm_put(Dst, 13254, FRAME_TYPE); 2008 dasm_put(Dst, 13256, FRAME_TYPE);
2009 switch (op) { 2009 switch (op) {
2010 case BC_RET: 2010 case BC_RET:
2011 dasm_put(Dst, 13273); 2011 dasm_put(Dst, 13275);
2012 break; 2012 break;
2013 case BC_RET1: 2013 case BC_RET1:
2014 dasm_put(Dst, 13337); 2014 dasm_put(Dst, 13339);
2015 /* fallthrough */ 2015 /* fallthrough */
2016 case BC_RET0: 2016 case BC_RET0:
2017 dasm_put(Dst, 13353); 2017 dasm_put(Dst, 13355);
2018 default: 2018 default:
2019 break; 2019 break;
2020 } 2020 }
2021 dasm_put(Dst, 13364, Dt7(->pc), PC2PROTO(k)); 2021 dasm_put(Dst, 13366, Dt7(->pc), PC2PROTO(k));
2022 if (op == BC_RET) { 2022 if (op == BC_RET) {
2023 dasm_put(Dst, 13412, LJ_TNIL); 2023 dasm_put(Dst, 13414, LJ_TNIL);
2024 } else { 2024 } else {
2025 dasm_put(Dst, 13423, LJ_TNIL); 2025 dasm_put(Dst, 13425, LJ_TNIL);
2026 } 2026 }
2027 dasm_put(Dst, 13430); 2027 dasm_put(Dst, 13432);
2028 if (op != BC_RET0) { 2028 if (op != BC_RET0) {
2029 dasm_put(Dst, 13450); 2029 dasm_put(Dst, 13452);
2030 } 2030 }
2031 dasm_put(Dst, 4596); 2031 dasm_put(Dst, 4596);
2032 break; 2032 break;
@@ -2036,7 +2036,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2036 2036
2037 case BC_FORL: 2037 case BC_FORL:
2038#if LJ_HASJIT 2038#if LJ_HASJIT
2039 dasm_put(Dst, 13453, HOTCOUNT_PCMASK, GG_DISP2HOT); 2039 dasm_put(Dst, 13455, HOTCOUNT_PCMASK, GG_DISP2HOT);
2040#endif 2040#endif
2041 break; 2041 break;
2042 2042
@@ -2048,57 +2048,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2048 case BC_FORI: 2048 case BC_FORI:
2049 case BC_IFORL: 2049 case BC_IFORL:
2050 vk = (op == BC_IFORL || op == BC_JFORL); 2050 vk = (op == BC_IFORL || op == BC_JFORL);
2051 dasm_put(Dst, 13474); 2051 dasm_put(Dst, 13476);
2052 if (!vk) { 2052 if (!vk) {
2053 dasm_put(Dst, 13478, LJ_TISNUM, LJ_TISNUM); 2053 dasm_put(Dst, 13480, LJ_TISNUM, LJ_TISNUM);
2054 } 2054 }
2055 dasm_put(Dst, 13497); 2055 dasm_put(Dst, 13499);
2056 if (!vk) { 2056 if (!vk) {
2057 dasm_put(Dst, 13501, LJ_TISNUM); 2057 dasm_put(Dst, 13503, LJ_TISNUM);
2058 } 2058 }
2059 if (sse) { 2059 if (sse) {
2060 dasm_put(Dst, 13510); 2060 dasm_put(Dst, 13512);
2061 if (vk) { 2061 if (vk) {
2062 dasm_put(Dst, 13522); 2062 dasm_put(Dst, 13524);
2063 } else { 2063 } else {
2064 dasm_put(Dst, 13541); 2064 dasm_put(Dst, 13543);
2065 } 2065 }
2066 dasm_put(Dst, 13546); 2066 dasm_put(Dst, 13548);
2067 } else { 2067 } else {
2068 dasm_put(Dst, 13559); 2068 dasm_put(Dst, 13561);
2069 if (vk) { 2069 if (vk) {
2070 dasm_put(Dst, 13565); 2070 dasm_put(Dst, 13567);
2071 } else { 2071 } else {
2072 dasm_put(Dst, 13581); 2072 dasm_put(Dst, 13583);
2073 } 2073 }
2074 dasm_put(Dst, 13589); 2074 dasm_put(Dst, 13591);
2075 if (cmov) { 2075 if (cmov) {
2076 dasm_put(Dst, 9521); 2076 dasm_put(Dst, 9523);
2077 } else { 2077 } else {
2078 dasm_put(Dst, 9527); 2078 dasm_put(Dst, 9529);
2079 } 2079 }
2080 if (!cmov) { 2080 if (!cmov) {
2081 dasm_put(Dst, 13594); 2081 dasm_put(Dst, 13596);
2082 } 2082 }
2083 } 2083 }
2084 if (op == BC_FORI) { 2084 if (op == BC_FORI) {
2085 dasm_put(Dst, 13600, -BCBIAS_J*4); 2085 dasm_put(Dst, 13602, -BCBIAS_J*4);
2086 } else if (op == BC_JFORI) { 2086 } else if (op == BC_JFORI) {
2087 dasm_put(Dst, 13610, -BCBIAS_J*4, BC_JLOOP); 2087 dasm_put(Dst, 13612, -BCBIAS_J*4, BC_JLOOP);
2088 } else if (op == BC_IFORL) { 2088 } else if (op == BC_IFORL) {
2089 dasm_put(Dst, 13624, -BCBIAS_J*4); 2089 dasm_put(Dst, 13626, -BCBIAS_J*4);
2090 } else { 2090 } else {
2091 dasm_put(Dst, 13620, BC_JLOOP); 2091 dasm_put(Dst, 13622, BC_JLOOP);
2092 } 2092 }
2093 dasm_put(Dst, 9556); 2093 dasm_put(Dst, 9558);
2094 if (sse) { 2094 if (sse) {
2095 dasm_put(Dst, 13634); 2095 dasm_put(Dst, 13636);
2096 } 2096 }
2097 break; 2097 break;
2098 2098
2099 case BC_ITERL: 2099 case BC_ITERL:
2100#if LJ_HASJIT 2100#if LJ_HASJIT
2101 dasm_put(Dst, 13453, HOTCOUNT_PCMASK, GG_DISP2HOT); 2101 dasm_put(Dst, 13455, HOTCOUNT_PCMASK, GG_DISP2HOT);
2102#endif 2102#endif
2103 break; 2103 break;
2104 2104
@@ -2107,33 +2107,33 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2107 break; 2107 break;
2108#endif 2108#endif
2109 case BC_IITERL: 2109 case BC_IITERL:
2110 dasm_put(Dst, 13645, LJ_TNIL); 2110 dasm_put(Dst, 13647, LJ_TNIL);
2111 if (op == BC_JITERL) { 2111 if (op == BC_JITERL) {
2112 dasm_put(Dst, 13660, BC_JLOOP); 2112 dasm_put(Dst, 13662, BC_JLOOP);
2113 } else { 2113 } else {
2114 dasm_put(Dst, 13674, -BCBIAS_J*4); 2114 dasm_put(Dst, 13676, -BCBIAS_J*4);
2115 } 2115 }
2116 dasm_put(Dst, 9860); 2116 dasm_put(Dst, 9862);
2117 break; 2117 break;
2118 2118
2119 case BC_LOOP: 2119 case BC_LOOP:
2120#if LJ_HASJIT 2120#if LJ_HASJIT
2121 dasm_put(Dst, 13453, HOTCOUNT_PCMASK, GG_DISP2HOT); 2121 dasm_put(Dst, 13455, HOTCOUNT_PCMASK, GG_DISP2HOT);
2122#endif 2122#endif
2123 break; 2123 break;
2124 2124
2125 case BC_ILOOP: 2125 case BC_ILOOP:
2126 dasm_put(Dst, 9558); 2126 dasm_put(Dst, 9560);
2127 break; 2127 break;
2128 2128
2129 case BC_JLOOP: 2129 case BC_JLOOP:
2130#if LJ_HASJIT 2130#if LJ_HASJIT
2131 dasm_put(Dst, 13690, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); 2131 dasm_put(Dst, 13692, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L));
2132#endif 2132#endif
2133 break; 2133 break;
2134 2134
2135 case BC_JMP: 2135 case BC_JMP:
2136 dasm_put(Dst, 13731, -BCBIAS_J*4); 2136 dasm_put(Dst, 13733, -BCBIAS_J*4);
2137 break; 2137 break;
2138 2138
2139 /* -- Function headers -------------------------------------------------- */ 2139 /* -- Function headers -------------------------------------------------- */
@@ -2147,7 +2147,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2147 2147
2148 case BC_FUNCF: 2148 case BC_FUNCF:
2149#if LJ_HASJIT 2149#if LJ_HASJIT
2150 dasm_put(Dst, 13757, HOTCOUNT_PCMASK, GG_DISP2HOT); 2150 dasm_put(Dst, 13759, HOTCOUNT_PCMASK, GG_DISP2HOT);
2151#endif 2151#endif
2152 case BC_FUNCV: /* NYI: compiled vararg functions. */ 2152 case BC_FUNCV: /* NYI: compiled vararg functions. */
2153 break; 2153 break;
@@ -2157,47 +2157,47 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2157 break; 2157 break;
2158#endif 2158#endif
2159 case BC_IFUNCF: 2159 case BC_IFUNCF:
2160 dasm_put(Dst, 13778, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); 2160 dasm_put(Dst, 13780, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams));
2161 if (op == BC_JFUNCF) { 2161 if (op == BC_JFUNCF) {
2162 dasm_put(Dst, 13809, BC_JLOOP); 2162 dasm_put(Dst, 13811, BC_JLOOP);
2163 } else { 2163 } else {
2164 dasm_put(Dst, 9558); 2164 dasm_put(Dst, 9560);
2165 } 2165 }
2166 dasm_put(Dst, 13818, LJ_TNIL); 2166 dasm_put(Dst, 13820, LJ_TNIL);
2167 break; 2167 break;
2168 2168
2169 case BC_JFUNCV: 2169 case BC_JFUNCV:
2170#if !LJ_HASJIT 2170#if !LJ_HASJIT
2171 break; 2171 break;
2172#endif 2172#endif
2173 dasm_put(Dst, 9253); 2173 dasm_put(Dst, 9255);
2174 break; /* NYI: compiled vararg functions. */ 2174 break; /* NYI: compiled vararg functions. */
2175 2175
2176 case BC_IFUNCV: 2176 case BC_IFUNCV:
2177 dasm_put(Dst, 13840, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); 2177 dasm_put(Dst, 13842, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL);
2178 if (op == BC_JFUNCV) { 2178 if (op == BC_JFUNCV) {
2179 dasm_put(Dst, 13809, BC_JLOOP); 2179 dasm_put(Dst, 13811, BC_JLOOP);
2180 } else { 2180 } else {
2181 dasm_put(Dst, 13937, -4+PC2PROTO(k)); 2181 dasm_put(Dst, 13939, -4+PC2PROTO(k));
2182 } 2182 }
2183 dasm_put(Dst, 13962, LJ_TNIL); 2183 dasm_put(Dst, 13964, LJ_TNIL);
2184 break; 2184 break;
2185 2185
2186 case BC_FUNCC: 2186 case BC_FUNCC:
2187 case BC_FUNCCW: 2187 case BC_FUNCCW:
2188 dasm_put(Dst, 13984, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); 2188 dasm_put(Dst, 13986, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top));
2189 if (op == BC_FUNCC) { 2189 if (op == BC_FUNCC) {
2190 dasm_put(Dst, 14014); 2190 dasm_put(Dst, 14016);
2191 } else { 2191 } else {
2192 dasm_put(Dst, 14018); 2192 dasm_put(Dst, 14020);
2193 } 2193 }
2194 dasm_put(Dst, 14026, DISPATCH_GL(vmstate), ~LJ_VMST_C); 2194 dasm_put(Dst, 14028, DISPATCH_GL(vmstate), ~LJ_VMST_C);
2195 if (op == BC_FUNCC) { 2195 if (op == BC_FUNCC) {
2196 dasm_put(Dst, 14036); 2196 dasm_put(Dst, 14038);
2197 } else { 2197 } else {
2198 dasm_put(Dst, 14041, DISPATCH_GL(wrapf)); 2198 dasm_put(Dst, 14043, DISPATCH_GL(wrapf));
2199 } 2199 }
2200 dasm_put(Dst, 14047, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); 2200 dasm_put(Dst, 14049, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top));
2201 break; 2201 break;
2202 2202
2203 /* ---------------------------------------------------------------------- */ 2203 /* ---------------------------------------------------------------------- */
@@ -2225,7 +2225,7 @@ static int build_backend(BuildCtx *ctx)
2225 2225
2226 build_subroutines(ctx, cmov, sse); 2226 build_subroutines(ctx, cmov, sse);
2227 2227
2228 dasm_put(Dst, 14073); 2228 dasm_put(Dst, 14075);
2229 for (op = 0; op < BC__MAX; op++) 2229 for (op = 0; op < BC__MAX; op++)
2230 build_ins(ctx, (BCOp)op, op, cmov, sse); 2230 build_ins(ctx, (BCOp)op, op, cmov, sse);
2231 2231