summaryrefslogtreecommitdiff
path: root/src/buildvm_x64win.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/buildvm_x64win.h761
1 files changed, 382 insertions, 379 deletions
diff --git a/src/buildvm_x64win.h b/src/buildvm_x64win.h
index 772660d9..093b5fa0 100644
--- a/src/buildvm_x64win.h
+++ b/src/buildvm_x64win.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[13478] = { 15static const unsigned char build_actionlist[13494] = {
16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,72, 16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,72,
17 141,76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68, 17 141,76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,
18 36,84,252,247,198,237,15,132,244,13,248,14,252,247,198,237,15,132,244,10, 18 36,84,252,247,198,237,15,132,244,13,248,14,252,247,198,237,15,132,244,10,
@@ -354,71 +354,72 @@ static const unsigned char build_actionlist[13478] = {
354 149,233,139,133,233,41,208,193,232,3,131,192,1,72,139,108,36,32,85,195,248, 354 149,233,139,133,233,41,208,193,232,3,131,192,1,72,139,108,36,32,85,195,248,
355 136,255,15,182,131,233,168,235,15,133,244,251,168,235,15,133,244,247,168, 355 136,255,15,182,131,233,168,235,15,133,244,251,168,235,15,133,244,247,168,
356 235,15,132,244,247,252,255,139,233,252,233,244,247,255,248,137,15,182,131, 356 235,15,132,244,247,252,255,139,233,252,233,244,247,255,248,137,15,182,131,
357 233,168,235,15,133,244,251,168,235,15,132,244,251,252,255,139,233,15,132, 357 233,168,235,15,133,244,251,252,233,244,247,248,138,15,182,131,233,168,235,
358 244,247,168,235,15,132,244,251,248,1,139,108,36,96,137,149,233,137,252,242, 358 15,133,244,251,168,235,15,132,244,251,252,255,139,233,15,132,244,247,168,
359 137,252,233,232,251,1,20,248,3,139,149,233,248,4,15,182,78,252,253,248,5, 359 235,15,132,244,251,248,1,255,139,108,36,96,137,149,233,137,252,242,137,252,
360 255,15,182,110,252,252,15,183,70,252,254,252,255,164,253,252,235,233,248, 360 233,232,251,1,20,248,3,139,149,233,248,4,15,182,78,252,253,248,5,15,182,110,
361 138,131,198,4,139,77,232,137,76,36,84,252,233,244,4,248,139,255,204,255,248, 361 252,252,15,183,70,252,254,252,255,164,253,252,235,233,248,139,131,198,4,139,
362 140,255,72,199,131,233,0,0,0,0,252,233,244,247,255,248,141,255,72,137,171, 362 77,232,137,76,36,84,252,233,244,4,248,140,255,204,255,248,141,255,72,199,
363 233,248,1,255,141,68,194,252,248,139,108,36,96,137,149,233,137,133,233,137, 363 131,233,0,0,0,0,252,233,244,247,255,248,142,255,72,137,171,233,248,1,255,
364 252,242,137,252,233,137,116,36,100,232,251,1,21,199,68,36,100,0,0,0,0,139, 364 141,68,194,252,248,139,108,36,96,137,149,233,137,133,233,137,252,242,137,
365 149,233,72,137,193,139,133,233,41,208,72,137,205,15,182,78,252,253,193,232, 365 252,233,137,116,36,100,232,251,1,21,199,68,36,100,0,0,0,0,139,149,233,72,
366 3,131,192,1,252,255,229,248,142,255,248,143,255,139,122,252,248,139,191,233, 366 137,193,139,133,233,41,208,72,137,205,15,182,78,252,253,193,232,3,131,192,
367 139,191,233,199,131,233,0,0,0,0,199,131,233,237,139,6,15,182,204,15,182,232, 367 1,252,255,229,248,143,255,248,144,255,139,122,252,248,139,191,233,139,191,
368 131,198,4,193,232,16,252,255,36,252,235,255,248,82,255,217,124,36,4,137,68, 368 233,199,131,233,0,0,0,0,199,131,233,237,139,6,15,182,204,15,182,232,131,198,
369 36,8,102,184,0,4,102,11,68,36,4,102,37,252,255,252,247,102,137,68,36,6,217, 369 4,193,232,16,252,255,36,252,235,255,248,82,255,217,124,36,4,137,68,36,8,102,
370 108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,144,72,184,237, 370 184,0,4,102,11,68,36,4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,
371 237,102,72,15,110,208,72,184,237,237,102,72,15,110,216,15,40,200,102,15,84, 371 6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,145,72,184,237,237,102,
372 202,102,15,46,217,15,134,244,247,102,15,85,208,252,242,15,88,203,252,242, 372 72,15,110,208,72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,102,
373 15,92,203,102,15,86,202,72,184,237,237,102,72,15,110,208,252,242,15,194,193, 373 15,46,217,15,134,244,247,102,15,85,208,252,242,15,88,203,252,242,15,92,203,
374 1,102,15,84,194,252,242,15,92,200,15,40,193,248,1,195,248,84,255,217,124, 374 102,15,86,202,72,184,237,237,102,72,15,110,208,252,242,15,194,193,1,102,15,
375 36,4,137,68,36,8,102,184,0,8,102,11,68,36,4,102,37,252,255,252,251,102,137, 375 84,194,252,242,15,92,200,15,40,193,248,1,195,248,84,255,217,124,36,4,137,
376 68,36,6,217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,145, 376 68,36,8,102,184,0,8,102,11,68,36,4,102,37,252,255,252,251,102,137,68,36,6,
377 72,184,237,237,102,72,15,110,208,72,184,237,237,102,72,15,110,216,15,40,200,
378 102,15,84,202,102,15,46,217,15,134,244,247,102,15,85,208,252,242,15,88,203,
379 252,242,15,92,203,102,15,86,202,72,184,237,237,102,72,15,110,208,252,242,
380 15,194,193,6,102,15,84,194,252,242,15,92,200,15,40,193,248,1,195,248,104,
381 255,217,124,36,4,137,68,36,8,102,184,0,12,102,11,68,36,4,102,137,68,36,6,
382 217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,146,72,184, 377 217,108,36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,146,72,184,
383 237,237,102,72,15,110,208,72,184,237,237,102,72,15,110,216,15,40,200,102, 378 237,237,102,72,15,110,208,72,184,237,237,102,72,15,110,216,15,40,200,102,
384 15,84,202,102,15,46,217,15,134,244,247,102,15,85,208,15,40,193,252,242,15, 379 15,84,202,102,15,46,217,15,134,244,247,102,15,85,208,252,242,15,88,203,252,
385 88,203,252,242,15,92,203,72,184,237,237,102,72,15,110,216,252,242,15,194, 380 242,15,92,203,102,15,86,202,72,184,237,237,102,72,15,110,208,252,242,15,194,
386 193,1,102,15,84,195,252,242,15,92,200,102,15,86,202,15,40,193,248,1,195,248, 381 193,6,102,15,84,194,252,242,15,92,200,15,40,193,248,1,195,248,104,255,217,
387 147,255,15,40,232,252,242,15,94,193,72,184,237,237,102,72,15,110,208,72,184, 382 124,36,4,137,68,36,8,102,184,0,12,102,11,68,36,4,102,137,68,36,6,217,108,
388 237,237,102,72,15,110,216,15,40,224,102,15,84,226,102,15,46,220,15,134,244, 383 36,6,217,252,252,217,108,36,4,139,68,36,8,195,255,248,147,72,184,237,237,
389 247,102,15,85,208,252,242,15,88,227,252,242,15,92,227,102,15,86,226,72,184, 384 102,72,15,110,208,72,184,237,237,102,72,15,110,216,15,40,200,102,15,84,202,
390 237,237,102,72,15,110,208,252,242,15,194,196,1,102,15,84,194,252,242,15,92, 385 102,15,46,217,15,134,244,247,102,15,85,208,15,40,193,252,242,15,88,203,252,
391 224,15,40,197,252,242,15,89,204,252,242,15,92,193,195,248,1,252,242,15,89, 386 242,15,92,203,72,184,237,237,102,72,15,110,216,252,242,15,194,193,1,102,15,
392 200,15,40,197,252,242,15,92,193,195,255,217,193,216,252,241,217,124,36,4, 387 84,195,252,242,15,92,200,102,15,86,202,15,40,193,248,1,195,248,148,255,15,
393 102,184,0,4,102,11,68,36,4,102,37,252,255,252,247,102,137,68,36,6,217,108, 388 40,232,252,242,15,94,193,72,184,237,237,102,72,15,110,208,72,184,237,237,
394 36,6,217,252,252,217,108,36,4,222,201,222,252,233,195,255,248,88,217,252, 389 102,72,15,110,216,15,40,224,102,15,84,226,102,15,46,220,15,134,244,247,102,
395 234,222,201,248,148,217,84,36,8,129,124,36,8,0,0,128,127,15,132,244,247,129, 390 15,85,208,252,242,15,88,227,252,242,15,92,227,102,15,86,226,72,184,237,237,
396 124,36,8,0,0,128,252,255,15,132,244,248,248,149,217,192,217,252,252,220,252, 391 102,72,15,110,208,252,242,15,194,196,1,102,15,84,194,252,242,15,92,224,15,
397 233,217,201,217,252,240,217,232,222,193,217,252,253,221,217,248,1,195,248, 392 40,197,252,242,15,89,204,252,242,15,92,193,195,248,1,252,242,15,89,200,15,
398 2,221,216,217,252,238,195,255,248,107,255,248,150,252,242,15,45,193,252,242, 393 40,197,252,242,15,92,193,195,255,217,193,216,252,241,217,124,36,4,102,184,
399 15,42,208,102,15,46,202,15,133,244,254,15,138,244,255,248,151,131,252,248, 394 0,4,102,11,68,36,4,102,37,252,255,252,247,102,137,68,36,6,217,108,36,6,217,
400 1,15,142,244,252,248,1,169,1,0,0,0,15,133,244,248,252,242,15,89,192,209,232, 395 252,252,217,108,36,4,222,201,222,252,233,195,255,248,88,217,252,234,222,201,
401 252,233,244,1,248,2,209,232,15,132,244,251,15,40,200,248,3,252,242,15,89, 396 248,149,217,84,36,8,129,124,36,8,0,0,128,127,15,132,244,247,129,124,36,8,
402 192,209,232,15,132,244,250,15,131,244,3,255,252,242,15,89,200,252,233,244, 397 0,0,128,252,255,15,132,244,248,248,150,217,192,217,252,252,220,252,233,217,
403 3,248,4,252,242,15,89,193,248,5,195,248,6,15,132,244,5,15,130,244,253,80, 398 201,217,252,240,217,232,222,193,217,252,253,221,217,248,1,195,248,2,221,216,
404 72,184,237,237,102,72,15,110,200,252,242,15,94,200,88,15,40,193,252,247,216, 399 217,252,238,195,255,248,107,255,248,151,252,242,15,45,193,252,242,15,42,208,
405 131,252,248,1,15,132,244,5,252,233,244,1,248,7,72,184,237,237,102,72,15,110, 400 102,15,46,202,15,133,244,254,15,138,244,255,248,152,131,252,248,1,15,142,
406 192,195,248,8,102,72,15,126,200,72,209,224,72,193,192,12,72,61,252,254,15, 401 244,252,248,1,169,1,0,0,0,15,133,244,248,252,242,15,89,192,209,232,252,233,
407 0,0,15,132,244,248,255,102,72,15,126,192,72,209,224,15,132,244,250,72,193, 402 244,1,248,2,209,232,15,132,244,251,15,40,200,248,3,252,242,15,89,192,209,
408 192,12,72,61,252,254,15,0,0,15,132,244,251,252,242,15,17,76,36,16,252,242, 403 232,15,132,244,250,15,131,244,3,255,252,242,15,89,200,252,233,244,3,248,4,
409 15,17,68,36,8,221,68,36,16,221,68,36,8,217,252,241,217,192,217,252,252,220, 404 252,242,15,89,193,248,5,195,248,6,15,132,244,5,15,130,244,253,80,72,184,237,
410 252,233,217,201,217,252,240,217,232,222,193,217,252,253,221,217,221,92,36, 405 237,102,72,15,110,200,252,242,15,94,200,88,15,40,193,252,247,216,131,252,
411 8,252,242,15,16,68,36,8,195,248,9,72,184,237,237,102,72,15,110,208,102,15, 406 248,1,15,132,244,5,252,233,244,1,248,7,72,184,237,237,102,72,15,110,192,195,
412 46,194,15,132,244,247,15,40,193,248,1,195,248,2,72,184,237,237,102,72,15, 407 248,8,102,72,15,126,200,72,209,224,72,193,192,12,72,61,252,254,15,0,0,15,
413 110,208,102,15,84,194,72,184,237,237,102,72,15,110,208,102,15,46,194,15,132, 408 132,244,248,255,102,72,15,126,192,72,209,224,15,132,244,250,72,193,192,12,
414 244,1,102,15,80,193,15,87,192,136,196,15,146,208,48,224,15,133,244,1,248, 409 72,61,252,254,15,0,0,15,132,244,251,252,242,15,17,76,36,16,252,242,15,17,
415 3,72,184,237,237,255,102,72,15,110,192,195,248,4,102,15,80,193,133,192,15, 410 68,36,8,221,68,36,16,221,68,36,8,217,252,241,217,192,217,252,252,220,252,
416 133,244,3,15,87,192,195,248,5,102,15,80,193,133,192,15,132,244,3,15,87,192, 411 233,217,201,217,252,240,217,232,222,193,217,252,253,221,217,221,92,36,8,252,
417 195,248,152,255,131,252,250,1,15,130,244,82,15,132,244,84,131,252,250,3,15, 412 242,15,16,68,36,8,195,248,9,72,184,237,237,102,72,15,110,208,102,15,46,194,
418 130,244,104,15,135,244,248,252,242,15,81,192,195,248,2,252,242,15,17,68,36, 413 15,132,244,247,15,40,193,248,1,195,248,2,72,184,237,237,102,72,15,110,208,
419 8,221,68,36,8,131,252,250,5,15,135,244,248,88,15,132,244,247,232,244,88,80, 414 102,15,84,194,72,184,237,237,102,72,15,110,208,102,15,46,194,15,132,244,1,
420 252,233,244,253,248,1,232,244,148,255,80,252,233,244,253,248,2,131,252,250, 415 102,15,80,193,15,87,192,136,196,15,146,208,48,224,15,133,244,1,248,3,72,184,
421 7,15,132,244,247,15,135,244,248,217,252,237,217,201,217,252,241,252,233,244, 416 237,237,255,102,72,15,110,192,195,248,4,102,15,80,193,133,192,15,133,244,
417 3,15,87,192,195,248,5,102,15,80,193,133,192,15,132,244,3,15,87,192,195,248,
418 153,255,131,252,250,1,15,130,244,82,15,132,244,84,131,252,250,3,15,130,244,
419 104,15,135,244,248,252,242,15,81,192,195,248,2,252,242,15,17,68,36,8,221,
420 68,36,8,131,252,250,5,15,135,244,248,88,15,132,244,247,232,244,88,80,252,
421 233,244,253,248,1,232,244,149,255,80,252,233,244,253,248,2,131,252,250,7,
422 15,132,244,247,15,135,244,248,217,252,237,217,201,217,252,241,252,233,244,
422 253,248,1,217,232,217,201,217,252,241,252,233,244,253,248,2,131,252,250,9, 423 253,248,1,217,232,217,201,217,252,241,252,233,244,253,248,2,131,252,250,9,
423 15,132,244,247,15,135,244,248,217,252,236,217,201,217,252,241,252,233,244, 424 15,132,244,247,15,135,244,248,217,252,236,217,201,217,252,241,252,233,244,
424 253,248,1,255,217,252,254,252,233,244,253,248,2,131,252,250,11,15,132,244, 425 253,248,1,255,217,252,254,252,233,244,253,248,2,131,252,250,11,15,132,244,
@@ -426,14 +427,14 @@ static const unsigned char build_actionlist[13478] = {
426 248,7,221,92,36,8,252,242,15,16,68,36,8,195,255,139,84,36,12,221,68,36,4, 427 248,7,221,92,36,8,252,242,15,16,68,36,8,195,255,139,84,36,12,221,68,36,4,
427 131,252,250,1,15,130,244,82,15,132,244,84,131,252,250,3,15,130,244,104,15, 428 131,252,250,1,15,130,244,82,15,132,244,84,131,252,250,3,15,130,244,104,15,
428 135,244,248,217,252,250,195,248,2,131,252,250,5,15,130,244,88,15,132,244, 429 135,244,248,217,252,250,195,248,2,131,252,250,5,15,130,244,88,15,132,244,
429 148,131,252,250,7,15,132,244,247,15,135,244,248,217,252,237,217,201,217,252, 430 149,131,252,250,7,15,132,244,247,15,135,244,248,217,252,237,217,201,217,252,
430 241,195,248,1,217,232,217,201,217,252,241,195,248,2,131,252,250,9,15,132, 431 241,195,248,1,217,232,217,201,217,252,241,195,248,2,131,252,250,9,15,132,
431 244,247,255,15,135,244,248,217,252,236,217,201,217,252,241,195,248,1,217, 432 244,247,255,15,135,244,248,217,252,236,217,201,217,252,241,195,248,1,217,
432 252,254,195,248,2,131,252,250,11,15,132,244,247,15,135,244,255,217,252,255, 433 252,254,195,248,2,131,252,250,11,15,132,244,247,15,135,244,255,217,252,255,
433 195,248,1,217,252,242,221,216,195,255,248,9,204,248,153,255,65,131,252,248, 434 195,248,1,217,252,242,221,216,195,255,248,9,204,248,154,255,65,131,252,248,
434 1,15,132,244,247,15,135,244,248,252,242,15,88,193,195,248,1,252,242,15,92, 435 1,15,132,244,247,15,135,244,248,252,242,15,88,193,195,248,1,252,242,15,92,
435 193,195,248,2,65,131,252,248,3,15,132,244,247,15,135,244,248,252,242,15,89, 436 193,195,248,2,65,131,252,248,3,15,132,244,247,15,135,244,248,252,242,15,89,
436 193,195,248,1,252,242,15,94,193,195,248,2,65,131,252,248,5,15,130,244,147, 437 193,195,248,1,252,242,15,94,193,195,248,2,65,131,252,248,5,15,130,244,148,
437 15,132,244,107,65,131,252,248,7,15,132,244,247,15,135,244,248,72,184,237, 438 15,132,244,107,65,131,252,248,7,15,132,244,247,15,135,244,248,72,184,237,
438 237,255,102,72,15,110,200,15,87,193,195,248,1,72,184,237,237,102,72,15,110, 439 237,255,102,72,15,110,200,15,87,193,195,248,1,72,184,237,237,102,72,15,110,
439 200,15,84,193,195,248,2,65,131,252,248,9,15,135,244,248,252,242,15,17,68, 440 200,15,84,193,195,248,2,65,131,252,248,9,15,135,244,248,252,242,15,17,68,
@@ -443,14 +444,14 @@ static const unsigned char build_actionlist[13478] = {
443 252,242,15,93,193,195,248,1,252,242,15,95,193,195,248,9,204,255,139,68,36, 444 252,242,15,93,193,195,248,1,252,242,15,95,193,195,248,9,204,255,139,68,36,
444 20,221,68,36,4,221,68,36,12,131,252,248,1,15,132,244,247,15,135,244,248,222, 445 20,221,68,36,4,221,68,36,12,131,252,248,1,15,132,244,247,15,135,244,248,222,
445 193,195,248,1,222,252,233,195,248,2,131,252,248,3,15,132,244,247,15,135,244, 446 193,195,248,1,222,252,233,195,248,2,131,252,248,3,15,132,244,247,15,135,244,
446 248,222,201,195,248,1,222,252,249,195,248,2,131,252,248,5,15,130,244,147, 447 248,222,201,195,248,1,222,252,249,195,248,2,131,252,248,5,15,130,244,148,
447 15,132,244,107,131,252,248,7,15,132,244,247,15,135,244,248,255,221,216,217, 448 15,132,244,107,131,252,248,7,15,132,244,247,15,135,244,248,255,221,216,217,
448 224,195,248,1,221,216,217,225,195,248,2,131,252,248,9,15,132,244,247,15,135, 449 224,195,248,1,221,216,217,225,195,248,2,131,252,248,9,15,132,244,247,15,135,
449 244,248,217,252,243,195,248,1,217,201,217,252,253,221,217,195,248,2,131,252, 450 244,248,217,252,243,195,248,1,217,201,217,252,253,221,217,195,248,2,131,252,
450 248,11,15,132,244,247,15,135,244,255,255,219,252,233,219,209,221,217,195, 451 248,11,15,132,244,247,15,135,244,255,255,219,252,233,219,209,221,217,195,
451 248,1,219,252,233,218,209,221,217,195,255,221,225,223,224,252,246,196,1,15, 452 248,1,219,252,233,218,209,221,217,195,255,221,225,223,224,252,246,196,1,15,
452 132,244,248,217,201,248,2,221,216,195,248,1,221,225,223,224,252,246,196,1, 453 132,244,248,217,201,248,2,221,216,195,248,1,221,225,223,224,252,246,196,1,
453 15,133,244,248,217,201,248,2,221,216,195,255,248,154,137,200,86,72,137,214, 454 15,133,244,248,217,201,248,2,221,216,195,255,248,155,137,200,86,72,137,214,
454 83,15,162,137,6,137,94,4,137,78,8,137,86,12,91,94,195,255,249,255,129,124, 455 83,15,162,137,6,137,94,4,137,78,8,137,86,12,91,94,195,255,249,255,129,124,
455 253,202,4,239,15,135,244,41,129,124,253,194,4,239,15,135,244,41,255,252,242, 456 253,202,4,239,15,135,244,41,129,124,253,194,4,239,15,135,244,41,255,252,242,
456 15,16,4,194,131,198,4,102,15,46,4,202,255,221,4,202,221,4,194,131,198,4,255, 457 15,16,4,194,131,198,4,102,15,46,4,202,255,221,4,202,221,4,194,131,198,4,255,
@@ -499,8 +500,8 @@ static const unsigned char build_actionlist[13478] = {
499 234,252,242,15,94,4,194,255,221,4,252,234,220,52,194,255,252,242,15,16,4, 500 234,252,242,15,94,4,194,255,221,4,252,234,220,52,194,255,252,242,15,16,4,
500 252,234,252,242,15,16,12,199,255,221,4,252,234,221,4,199,255,252,242,15,16, 501 252,234,252,242,15,16,12,199,255,221,4,252,234,221,4,199,255,252,242,15,16,
501 4,199,252,242,15,16,12,252,234,255,221,4,199,221,4,252,234,255,252,242,15, 502 4,199,252,242,15,16,12,252,234,255,221,4,199,221,4,252,234,255,252,242,15,
502 16,4,252,234,252,242,15,16,12,194,255,221,4,252,234,221,4,194,255,248,155, 503 16,4,252,234,252,242,15,16,12,194,255,221,4,252,234,221,4,194,255,248,156,
503 232,244,147,255,252,233,244,155,255,232,244,107,255,15,182,252,236,15,182, 504 232,244,148,255,252,233,244,156,255,232,244,107,255,15,182,252,236,15,182,
504 192,139,76,36,96,137,145,233,141,20,194,65,137,192,65,41,232,248,33,137,205, 505 192,139,76,36,96,137,145,233,141,20,194,65,137,192,65,41,232,248,33,137,205,
505 137,116,36,100,232,251,1,22,139,149,233,133,192,15,133,244,42,15,182,110, 506 137,116,36,100,232,251,1,22,139,149,233,133,192,15,133,244,42,15,182,110,
506 252,255,15,182,78,252,253,139,68,252,234,4,139,44,252,234,137,68,202,4,137, 507 252,255,15,182,78,252,253,139,68,252,234,4,139,44,252,234,137,68,202,4,137,
@@ -544,8 +545,8 @@ static const unsigned char build_actionlist[13478] = {
544 28,139,149,233,15,182,78,252,253,137,4,202,199,68,202,4,237,139,6,15,182, 545 28,139,149,233,15,182,78,252,253,137,4,202,199,68,202,4,237,139,6,15,182,
545 204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,3,137,252,233, 546 204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,3,137,252,233,
546 232,251,1,27,15,183,70,252,254,72,252,247,208,252,233,244,2,255,72,252,247, 547 232,251,1,27,15,183,70,252,254,72,252,247,208,252,233,244,2,255,72,252,247,
547 208,139,106,252,248,139,173,233,139,4,135,252,233,244,156,255,72,252,247, 548 208,139,106,252,248,139,173,233,139,4,135,252,233,244,157,255,72,252,247,
548 208,139,106,252,248,139,173,233,139,4,135,252,233,244,157,255,15,182,252, 549 208,139,106,252,248,139,173,233,139,4,135,252,233,244,158,255,15,182,252,
549 236,15,182,192,129,124,253,252,234,4,239,15,133,244,36,139,44,252,234,129, 550 236,15,182,192,129,124,253,252,234,4,239,15,133,244,36,139,44,252,234,129,
550 124,253,194,4,239,15,135,244,251,255,252,242,15,16,4,194,252,242,15,45,192, 551 124,253,194,4,239,15,135,244,251,255,252,242,15,16,4,194,252,242,15,45,192,
551 252,242,15,42,200,102,15,46,193,255,15,133,244,36,59,133,233,15,131,244,36, 552 252,242,15,42,200,102,15,46,193,255,15,133,244,36,59,133,233,15,131,244,36,
@@ -553,9 +554,9 @@ static const unsigned char build_actionlist[13478] = {
553 4,137,44,202,137,68,202,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16, 554 4,137,44,202,137,68,202,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16,
554 252,255,36,252,235,248,2,131,189,233,0,15,132,244,1,139,141,233,252,246,129, 555 252,255,36,252,235,248,2,131,189,233,0,15,132,244,1,139,141,233,252,246,129,
555 233,235,15,132,244,36,15,182,78,252,253,252,233,244,1,248,5,255,129,124,253, 556 233,235,15,132,244,36,15,182,78,252,253,252,233,244,1,248,5,255,129,124,253,
556 194,4,239,15,133,244,36,139,4,194,252,233,244,156,255,15,182,252,236,15,182, 557 194,4,239,15,133,244,36,139,4,194,252,233,244,157,255,15,182,252,236,15,182,
557 192,72,252,247,208,139,4,135,129,124,253,252,234,4,239,15,133,244,34,139, 558 192,72,252,247,208,139,4,135,129,124,253,252,234,4,239,15,133,244,34,139,
558 44,252,234,248,156,139,141,233,35,136,233,105,201,239,3,141,233,248,1,129, 559 44,252,234,248,157,139,141,233,35,136,233,105,201,239,3,141,233,248,1,129,
559 185,233,239,15,133,244,250,57,129,233,15,133,244,250,129,121,253,4,239,15, 560 185,233,239,15,133,244,250,57,129,233,15,133,244,250,129,121,253,4,239,15,
560 132,244,251,15,182,70,252,253,139,41,139,73,4,137,44,194,248,2,255,137,76, 561 132,244,251,15,182,70,252,253,139,41,139,73,4,137,44,194,248,2,255,137,76,
561 194,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235, 562 194,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,
@@ -573,10 +574,10 @@ static const unsigned char build_actionlist[13478] = {
573 137,104,4,137,8,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, 574 137,104,4,137,8,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,
574 36,252,235,248,3,131,189,233,0,15,132,244,1,139,141,233,255,252,246,129,233, 575 36,252,235,248,3,131,189,233,0,15,132,244,1,139,141,233,255,252,246,129,233,
575 235,15,132,244,39,15,182,78,252,253,252,233,244,1,248,5,129,124,253,194,4, 576 235,15,132,244,39,15,182,78,252,253,252,233,244,1,248,5,129,124,253,194,4,
576 239,15,133,244,39,139,4,194,252,233,244,157,248,7,128,165,233,235,139,139, 577 239,15,133,244,39,139,4,194,252,233,244,158,248,7,128,165,233,235,139,139,
577 233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,2,255,15,182,252, 578 233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,2,255,15,182,252,
578 236,15,182,192,72,252,247,208,139,4,135,129,124,253,252,234,4,239,15,133, 579 236,15,182,192,72,252,247,208,139,4,135,129,124,253,252,234,4,239,15,133,
579 244,37,139,44,252,234,248,157,139,141,233,35,136,233,105,201,239,198,133, 580 244,37,139,44,252,234,248,158,139,141,233,35,136,233,105,201,239,198,133,
580 233,0,3,141,233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133,244, 581 233,0,3,141,233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133,244,
581 251,129,121,253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15,133, 582 251,129,121,253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15,133,
582 244,253,248,3,15,182,70,252,253,139,108,194,4,139,4,194,137,105,4,137,1,139, 583 244,253,248,3,15,182,70,252,253,139,108,194,4,139,4,194,137,105,4,137,1,139,
@@ -639,7 +640,7 @@ static const unsigned char build_actionlist[13478] = {
639 198,4,193,232,16,252,255,36,252,235,248,6,255,199,71,252,252,237,131,199, 640 198,4,193,232,16,252,255,36,252,235,248,6,255,199,71,252,252,237,131,199,
640 8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248,7,15,139,244, 641 8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248,7,15,139,244,
641 14,131,230,252,248,41,252,242,255,1,252,241,255,137,252,245,209,252,237,129, 642 14,131,230,252,248,41,252,242,255,1,252,241,255,137,252,245,209,252,237,129,
642 229,239,102,131,172,253,43,233,1,15,132,244,139,255,141,12,202,255,129,121, 643 229,239,102,131,172,253,43,233,1,15,132,244,140,255,141,12,202,255,129,121,
643 253,4,239,15,135,244,53,129,121,253,12,239,15,135,244,53,255,139,105,20,255, 644 253,4,239,15,135,244,53,129,121,253,12,239,15,135,244,53,255,139,105,20,255,
644 129,252,253,239,15,135,244,53,255,252,242,15,16,1,252,242,15,16,73,8,255, 645 129,252,253,239,15,135,244,53,255,252,242,15,16,1,252,242,15,16,73,8,255,
645 252,242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244,249,255,15,140, 646 252,242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244,249,255,15,140,
@@ -797,7 +798,8 @@ enum {
797 GLOB_ff_bit_rol, 798 GLOB_ff_bit_rol,
798 GLOB_ff_bit_ror, 799 GLOB_ff_bit_ror,
799 GLOB_vm_record, 800 GLOB_vm_record,
800 GLOB_vm_hook, 801 GLOB_vm_rethook,
802 GLOB_vm_inshook,
801 GLOB_cont_hook, 803 GLOB_cont_hook,
802 GLOB_vm_hotloop, 804 GLOB_vm_hotloop,
803 GLOB_vm_callhook, 805 GLOB_vm_callhook,
@@ -948,7 +950,8 @@ static const char *const globnames[] = {
948 "ff_bit_rol", 950 "ff_bit_rol",
949 "ff_bit_ror", 951 "ff_bit_ror",
950 "vm_record", 952 "vm_record",
951 "vm_hook", 953 "vm_rethook",
954 "vm_inshook",
952 "cont_hook", 955 "cont_hook",
953 "vm_hotloop", 956 "vm_hotloop",
954 "vm_callhook", 957 "vm_callhook",
@@ -1315,84 +1318,84 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1315#if LJ_HASJIT 1318#if LJ_HASJIT
1316 dasm_put(Dst, 6968, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount)); 1319 dasm_put(Dst, 6968, DISPATCH_GL(hookmask), HOOK_VMEVENT, HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount));
1317#endif 1320#endif
1318 dasm_put(Dst, 6999, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE, Dt1(->base), Dt1(->base)); 1321 dasm_put(Dst, 6999, DISPATCH_GL(hookmask), HOOK_ACTIVE, DISPATCH_GL(hookmask), HOOK_ACTIVE, LUA_MASKLINE|LUA_MASKCOUNT, DISPATCH_GL(hookcount), LUA_MASKLINE);
1319 dasm_put(Dst, 7065, GG_DISP2STATIC); 1322 dasm_put(Dst, 7050, Dt1(->base), Dt1(->base), GG_DISP2STATIC);
1320#if LJ_HASJIT 1323#if LJ_HASJIT
1321 dasm_put(Dst, 7101); 1324 dasm_put(Dst, 7117);
1322#endif
1323 dasm_put(Dst, 7103);
1324#if LJ_HASJIT
1325 dasm_put(Dst, 7106, DISPATCH_J(L));
1326#endif 1325#endif
1327 dasm_put(Dst, 7119); 1326 dasm_put(Dst, 7119);
1328#if LJ_HASJIT 1327#if LJ_HASJIT
1329 dasm_put(Dst, 7122, DISPATCH_J(L)); 1328 dasm_put(Dst, 7122, DISPATCH_J(L));
1330#endif 1329#endif
1331 dasm_put(Dst, 7129, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 1330 dasm_put(Dst, 7135);
1332#if LJ_HASJIT 1331#if LJ_HASJIT
1333 dasm_put(Dst, 7101); 1332 dasm_put(Dst, 7138, DISPATCH_J(L));
1334#endif 1333#endif
1335 dasm_put(Dst, 7197); 1334 dasm_put(Dst, 7145, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
1336#if LJ_HASJIT 1335#if LJ_HASJIT
1337 dasm_put(Dst, 7200, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP); 1336 dasm_put(Dst, 7117);
1338#endif 1337#endif
1339 dasm_put(Dst, 7241); 1338 dasm_put(Dst, 7213);
1339#if LJ_HASJIT
1340 dasm_put(Dst, 7216, Dt7(->pc), PC2PROTO(k), DISPATCH_GL(jit_L), DISPATCH_GL(vmstate), ~LJ_VMST_INTERP);
1341#endif
1342 dasm_put(Dst, 7257);
1340 if (!sse) { 1343 if (!sse) {
1341 dasm_put(Dst, 7244); 1344 dasm_put(Dst, 7260);
1342 } 1345 }
1343 dasm_put(Dst, 7289, (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)); 1346 dasm_put(Dst, 7305, (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));
1344 if (!sse) { 1347 if (!sse) {
1345 dasm_put(Dst, 7375); 1348 dasm_put(Dst, 7391);
1346 } 1349 }
1347 dasm_put(Dst, 7420, (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)); 1350 dasm_put(Dst, 7436, (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));
1348 if (!sse) { 1351 if (!sse) {
1349 dasm_put(Dst, 7506); 1352 dasm_put(Dst, 7522);
1350 } 1353 }
1351 dasm_put(Dst, 7545, (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)); 1354 dasm_put(Dst, 7561, (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));
1352 if (sse) { 1355 if (sse) {
1353 dasm_put(Dst, 7634, (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)); 1356 dasm_put(Dst, 7650, (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));
1354 } else { 1357 } else {
1355 dasm_put(Dst, 7748); 1358 dasm_put(Dst, 7764);
1356 } 1359 }
1357 dasm_put(Dst, 7795); 1360 dasm_put(Dst, 7811);
1358 if (!sse) { 1361 if (!sse) {
1359 } else { 1362 } else {
1360 dasm_put(Dst, 7869); 1363 dasm_put(Dst, 7885);
1361 } 1364 }
1362 dasm_put(Dst, 7872); 1365 dasm_put(Dst, 7888);
1363 dasm_put(Dst, 7957, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32)); 1366 dasm_put(Dst, 7973, (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32), (unsigned int)(U64x(3ff00000,00000000)), (unsigned int)((U64x(3ff00000,00000000))>>32));
1364 dasm_put(Dst, 8058, (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)); 1367 dasm_put(Dst, 8074, (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));
1365 dasm_put(Dst, 8226); 1368 dasm_put(Dst, 8242);
1366 if (sse) { 1369 if (sse) {
1367 dasm_put(Dst, 8267); 1370 dasm_put(Dst, 8283);
1368 dasm_put(Dst, 8337); 1371 dasm_put(Dst, 8353);
1369 dasm_put(Dst, 8410); 1372 dasm_put(Dst, 8426);
1370 } else { 1373 } else {
1371 dasm_put(Dst, 8460); 1374 dasm_put(Dst, 8476);
1372 dasm_put(Dst, 8552); 1375 dasm_put(Dst, 8568);
1373 } 1376 }
1374 dasm_put(Dst, 8598); 1377 dasm_put(Dst, 8614);
1375 if (sse) { 1378 if (sse) {
1376 dasm_put(Dst, 8604, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1379 dasm_put(Dst, 8620, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1377 dasm_put(Dst, 8693, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32)); 1380 dasm_put(Dst, 8709, (unsigned int)(U64x(7fffffff,ffffffff)), (unsigned int)((U64x(7fffffff,ffffffff))>>32));
1378 } else { 1381 } else {
1379 dasm_put(Dst, 8817); 1382 dasm_put(Dst, 8833);
1380 dasm_put(Dst, 8900); 1383 dasm_put(Dst, 8916);
1381 if (cmov) { 1384 if (cmov) {
1382 dasm_put(Dst, 8955); 1385 dasm_put(Dst, 8971);
1383 } else { 1386 } else {
1384 dasm_put(Dst, 8974); 1387 dasm_put(Dst, 8990);
1385 } 1388 }
1386 dasm_put(Dst, 8813); 1389 dasm_put(Dst, 8829);
1387 } 1390 }
1388 dasm_put(Dst, 9015); 1391 dasm_put(Dst, 9031);
1389} 1392}
1390 1393
1391/* Generate the code for a single instruction. */ 1394/* Generate the code for a single instruction. */
1392static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) 1395static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1393{ 1396{
1394 int vk = 0; 1397 int vk = 0;
1395 dasm_put(Dst, 9041, defop); 1398 dasm_put(Dst, 9057, defop);
1396 1399
1397 switch (op) { 1400 switch (op) {
1398 1401
@@ -1401,600 +1404,600 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1401 /* Remember: all ops branch for a true comparison, fall through otherwise. */ 1404 /* Remember: all ops branch for a true comparison, fall through otherwise. */
1402 1405
1403 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 1406 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
1404 dasm_put(Dst, 9043, LJ_TISNUM, LJ_TISNUM); 1407 dasm_put(Dst, 9059, LJ_TISNUM, LJ_TISNUM);
1405 if (sse) { 1408 if (sse) {
1406 dasm_put(Dst, 9064); 1409 dasm_put(Dst, 9080);
1407 } else { 1410 } else {
1408 dasm_put(Dst, 9079); 1411 dasm_put(Dst, 9095);
1409 if (cmov) { 1412 if (cmov) {
1410 dasm_put(Dst, 9089); 1413 dasm_put(Dst, 9105);
1411 } else { 1414 } else {
1412 dasm_put(Dst, 9095); 1415 dasm_put(Dst, 9111);
1413 } 1416 }
1414 } 1417 }
1415 switch (op) { 1418 switch (op) {
1416 case BC_ISLT: 1419 case BC_ISLT:
1417 dasm_put(Dst, 9102); 1420 dasm_put(Dst, 9118);
1418 break; 1421 break;
1419 case BC_ISGE: 1422 case BC_ISGE:
1420 dasm_put(Dst, 8895); 1423 dasm_put(Dst, 8911);
1421 break; 1424 break;
1422 case BC_ISLE: 1425 case BC_ISLE:
1423 dasm_put(Dst, 5872); 1426 dasm_put(Dst, 5872);
1424 break; 1427 break;
1425 case BC_ISGT: 1428 case BC_ISGT:
1426 dasm_put(Dst, 9107); 1429 dasm_put(Dst, 9123);
1427 break; 1430 break;
1428 default: break; /* Shut up GCC. */ 1431 default: break; /* Shut up GCC. */
1429 } 1432 }
1430 dasm_put(Dst, 9112, -BCBIAS_J*4); 1433 dasm_put(Dst, 9128, -BCBIAS_J*4);
1431 break; 1434 break;
1432 1435
1433 case BC_ISEQV: case BC_ISNEV: 1436 case BC_ISEQV: case BC_ISNEV:
1434 vk = op == BC_ISEQV; 1437 vk = op == BC_ISEQV;
1435 dasm_put(Dst, 9146, LJ_TISNUM, LJ_TISNUM); 1438 dasm_put(Dst, 9162, LJ_TISNUM, LJ_TISNUM);
1436 if (sse) { 1439 if (sse) {
1437 dasm_put(Dst, 9172); 1440 dasm_put(Dst, 9188);
1438 } else { 1441 } else {
1439 dasm_put(Dst, 9184); 1442 dasm_put(Dst, 9200);
1440 if (cmov) { 1443 if (cmov) {
1441 dasm_put(Dst, 9089); 1444 dasm_put(Dst, 9105);
1442 } else { 1445 } else {
1443 dasm_put(Dst, 9095); 1446 dasm_put(Dst, 9111);
1444 } 1447 }
1445 } 1448 }
1446 iseqne_fp: 1449 iseqne_fp:
1447 if (vk) { 1450 if (vk) {
1448 dasm_put(Dst, 9191); 1451 dasm_put(Dst, 9207);
1449 } else { 1452 } else {
1450 dasm_put(Dst, 9200); 1453 dasm_put(Dst, 9216);
1451 } 1454 }
1452 iseqne_end: 1455 iseqne_end:
1453 if (vk) { 1456 if (vk) {
1454 dasm_put(Dst, 9209, -BCBIAS_J*4); 1457 dasm_put(Dst, 9225, -BCBIAS_J*4);
1455 } else { 1458 } else {
1456 dasm_put(Dst, 9224, -BCBIAS_J*4); 1459 dasm_put(Dst, 9240, -BCBIAS_J*4);
1457 } 1460 }
1458 dasm_put(Dst, 7221); 1461 dasm_put(Dst, 7237);
1459 if (op == BC_ISEQV || op == BC_ISNEV) { 1462 if (op == BC_ISEQV || op == BC_ISNEV) {
1460 dasm_put(Dst, 9239, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq); 1463 dasm_put(Dst, 9255, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq);
1461 if (vk) { 1464 if (vk) {
1462 dasm_put(Dst, 9297); 1465 dasm_put(Dst, 9313);
1463 } else { 1466 } else {
1464 dasm_put(Dst, 9301); 1467 dasm_put(Dst, 9317);
1465 } 1468 }
1466 dasm_put(Dst, 9307); 1469 dasm_put(Dst, 9323);
1467 } 1470 }
1468 break; 1471 break;
1469 case BC_ISEQS: case BC_ISNES: 1472 case BC_ISEQS: case BC_ISNES:
1470 vk = op == BC_ISEQS; 1473 vk = op == BC_ISEQS;
1471 dasm_put(Dst, 9312, LJ_TSTR); 1474 dasm_put(Dst, 9328, LJ_TSTR);
1472 iseqne_test: 1475 iseqne_test:
1473 if (vk) { 1476 if (vk) {
1474 dasm_put(Dst, 9195); 1477 dasm_put(Dst, 9211);
1475 } else { 1478 } else {
1476 dasm_put(Dst, 2774); 1479 dasm_put(Dst, 2774);
1477 } 1480 }
1478 goto iseqne_end; 1481 goto iseqne_end;
1479 case BC_ISEQN: case BC_ISNEN: 1482 case BC_ISEQN: case BC_ISNEN:
1480 vk = op == BC_ISEQN; 1483 vk = op == BC_ISEQN;
1481 dasm_put(Dst, 9336, LJ_TISNUM); 1484 dasm_put(Dst, 9352, LJ_TISNUM);
1482 if (sse) { 1485 if (sse) {
1483 dasm_put(Dst, 9350); 1486 dasm_put(Dst, 9366);
1484 } else { 1487 } else {
1485 dasm_put(Dst, 9362); 1488 dasm_put(Dst, 9378);
1486 if (cmov) { 1489 if (cmov) {
1487 dasm_put(Dst, 9089); 1490 dasm_put(Dst, 9105);
1488 } else { 1491 } else {
1489 dasm_put(Dst, 9095); 1492 dasm_put(Dst, 9111);
1490 } 1493 }
1491 } 1494 }
1492 goto iseqne_fp; 1495 goto iseqne_fp;
1493 case BC_ISEQP: case BC_ISNEP: 1496 case BC_ISEQP: case BC_ISNEP:
1494 vk = op == BC_ISEQP; 1497 vk = op == BC_ISEQP;
1495 dasm_put(Dst, 9369); 1498 dasm_put(Dst, 9385);
1496 goto iseqne_test; 1499 goto iseqne_test;
1497 1500
1498 /* -- Unary test and copy ops ------------------------------------------- */ 1501 /* -- Unary test and copy ops ------------------------------------------- */
1499 1502
1500 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 1503 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
1501 dasm_put(Dst, 9381, LJ_TISTRUECOND); 1504 dasm_put(Dst, 9397, LJ_TISTRUECOND);
1502 if (op == BC_IST || op == BC_ISTC) { 1505 if (op == BC_IST || op == BC_ISTC) {
1503 dasm_put(Dst, 9393); 1506 dasm_put(Dst, 9409);
1504 } else { 1507 } else {
1505 dasm_put(Dst, 9398); 1508 dasm_put(Dst, 9414);
1506 } 1509 }
1507 if (op == BC_ISTC || op == BC_ISFC) { 1510 if (op == BC_ISTC || op == BC_ISFC) {
1508 dasm_put(Dst, 9403); 1511 dasm_put(Dst, 9419);
1509 } 1512 }
1510 dasm_put(Dst, 9414, -BCBIAS_J*4); 1513 dasm_put(Dst, 9430, -BCBIAS_J*4);
1511 break; 1514 break;
1512 1515
1513 /* -- Unary ops --------------------------------------------------------- */ 1516 /* -- Unary ops --------------------------------------------------------- */
1514 1517
1515 case BC_MOV: 1518 case BC_MOV:
1516 dasm_put(Dst, 9446); 1519 dasm_put(Dst, 9462);
1517 break; 1520 break;
1518 case BC_NOT: 1521 case BC_NOT:
1519 dasm_put(Dst, 9480, LJ_TISTRUECOND, LJ_TTRUE); 1522 dasm_put(Dst, 9496, LJ_TISTRUECOND, LJ_TTRUE);
1520 break; 1523 break;
1521 case BC_UNM: 1524 case BC_UNM:
1522 dasm_put(Dst, 9516, LJ_TISNUM); 1525 dasm_put(Dst, 9532, LJ_TISNUM);
1523 if (sse) { 1526 if (sse) {
1524 dasm_put(Dst, 9527, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); 1527 dasm_put(Dst, 9543, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32));
1525 } else { 1528 } else {
1526 dasm_put(Dst, 9552); 1529 dasm_put(Dst, 9568);
1527 } 1530 }
1528 dasm_put(Dst, 7221); 1531 dasm_put(Dst, 7237);
1529 break; 1532 break;
1530 case BC_LEN: 1533 case BC_LEN:
1531 dasm_put(Dst, 9561, LJ_TSTR); 1534 dasm_put(Dst, 9577, LJ_TSTR);
1532 if (sse) { 1535 if (sse) {
1533 dasm_put(Dst, 9575, Dt5(->len)); 1536 dasm_put(Dst, 9591, Dt5(->len));
1534 } else { 1537 } else {
1535 dasm_put(Dst, 9593, Dt5(->len)); 1538 dasm_put(Dst, 9609, Dt5(->len));
1536 } 1539 }
1537 dasm_put(Dst, 9602, LJ_TTAB); 1540 dasm_put(Dst, 9618, LJ_TTAB);
1538 if (sse) { 1541 if (sse) {
1539 dasm_put(Dst, 9643); 1542 dasm_put(Dst, 9659);
1540 } else { 1543 } else {
1541 } 1544 }
1542 dasm_put(Dst, 9652); 1545 dasm_put(Dst, 9668);
1543 break; 1546 break;
1544 1547
1545 /* -- Binary ops -------------------------------------------------------- */ 1548 /* -- Binary ops -------------------------------------------------------- */
1546 1549
1547 1550
1548 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: 1551 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV:
1549 dasm_put(Dst, 9662); 1552 dasm_put(Dst, 9678);
1550 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1553 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1551 switch (vk) { 1554 switch (vk) {
1552 case 0: 1555 case 0:
1553 dasm_put(Dst, 9670, LJ_TISNUM); 1556 dasm_put(Dst, 9686, LJ_TISNUM);
1554 if (sse) { 1557 if (sse) {
1555 dasm_put(Dst, 9682); 1558 dasm_put(Dst, 9698);
1556 } else { 1559 } else {
1557 dasm_put(Dst, 9696); 1560 dasm_put(Dst, 9712);
1558 } 1561 }
1559 break; 1562 break;
1560 case 1: 1563 case 1:
1561 dasm_put(Dst, 9704, LJ_TISNUM); 1564 dasm_put(Dst, 9720, LJ_TISNUM);
1562 if (sse) { 1565 if (sse) {
1563 dasm_put(Dst, 9716); 1566 dasm_put(Dst, 9732);
1564 } else { 1567 } else {
1565 dasm_put(Dst, 9730); 1568 dasm_put(Dst, 9746);
1566 } 1569 }
1567 break; 1570 break;
1568 default: 1571 default:
1569 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1572 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1570 if (sse) { 1573 if (sse) {
1571 dasm_put(Dst, 9760); 1574 dasm_put(Dst, 9776);
1572 } else { 1575 } else {
1573 dasm_put(Dst, 9774); 1576 dasm_put(Dst, 9790);
1574 } 1577 }
1575 break; 1578 break;
1576 } 1579 }
1577 if (sse) { 1580 if (sse) {
1578 dasm_put(Dst, 9545); 1581 dasm_put(Dst, 9561);
1579 } else { 1582 } else {
1580 dasm_put(Dst, 9557); 1583 dasm_put(Dst, 9573);
1581 } 1584 }
1582 dasm_put(Dst, 7221); 1585 dasm_put(Dst, 7237);
1583 break; 1586 break;
1584 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 1587 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
1585 dasm_put(Dst, 9662); 1588 dasm_put(Dst, 9678);
1586 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1589 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1587 switch (vk) { 1590 switch (vk) {
1588 case 0: 1591 case 0:
1589 dasm_put(Dst, 9670, LJ_TISNUM); 1592 dasm_put(Dst, 9686, LJ_TISNUM);
1590 if (sse) { 1593 if (sse) {
1591 dasm_put(Dst, 9782); 1594 dasm_put(Dst, 9798);
1592 } else { 1595 } else {
1593 dasm_put(Dst, 9796); 1596 dasm_put(Dst, 9812);
1594 } 1597 }
1595 break; 1598 break;
1596 case 1: 1599 case 1:
1597 dasm_put(Dst, 9704, LJ_TISNUM); 1600 dasm_put(Dst, 9720, LJ_TISNUM);
1598 if (sse) { 1601 if (sse) {
1599 dasm_put(Dst, 9804); 1602 dasm_put(Dst, 9820);
1600 } else { 1603 } else {
1601 dasm_put(Dst, 9818); 1604 dasm_put(Dst, 9834);
1602 } 1605 }
1603 break; 1606 break;
1604 default: 1607 default:
1605 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1608 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1606 if (sse) { 1609 if (sse) {
1607 dasm_put(Dst, 9826); 1610 dasm_put(Dst, 9842);
1608 } else { 1611 } else {
1609 dasm_put(Dst, 9840); 1612 dasm_put(Dst, 9856);
1610 } 1613 }
1611 break; 1614 break;
1612 } 1615 }
1613 if (sse) { 1616 if (sse) {
1614 dasm_put(Dst, 9545); 1617 dasm_put(Dst, 9561);
1615 } else { 1618 } else {
1616 dasm_put(Dst, 9557); 1619 dasm_put(Dst, 9573);
1617 } 1620 }
1618 dasm_put(Dst, 7221); 1621 dasm_put(Dst, 7237);
1619 break; 1622 break;
1620 case BC_MULVN: case BC_MULNV: case BC_MULVV: 1623 case BC_MULVN: case BC_MULNV: case BC_MULVV:
1621 dasm_put(Dst, 9662); 1624 dasm_put(Dst, 9678);
1622 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1625 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1623 switch (vk) { 1626 switch (vk) {
1624 case 0: 1627 case 0:
1625 dasm_put(Dst, 9670, LJ_TISNUM); 1628 dasm_put(Dst, 9686, LJ_TISNUM);
1626 if (sse) { 1629 if (sse) {
1627 dasm_put(Dst, 9848); 1630 dasm_put(Dst, 9864);
1628 } else { 1631 } else {
1629 dasm_put(Dst, 9862); 1632 dasm_put(Dst, 9878);
1630 } 1633 }
1631 break; 1634 break;
1632 case 1: 1635 case 1:
1633 dasm_put(Dst, 9704, LJ_TISNUM); 1636 dasm_put(Dst, 9720, LJ_TISNUM);
1634 if (sse) { 1637 if (sse) {
1635 dasm_put(Dst, 9870); 1638 dasm_put(Dst, 9886);
1636 } else { 1639 } else {
1637 dasm_put(Dst, 9884); 1640 dasm_put(Dst, 9900);
1638 } 1641 }
1639 break; 1642 break;
1640 default: 1643 default:
1641 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1644 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1642 if (sse) { 1645 if (sse) {
1643 dasm_put(Dst, 9892); 1646 dasm_put(Dst, 9908);
1644 } else { 1647 } else {
1645 dasm_put(Dst, 9906); 1648 dasm_put(Dst, 9922);
1646 } 1649 }
1647 break; 1650 break;
1648 } 1651 }
1649 if (sse) { 1652 if (sse) {
1650 dasm_put(Dst, 9545); 1653 dasm_put(Dst, 9561);
1651 } else { 1654 } else {
1652 dasm_put(Dst, 9557); 1655 dasm_put(Dst, 9573);
1653 } 1656 }
1654 dasm_put(Dst, 7221); 1657 dasm_put(Dst, 7237);
1655 break; 1658 break;
1656 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 1659 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
1657 dasm_put(Dst, 9662); 1660 dasm_put(Dst, 9678);
1658 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1661 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1659 switch (vk) { 1662 switch (vk) {
1660 case 0: 1663 case 0:
1661 dasm_put(Dst, 9670, LJ_TISNUM); 1664 dasm_put(Dst, 9686, LJ_TISNUM);
1662 if (sse) { 1665 if (sse) {
1663 dasm_put(Dst, 9914); 1666 dasm_put(Dst, 9930);
1664 } else { 1667 } else {
1665 dasm_put(Dst, 9928); 1668 dasm_put(Dst, 9944);
1666 } 1669 }
1667 break; 1670 break;
1668 case 1: 1671 case 1:
1669 dasm_put(Dst, 9704, LJ_TISNUM); 1672 dasm_put(Dst, 9720, LJ_TISNUM);
1670 if (sse) { 1673 if (sse) {
1671 dasm_put(Dst, 9936); 1674 dasm_put(Dst, 9952);
1672 } else { 1675 } else {
1673 dasm_put(Dst, 9950); 1676 dasm_put(Dst, 9966);
1674 } 1677 }
1675 break; 1678 break;
1676 default: 1679 default:
1677 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1680 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1678 if (sse) { 1681 if (sse) {
1679 dasm_put(Dst, 9958); 1682 dasm_put(Dst, 9974);
1680 } else { 1683 } else {
1681 dasm_put(Dst, 9972); 1684 dasm_put(Dst, 9988);
1682 } 1685 }
1683 break; 1686 break;
1684 } 1687 }
1685 if (sse) { 1688 if (sse) {
1686 dasm_put(Dst, 9545); 1689 dasm_put(Dst, 9561);
1687 } else { 1690 } else {
1688 dasm_put(Dst, 9557); 1691 dasm_put(Dst, 9573);
1689 } 1692 }
1690 dasm_put(Dst, 7221); 1693 dasm_put(Dst, 7237);
1691 break; 1694 break;
1692 case BC_MODVN: 1695 case BC_MODVN:
1693 dasm_put(Dst, 9662); 1696 dasm_put(Dst, 9678);
1694 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1697 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1695 switch (vk) { 1698 switch (vk) {
1696 case 0: 1699 case 0:
1697 dasm_put(Dst, 9670, LJ_TISNUM); 1700 dasm_put(Dst, 9686, LJ_TISNUM);
1698 if (sse) { 1701 if (sse) {
1699 dasm_put(Dst, 9980); 1702 dasm_put(Dst, 9996);
1700 } else { 1703 } else {
1701 dasm_put(Dst, 9994); 1704 dasm_put(Dst, 10010);
1702 } 1705 }
1703 break; 1706 break;
1704 case 1: 1707 case 1:
1705 dasm_put(Dst, 9704, LJ_TISNUM); 1708 dasm_put(Dst, 9720, LJ_TISNUM);
1706 if (sse) { 1709 if (sse) {
1707 dasm_put(Dst, 10002); 1710 dasm_put(Dst, 10018);
1708 } else { 1711 } else {
1709 dasm_put(Dst, 10016); 1712 dasm_put(Dst, 10032);
1710 } 1713 }
1711 break; 1714 break;
1712 default: 1715 default:
1713 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1716 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1714 if (sse) { 1717 if (sse) {
1715 dasm_put(Dst, 10024); 1718 dasm_put(Dst, 10040);
1716 } else { 1719 } else {
1717 dasm_put(Dst, 10038); 1720 dasm_put(Dst, 10054);
1718 } 1721 }
1719 break; 1722 break;
1720 } 1723 }
1721 dasm_put(Dst, 10046); 1724 dasm_put(Dst, 10062);
1722 if (sse) { 1725 if (sse) {
1723 dasm_put(Dst, 9545); 1726 dasm_put(Dst, 9561);
1724 } else { 1727 } else {
1725 dasm_put(Dst, 9557); 1728 dasm_put(Dst, 9573);
1726 } 1729 }
1727 dasm_put(Dst, 7221); 1730 dasm_put(Dst, 7237);
1728 break; 1731 break;
1729 case BC_MODNV: case BC_MODVV: 1732 case BC_MODNV: case BC_MODVV:
1730 dasm_put(Dst, 9662); 1733 dasm_put(Dst, 9678);
1731 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1734 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1732 switch (vk) { 1735 switch (vk) {
1733 case 0: 1736 case 0:
1734 dasm_put(Dst, 9670, LJ_TISNUM); 1737 dasm_put(Dst, 9686, LJ_TISNUM);
1735 if (sse) { 1738 if (sse) {
1736 dasm_put(Dst, 9980); 1739 dasm_put(Dst, 9996);
1737 } else { 1740 } else {
1738 dasm_put(Dst, 9994); 1741 dasm_put(Dst, 10010);
1739 } 1742 }
1740 break; 1743 break;
1741 case 1: 1744 case 1:
1742 dasm_put(Dst, 9704, LJ_TISNUM); 1745 dasm_put(Dst, 9720, LJ_TISNUM);
1743 if (sse) { 1746 if (sse) {
1744 dasm_put(Dst, 10002); 1747 dasm_put(Dst, 10018);
1745 } else { 1748 } else {
1746 dasm_put(Dst, 10016); 1749 dasm_put(Dst, 10032);
1747 } 1750 }
1748 break; 1751 break;
1749 default: 1752 default:
1750 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1753 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1751 if (sse) { 1754 if (sse) {
1752 dasm_put(Dst, 10024); 1755 dasm_put(Dst, 10040);
1753 } else { 1756 } else {
1754 dasm_put(Dst, 10038); 1757 dasm_put(Dst, 10054);
1755 } 1758 }
1756 break; 1759 break;
1757 } 1760 }
1758 dasm_put(Dst, 10052); 1761 dasm_put(Dst, 10068);
1759 break; 1762 break;
1760 case BC_POW: 1763 case BC_POW:
1761 dasm_put(Dst, 9662); 1764 dasm_put(Dst, 9678);
1762 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1765 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1763 switch (vk) { 1766 switch (vk) {
1764 case 0: 1767 case 0:
1765 dasm_put(Dst, 9670, LJ_TISNUM); 1768 dasm_put(Dst, 9686, LJ_TISNUM);
1766 if (sse) { 1769 if (sse) {
1767 dasm_put(Dst, 9980); 1770 dasm_put(Dst, 9996);
1768 } else { 1771 } else {
1769 dasm_put(Dst, 9994); 1772 dasm_put(Dst, 10010);
1770 } 1773 }
1771 break; 1774 break;
1772 case 1: 1775 case 1:
1773 dasm_put(Dst, 9704, LJ_TISNUM); 1776 dasm_put(Dst, 9720, LJ_TISNUM);
1774 if (sse) { 1777 if (sse) {
1775 dasm_put(Dst, 10002); 1778 dasm_put(Dst, 10018);
1776 } else { 1779 } else {
1777 dasm_put(Dst, 10016); 1780 dasm_put(Dst, 10032);
1778 } 1781 }
1779 break; 1782 break;
1780 default: 1783 default:
1781 dasm_put(Dst, 9738, LJ_TISNUM, LJ_TISNUM); 1784 dasm_put(Dst, 9754, LJ_TISNUM, LJ_TISNUM);
1782 if (sse) { 1785 if (sse) {
1783 dasm_put(Dst, 10024); 1786 dasm_put(Dst, 10040);
1784 } else { 1787 } else {
1785 dasm_put(Dst, 10038); 1788 dasm_put(Dst, 10054);
1786 } 1789 }
1787 break; 1790 break;
1788 } 1791 }
1789 dasm_put(Dst, 10057); 1792 dasm_put(Dst, 10073);
1790 if (sse) { 1793 if (sse) {
1791 dasm_put(Dst, 9545); 1794 dasm_put(Dst, 9561);
1792 } else { 1795 } else {
1793 dasm_put(Dst, 9557); 1796 dasm_put(Dst, 9573);
1794 } 1797 }
1795 dasm_put(Dst, 7221); 1798 dasm_put(Dst, 7237);
1796 break; 1799 break;
1797 1800
1798 case BC_CAT: 1801 case BC_CAT:
1799 dasm_put(Dst, 10061, Dt1(->base), Dt1(->base)); 1802 dasm_put(Dst, 10077, Dt1(->base), Dt1(->base));
1800 break; 1803 break;
1801 1804
1802 /* -- Constant ops ------------------------------------------------------ */ 1805 /* -- Constant ops ------------------------------------------------------ */
1803 1806
1804 case BC_KSTR: 1807 case BC_KSTR:
1805 dasm_put(Dst, 10151, LJ_TSTR); 1808 dasm_put(Dst, 10167, LJ_TSTR);
1806 break; 1809 break;
1807 case BC_KSHORT: 1810 case BC_KSHORT:
1808 if (sse) { 1811 if (sse) {
1809 dasm_put(Dst, 10186); 1812 dasm_put(Dst, 10202);
1810 } else { 1813 } else {
1811 dasm_put(Dst, 10201); 1814 dasm_put(Dst, 10217);
1812 } 1815 }
1813 dasm_put(Dst, 7221); 1816 dasm_put(Dst, 7237);
1814 break; 1817 break;
1815 case BC_KNUM: 1818 case BC_KNUM:
1816 if (sse) { 1819 if (sse) {
1817 dasm_put(Dst, 10209); 1820 dasm_put(Dst, 10225);
1818 } else { 1821 } else {
1819 dasm_put(Dst, 10222); 1822 dasm_put(Dst, 10238);
1820 } 1823 }
1821 dasm_put(Dst, 7221); 1824 dasm_put(Dst, 7237);
1822 break; 1825 break;
1823 case BC_KPRI: 1826 case BC_KPRI:
1824 dasm_put(Dst, 10229); 1827 dasm_put(Dst, 10245);
1825 break; 1828 break;
1826 case BC_KNIL: 1829 case BC_KNIL:
1827 dasm_put(Dst, 10257, LJ_TNIL); 1830 dasm_put(Dst, 10273, LJ_TNIL);
1828 break; 1831 break;
1829 1832
1830 /* -- Upvalue and function ops ------------------------------------------ */ 1833 /* -- Upvalue and function ops ------------------------------------------ */
1831 1834
1832 case BC_UGET: 1835 case BC_UGET:
1833 dasm_put(Dst, 10304, offsetof(GCfuncL, uvptr), DtA(->v)); 1836 dasm_put(Dst, 10320, offsetof(GCfuncL, uvptr), DtA(->v));
1834 break; 1837 break;
1835 case BC_USETV: 1838 case BC_USETV:
1836#define TV2MARKOFS \ 1839#define TV2MARKOFS \
1837 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) 1840 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv))
1838 dasm_put(Dst, 10349, 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); 1841 dasm_put(Dst, 10365, 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);
1839 dasm_put(Dst, 10440); 1842 dasm_put(Dst, 10456);
1840 break; 1843 break;
1841#undef TV2MARKOFS 1844#undef TV2MARKOFS
1842 case BC_USETS: 1845 case BC_USETS:
1843 dasm_put(Dst, 10452, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); 1846 dasm_put(Dst, 10468, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G);
1844 break; 1847 break;
1845 case BC_USETN: 1848 case BC_USETN:
1846 dasm_put(Dst, 10545); 1849 dasm_put(Dst, 10561);
1847 if (sse) { 1850 if (sse) {
1848 dasm_put(Dst, 10550); 1851 dasm_put(Dst, 10566);
1849 } else { 1852 } else {
1850 dasm_put(Dst, 9365); 1853 dasm_put(Dst, 9381);
1851 } 1854 }
1852 dasm_put(Dst, 10557, offsetof(GCfuncL, uvptr), DtA(->v)); 1855 dasm_put(Dst, 10573, offsetof(GCfuncL, uvptr), DtA(->v));
1853 if (sse) { 1856 if (sse) {
1854 dasm_put(Dst, 10566); 1857 dasm_put(Dst, 10582);
1855 } else { 1858 } else {
1856 dasm_put(Dst, 10572); 1859 dasm_put(Dst, 10588);
1857 } 1860 }
1858 dasm_put(Dst, 7221); 1861 dasm_put(Dst, 7237);
1859 break; 1862 break;
1860 case BC_USETP: 1863 case BC_USETP:
1861 dasm_put(Dst, 10575, offsetof(GCfuncL, uvptr), DtA(->v)); 1864 dasm_put(Dst, 10591, offsetof(GCfuncL, uvptr), DtA(->v));
1862 break; 1865 break;
1863 case BC_UCLO: 1866 case BC_UCLO:
1864 dasm_put(Dst, 10614, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); 1867 dasm_put(Dst, 10630, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base));
1865 break; 1868 break;
1866 1869
1867 case BC_FNEW: 1870 case BC_FNEW:
1868 dasm_put(Dst, 10669, Dt1(->base), Dt1(->base), LJ_TFUNC); 1871 dasm_put(Dst, 10685, Dt1(->base), Dt1(->base), LJ_TFUNC);
1869 break; 1872 break;
1870 1873
1871 /* -- Table ops --------------------------------------------------------- */ 1874 /* -- Table ops --------------------------------------------------------- */
1872 1875
1873 case BC_TNEW: 1876 case BC_TNEW:
1874 dasm_put(Dst, 10735, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); 1877 dasm_put(Dst, 10751, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB);
1875 break; 1878 break;
1876 case BC_TDUP: 1879 case BC_TDUP:
1877 dasm_put(Dst, 10856, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 1880 dasm_put(Dst, 10872, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
1878 break; 1881 break;
1879 1882
1880 case BC_GGET: 1883 case BC_GGET:
1881 dasm_put(Dst, 10951, Dt7(->env)); 1884 dasm_put(Dst, 10967, Dt7(->env));
1882 break; 1885 break;
1883 case BC_GSET: 1886 case BC_GSET:
1884 dasm_put(Dst, 10970, Dt7(->env)); 1887 dasm_put(Dst, 10986, Dt7(->env));
1885 break; 1888 break;
1886 1889
1887 case BC_TGETV: 1890 case BC_TGETV:
1888 dasm_put(Dst, 10989, LJ_TTAB, LJ_TISNUM); 1891 dasm_put(Dst, 11005, LJ_TTAB, LJ_TISNUM);
1889 if (sse) { 1892 if (sse) {
1890 dasm_put(Dst, 11022); 1893 dasm_put(Dst, 11038);
1891 } else { 1894 } else {
1892 } 1895 }
1893 dasm_put(Dst, 11043, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1896 dasm_put(Dst, 11059, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1894 dasm_put(Dst, 11136, LJ_TSTR); 1897 dasm_put(Dst, 11152, LJ_TSTR);
1895 break; 1898 break;
1896 case BC_TGETS: 1899 case BC_TGETS:
1897 dasm_put(Dst, 11154, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 1900 dasm_put(Dst, 11170, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
1898 dasm_put(Dst, 11239, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1901 dasm_put(Dst, 11255, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1899 break; 1902 break;
1900 case BC_TGETB: 1903 case BC_TGETB:
1901 dasm_put(Dst, 11311, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 1904 dasm_put(Dst, 11327, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
1902 dasm_put(Dst, 9652); 1905 dasm_put(Dst, 9668);
1903 break; 1906 break;
1904 1907
1905 case BC_TSETV: 1908 case BC_TSETV:
1906 dasm_put(Dst, 11411, LJ_TTAB, LJ_TISNUM); 1909 dasm_put(Dst, 11427, LJ_TTAB, LJ_TISNUM);
1907 if (sse) { 1910 if (sse) {
1908 dasm_put(Dst, 11022); 1911 dasm_put(Dst, 11038);
1909 } else { 1912 } else {
1910 } 1913 }
1911 dasm_put(Dst, 11444, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable)); 1914 dasm_put(Dst, 11460, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable));
1912 dasm_put(Dst, 11528, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1915 dasm_put(Dst, 11544, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1913 break; 1916 break;
1914 case BC_TSETS: 1917 case BC_TSETS:
1915 dasm_put(Dst, 11590, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 1918 dasm_put(Dst, 11606, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
1916 dasm_put(Dst, 11666, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next)); 1919 dasm_put(Dst, 11682, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next));
1917 dasm_put(Dst, 11759, 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)); 1920 dasm_put(Dst, 11775, 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));
1918 break; 1921 break;
1919 case BC_TSETB: 1922 case BC_TSETB:
1920 dasm_put(Dst, 11850, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 1923 dasm_put(Dst, 11866, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
1921 dasm_put(Dst, 11949, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 1924 dasm_put(Dst, 11965, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
1922 break; 1925 break;
1923 1926
1924 case BC_TSETM: 1927 case BC_TSETM:
1925 dasm_put(Dst, 11995); 1928 dasm_put(Dst, 12011);
1926 if (sse) { 1929 if (sse) {
1927 dasm_put(Dst, 10550); 1930 dasm_put(Dst, 10566);
1928 } else { 1931 } else {
1929 } 1932 }
1930 dasm_put(Dst, 12000, Dt6(->marked), LJ_GC_BLACK); 1933 dasm_put(Dst, 12016, Dt6(->marked), LJ_GC_BLACK);
1931 if (sse) { 1934 if (sse) {
1932 dasm_put(Dst, 12025); 1935 dasm_put(Dst, 12041);
1933 } else { 1936 } else {
1934 } 1937 }
1935 dasm_put(Dst, 12032, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain)); 1938 dasm_put(Dst, 12048, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain));
1936 dasm_put(Dst, 12158, Dt6(->gclist)); 1939 dasm_put(Dst, 12174, Dt6(->gclist));
1937 break; 1940 break;
1938 1941
1939 /* -- Calls and vararg handling ----------------------------------------- */ 1942 /* -- Calls and vararg handling ----------------------------------------- */
1940 1943
1941 case BC_CALL: case BC_CALLM: 1944 case BC_CALL: case BC_CALLM:
1942 dasm_put(Dst, 9666); 1945 dasm_put(Dst, 9682);
1943 if (op == BC_CALLM) { 1946 if (op == BC_CALLM) {
1944 dasm_put(Dst, 12166); 1947 dasm_put(Dst, 12182);
1945 } 1948 }
1946 dasm_put(Dst, 12171, LJ_TFUNC, Dt7(->pc)); 1949 dasm_put(Dst, 12187, LJ_TFUNC, Dt7(->pc));
1947 break; 1950 break;
1948 1951
1949 case BC_CALLMT: 1952 case BC_CALLMT:
1950 dasm_put(Dst, 12166); 1953 dasm_put(Dst, 12182);
1951 break; 1954 break;
1952 case BC_CALLT: 1955 case BC_CALLT:
1953 dasm_put(Dst, 12213, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); 1956 dasm_put(Dst, 12229, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc));
1954 dasm_put(Dst, 12332, FRAME_TYPE, Dt7(->pc), PC2PROTO(k)); 1957 dasm_put(Dst, 12348, FRAME_TYPE, Dt7(->pc), PC2PROTO(k));
1955 break; 1958 break;
1956 1959
1957 case BC_ITERC: 1960 case BC_ITERC:
1958 dasm_put(Dst, 12390, LJ_TFUNC, 2+1, Dt7(->pc)); 1961 dasm_put(Dst, 12406, LJ_TFUNC, 2+1, Dt7(->pc));
1959 break; 1962 break;
1960 1963
1961 case BC_VARG: 1964 case BC_VARG:
1962 dasm_put(Dst, 12471, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL); 1965 dasm_put(Dst, 12487, Dt7(->pc), PC2PROTO(numparams), (8+FRAME_VARG), LJ_TNIL);
1963 dasm_put(Dst, 12616, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 1966 dasm_put(Dst, 12632, Dt1(->maxstack), Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
1964 break; 1967 break;
1965 1968
1966 /* -- Returns ----------------------------------------------------------- */ 1969 /* -- Returns ----------------------------------------------------------- */
1967 1970
1968 case BC_RETM: 1971 case BC_RETM:
1969 dasm_put(Dst, 12166); 1972 dasm_put(Dst, 12182);
1970 break; 1973 break;
1971 1974
1972 case BC_RET: case BC_RET0: case BC_RET1: 1975 case BC_RET: case BC_RET0: case BC_RET1:
1973 if (op != BC_RET0) { 1976 if (op != BC_RET0) {
1974 dasm_put(Dst, 12715); 1977 dasm_put(Dst, 12731);
1975 } 1978 }
1976 dasm_put(Dst, 12719, FRAME_TYPE); 1979 dasm_put(Dst, 12735, FRAME_TYPE);
1977 switch (op) { 1980 switch (op) {
1978 case BC_RET: 1981 case BC_RET:
1979 dasm_put(Dst, 12738); 1982 dasm_put(Dst, 12754);
1980 break; 1983 break;
1981 case BC_RET1: 1984 case BC_RET1:
1982 dasm_put(Dst, 12796); 1985 dasm_put(Dst, 12812);
1983 /* fallthrough */ 1986 /* fallthrough */
1984 case BC_RET0: 1987 case BC_RET0:
1985 dasm_put(Dst, 12812); 1988 dasm_put(Dst, 12828);
1986 default: 1989 default:
1987 break; 1990 break;
1988 } 1991 }
1989 dasm_put(Dst, 12823, Dt7(->pc), PC2PROTO(k)); 1992 dasm_put(Dst, 12839, Dt7(->pc), PC2PROTO(k));
1990 if (op == BC_RET) { 1993 if (op == BC_RET) {
1991 dasm_put(Dst, 12867, LJ_TNIL); 1994 dasm_put(Dst, 12883, LJ_TNIL);
1992 } else { 1995 } else {
1993 dasm_put(Dst, 12876, LJ_TNIL); 1996 dasm_put(Dst, 12892, LJ_TNIL);
1994 } 1997 }
1995 dasm_put(Dst, 12883); 1998 dasm_put(Dst, 12899);
1996 if (op != BC_RET0) { 1999 if (op != BC_RET0) {
1997 dasm_put(Dst, 12904); 2000 dasm_put(Dst, 12920);
1998 } 2001 }
1999 dasm_put(Dst, 4542); 2002 dasm_put(Dst, 4542);
2000 break; 2003 break;
@@ -2004,7 +2007,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2004 2007
2005 case BC_FORL: 2008 case BC_FORL:
2006#if LJ_HASJIT 2009#if LJ_HASJIT
2007 dasm_put(Dst, 12908, HOTCOUNT_PCMASK, GG_DISP2HOT); 2010 dasm_put(Dst, 12924, HOTCOUNT_PCMASK, GG_DISP2HOT);
2008#endif 2011#endif
2009 break; 2012 break;
2010 2013
@@ -2016,57 +2019,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2016 case BC_FORI: 2019 case BC_FORI:
2017 case BC_IFORL: 2020 case BC_IFORL:
2018 vk = (op == BC_IFORL || op == BC_JFORL); 2021 vk = (op == BC_IFORL || op == BC_JFORL);
2019 dasm_put(Dst, 12929); 2022 dasm_put(Dst, 12945);
2020 if (!vk) { 2023 if (!vk) {
2021 dasm_put(Dst, 12933, LJ_TISNUM, LJ_TISNUM); 2024 dasm_put(Dst, 12949, LJ_TISNUM, LJ_TISNUM);
2022 } 2025 }
2023 dasm_put(Dst, 12952); 2026 dasm_put(Dst, 12968);
2024 if (!vk) { 2027 if (!vk) {
2025 dasm_put(Dst, 12956, LJ_TISNUM); 2028 dasm_put(Dst, 12972, LJ_TISNUM);
2026 } 2029 }
2027 if (sse) { 2030 if (sse) {
2028 dasm_put(Dst, 12965); 2031 dasm_put(Dst, 12981);
2029 if (vk) { 2032 if (vk) {
2030 dasm_put(Dst, 12977); 2033 dasm_put(Dst, 12993);
2031 } else { 2034 } else {
2032 dasm_put(Dst, 12996); 2035 dasm_put(Dst, 13012);
2033 } 2036 }
2034 dasm_put(Dst, 13001); 2037 dasm_put(Dst, 13017);
2035 } else { 2038 } else {
2036 dasm_put(Dst, 13014); 2039 dasm_put(Dst, 13030);
2037 if (vk) { 2040 if (vk) {
2038 dasm_put(Dst, 13020);
2039 } else {
2040 dasm_put(Dst, 13036); 2041 dasm_put(Dst, 13036);
2042 } else {
2043 dasm_put(Dst, 13052);
2041 } 2044 }
2042 dasm_put(Dst, 13044); 2045 dasm_put(Dst, 13060);
2043 if (cmov) { 2046 if (cmov) {
2044 dasm_put(Dst, 9089); 2047 dasm_put(Dst, 9105);
2045 } else { 2048 } else {
2046 dasm_put(Dst, 9095); 2049 dasm_put(Dst, 9111);
2047 } 2050 }
2048 if (!cmov) { 2051 if (!cmov) {
2049 dasm_put(Dst, 13049); 2052 dasm_put(Dst, 13065);
2050 } 2053 }
2051 } 2054 }
2052 if (op == BC_FORI) { 2055 if (op == BC_FORI) {
2053 dasm_put(Dst, 13055, -BCBIAS_J*4); 2056 dasm_put(Dst, 13071, -BCBIAS_J*4);
2054 } else if (op == BC_JFORI) { 2057 } else if (op == BC_JFORI) {
2055 dasm_put(Dst, 13065, -BCBIAS_J*4, BC_JLOOP); 2058 dasm_put(Dst, 13081, -BCBIAS_J*4, BC_JLOOP);
2056 } else if (op == BC_IFORL) { 2059 } else if (op == BC_IFORL) {
2057 dasm_put(Dst, 13079, -BCBIAS_J*4); 2060 dasm_put(Dst, 13095, -BCBIAS_J*4);
2058 } else { 2061 } else {
2059 dasm_put(Dst, 13075, BC_JLOOP); 2062 dasm_put(Dst, 13091, BC_JLOOP);
2060 } 2063 }
2061 dasm_put(Dst, 9124); 2064 dasm_put(Dst, 9140);
2062 if (sse) { 2065 if (sse) {
2063 dasm_put(Dst, 13089); 2066 dasm_put(Dst, 13105);
2064 } 2067 }
2065 break; 2068 break;
2066 2069
2067 case BC_ITERL: 2070 case BC_ITERL:
2068#if LJ_HASJIT 2071#if LJ_HASJIT
2069 dasm_put(Dst, 12908, HOTCOUNT_PCMASK, GG_DISP2HOT); 2072 dasm_put(Dst, 12924, HOTCOUNT_PCMASK, GG_DISP2HOT);
2070#endif 2073#endif
2071 break; 2074 break;
2072 2075
@@ -2075,33 +2078,33 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2075 break; 2078 break;
2076#endif 2079#endif
2077 case BC_IITERL: 2080 case BC_IITERL:
2078 dasm_put(Dst, 13100, LJ_TNIL); 2081 dasm_put(Dst, 13116, LJ_TNIL);
2079 if (op == BC_JITERL) { 2082 if (op == BC_JITERL) {
2080 dasm_put(Dst, 13115, BC_JLOOP); 2083 dasm_put(Dst, 13131, BC_JLOOP);
2081 } else { 2084 } else {
2082 dasm_put(Dst, 13129, -BCBIAS_J*4); 2085 dasm_put(Dst, 13145, -BCBIAS_J*4);
2083 } 2086 }
2084 dasm_put(Dst, 9424); 2087 dasm_put(Dst, 9440);
2085 break; 2088 break;
2086 2089
2087 case BC_LOOP: 2090 case BC_LOOP:
2088#if LJ_HASJIT 2091#if LJ_HASJIT
2089 dasm_put(Dst, 12908, HOTCOUNT_PCMASK, GG_DISP2HOT); 2092 dasm_put(Dst, 12924, HOTCOUNT_PCMASK, GG_DISP2HOT);
2090#endif 2093#endif
2091 break; 2094 break;
2092 2095
2093 case BC_ILOOP: 2096 case BC_ILOOP:
2094 dasm_put(Dst, 7221); 2097 dasm_put(Dst, 7237);
2095 break; 2098 break;
2096 2099
2097 case BC_JLOOP: 2100 case BC_JLOOP:
2098#if LJ_HASJIT 2101#if LJ_HASJIT
2099 dasm_put(Dst, 13145, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); 2102 dasm_put(Dst, 13161, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L));
2100#endif 2103#endif
2101 break; 2104 break;
2102 2105
2103 case BC_JMP: 2106 case BC_JMP:
2104 dasm_put(Dst, 13169, -BCBIAS_J*4); 2107 dasm_put(Dst, 13185, -BCBIAS_J*4);
2105 break; 2108 break;
2106 2109
2107 /* -- Function headers -------------------------------------------------- */ 2110 /* -- Function headers -------------------------------------------------- */
@@ -2124,47 +2127,47 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2124 break; 2127 break;
2125#endif 2128#endif
2126 case BC_IFUNCF: 2129 case BC_IFUNCF:
2127 dasm_put(Dst, 13194, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); 2130 dasm_put(Dst, 13210, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams));
2128 if (op == BC_JFUNCF) { 2131 if (op == BC_JFUNCF) {
2129 dasm_put(Dst, 13224, BC_JLOOP); 2132 dasm_put(Dst, 13240, BC_JLOOP);
2130 } else { 2133 } else {
2131 dasm_put(Dst, 7221); 2134 dasm_put(Dst, 7237);
2132 } 2135 }
2133 dasm_put(Dst, 13233, LJ_TNIL); 2136 dasm_put(Dst, 13249, LJ_TNIL);
2134 break; 2137 break;
2135 2138
2136 case BC_JFUNCV: 2139 case BC_JFUNCV:
2137#if !LJ_HASJIT 2140#if !LJ_HASJIT
2138 break; 2141 break;
2139#endif 2142#endif
2140 dasm_put(Dst, 7101); 2143 dasm_put(Dst, 7117);
2141 break; /* NYI: compiled vararg functions. */ 2144 break; /* NYI: compiled vararg functions. */
2142 2145
2143 case BC_IFUNCV: 2146 case BC_IFUNCV:
2144 dasm_put(Dst, 13255, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); 2147 dasm_put(Dst, 13271, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL);
2145 if (op == BC_JFUNCV) { 2148 if (op == BC_JFUNCV) {
2146 dasm_put(Dst, 13224, BC_JLOOP); 2149 dasm_put(Dst, 13240, BC_JLOOP);
2147 } else { 2150 } else {
2148 dasm_put(Dst, 13346, -4+PC2PROTO(k)); 2151 dasm_put(Dst, 13362, -4+PC2PROTO(k));
2149 } 2152 }
2150 dasm_put(Dst, 13369, LJ_TNIL); 2153 dasm_put(Dst, 13385, LJ_TNIL);
2151 break; 2154 break;
2152 2155
2153 case BC_FUNCC: 2156 case BC_FUNCC:
2154 case BC_FUNCCW: 2157 case BC_FUNCCW:
2155 dasm_put(Dst, 13391, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); 2158 dasm_put(Dst, 13407, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top));
2156 if (op == BC_FUNCC) { 2159 if (op == BC_FUNCC) {
2157 dasm_put(Dst, 13421); 2160 dasm_put(Dst, 13437);
2158 } else { 2161 } else {
2159 dasm_put(Dst, 13425); 2162 dasm_put(Dst, 13441);
2160 } 2163 }
2161 dasm_put(Dst, 13433, DISPATCH_GL(vmstate), ~LJ_VMST_C); 2164 dasm_put(Dst, 13449, DISPATCH_GL(vmstate), ~LJ_VMST_C);
2162 if (op == BC_FUNCC) { 2165 if (op == BC_FUNCC) {
2163 dasm_put(Dst, 13442); 2166 dasm_put(Dst, 13458);
2164 } else { 2167 } else {
2165 dasm_put(Dst, 13446, DISPATCH_GL(wrapf)); 2168 dasm_put(Dst, 13462, DISPATCH_GL(wrapf));
2166 } 2169 }
2167 dasm_put(Dst, 13451, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); 2170 dasm_put(Dst, 13467, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top));
2168 break; 2171 break;
2169 2172
2170 /* ---------------------------------------------------------------------- */ 2173 /* ---------------------------------------------------------------------- */
@@ -2192,7 +2195,7 @@ static int build_backend(BuildCtx *ctx)
2192 2195
2193 build_subroutines(ctx, cmov, sse); 2196 build_subroutines(ctx, cmov, sse);
2194 2197
2195 dasm_put(Dst, 13476); 2198 dasm_put(Dst, 13492);
2196 for (op = 0; op < BC__MAX; op++) 2199 for (op = 0; op < BC__MAX; op++)
2197 build_ins(ctx, (BCOp)op, op, cmov, sse); 2200 build_ins(ctx, (BCOp)op, op, cmov, sse);
2198 2201