summaryrefslogtreecommitdiff
path: root/src/buildvm_x86.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildvm_x86.h')
-rw-r--r--src/buildvm_x86.h1212
1 files changed, 606 insertions, 606 deletions
diff --git a/src/buildvm_x86.h b/src/buildvm_x86.h
index 7c5e1bc0..4e687076 100644
--- a/src/buildvm_x86.h
+++ b/src/buildvm_x86.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[15861] = { 15static const unsigned char build_actionlist[15851] = {
16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,141, 16 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,141,
17 76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36, 17 76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,
18 20,252,247,198,237,15,132,244,13,248,14,129,252,246,239,252,247,198,237,15, 18 20,252,247,198,237,15,132,244,13,248,14,129,252,246,239,252,247,198,237,15,
@@ -477,307 +477,307 @@ static const unsigned char build_actionlist[15861] = {
477 252,248,1,169,1,0,0,0,15,133,244,248,252,242,15,89,192,209,232,252,233,244, 477 252,248,1,169,1,0,0,0,15,133,244,248,252,242,15,89,192,209,232,252,233,244,
478 1,248,2,209,232,15,132,244,251,15,40,200,248,3,252,242,15,89,192,209,232, 478 1,248,2,209,232,15,132,244,251,15,40,200,248,3,252,242,15,89,192,209,232,
479 15,132,244,250,15,131,244,3,255,252,242,15,89,200,252,233,244,3,248,4,252, 479 15,132,244,250,15,131,244,3,255,252,242,15,89,200,252,233,244,3,248,4,252,
480 242,15,89,193,248,5,195,248,6,15,132,244,5,15,130,244,253,80,184,0,0,252, 480 242,15,89,193,248,5,195,248,6,15,132,244,5,15,130,244,253,252,247,216,232,
481 240,63,102,15,110,200,102,15,112,201,81,252,242,15,94,200,88,15,40,193,252, 481 244,1,184,0,0,252,240,63,102,15,110,200,102,15,112,201,81,252,242,15,94,200,
482 247,216,131,252,248,1,15,132,244,5,252,233,244,1,248,7,184,0,0,252,240,63, 482 15,40,193,195,248,7,184,0,0,252,240,63,102,15,110,192,102,15,112,192,81,195,
483 102,15,110,192,102,15,112,192,81,195,248,8,252,242,15,17,76,36,12,252,242, 483 248,8,252,242,15,17,76,36,12,252,242,15,17,68,36,4,131,124,36,12,0,15,133,
484 15,17,68,36,4,131,124,36,12,0,15,133,244,247,139,68,36,16,209,224,61,0,0, 484 244,247,139,68,36,16,209,224,61,0,0,224,252,255,15,132,244,248,248,1,131,
485 224,252,255,15,132,244,248,248,1,255,131,124,36,4,0,15,133,244,247,139,68, 485 124,36,4,0,15,133,244,247,255,139,68,36,8,209,224,15,132,244,250,61,0,0,224,
486 36,8,209,224,15,132,244,250,61,0,0,224,252,255,15,132,244,251,248,1,221,68, 486 252,255,15,132,244,251,248,1,221,68,36,12,221,68,36,4,217,252,241,217,192,
487 36,12,221,68,36,4,217,252,241,217,192,217,252,252,220,252,233,217,201,217, 487 217,252,252,220,252,233,217,201,217,252,240,217,232,222,193,217,252,253,221,
488 252,240,217,232,222,193,217,252,253,221,217,221,92,36,4,252,242,15,16,68, 488 217,221,92,36,4,252,242,15,16,68,36,4,195,248,9,184,0,0,252,240,63,102,15,
489 36,4,195,248,9,184,0,0,252,240,63,102,15,110,208,102,15,112,210,81,102,15, 489 110,208,102,15,112,210,81,102,15,46,194,15,132,244,247,15,40,193,248,1,195,
490 46,194,15,132,244,247,15,40,193,248,1,195,248,2,102,15,252,239,210,102,15, 490 248,2,102,15,252,239,210,102,15,118,210,102,15,115,210,1,102,15,84,194,184,
491 118,210,102,15,115,210,1,102,15,84,194,184,0,0,252,240,63,102,15,110,208, 491 0,0,252,240,63,102,15,110,208,102,15,112,210,81,102,15,46,194,15,132,244,
492 102,15,112,210,81,102,15,46,194,15,132,244,1,102,15,80,193,15,87,192,136, 492 1,102,15,80,193,15,87,192,136,196,15,146,208,48,224,15,133,244,1,248,3,184,
493 196,15,146,208,48,224,15,133,244,1,248,3,184,0,0,252,240,127,102,15,110,192, 493 0,0,252,240,127,102,15,110,192,102,15,112,192,81,195,248,4,102,15,80,193,
494 102,15,112,192,81,195,248,4,102,15,80,193,133,192,15,133,244,3,255,15,87, 494 133,192,15,133,244,3,15,87,192,195,248,5,102,15,80,193,133,192,15,132,244,
495 192,195,248,5,102,15,80,193,133,192,15,132,244,3,15,87,192,195,248,154,255, 495 3,255,15,87,192,195,248,154,255,139,68,36,12,252,242,15,16,68,36,4,131,252,
496 139,68,36,12,252,242,15,16,68,36,4,131,252,248,1,15,132,244,247,15,135,244, 496 248,1,15,132,244,247,15,135,244,248,232,244,83,252,233,244,253,248,1,232,
497 248,232,244,83,252,233,244,253,248,1,232,244,85,252,233,244,253,248,2,131, 497 244,85,252,233,244,253,248,2,131,252,248,3,15,132,244,247,15,135,244,248,
498 252,248,3,15,132,244,247,15,135,244,248,232,244,105,255,252,233,244,253,248, 498 232,244,105,255,252,233,244,253,248,1,252,242,15,81,192,248,7,252,242,15,
499 1,252,242,15,81,192,248,7,252,242,15,17,68,36,4,221,68,36,4,195,248,2,221, 499 17,68,36,4,221,68,36,4,195,248,2,221,68,36,4,131,252,248,5,15,130,244,89,
500 68,36,4,131,252,248,5,15,130,244,89,15,132,244,150,248,2,131,252,248,7,15, 500 15,132,244,150,248,2,131,252,248,7,15,132,244,247,15,135,244,248,217,252,
501 132,244,247,15,135,244,248,217,252,237,217,201,217,252,241,195,248,1,217, 501 237,217,201,217,252,241,195,248,1,217,232,217,201,217,252,241,195,248,2,131,
502 232,217,201,217,252,241,195,248,2,131,252,248,9,15,132,244,247,15,135,244, 502 252,248,9,15,132,244,247,15,135,244,248,255,217,252,236,217,201,217,252,241,
503 248,255,217,252,236,217,201,217,252,241,195,248,1,217,252,254,195,248,2,131, 503 195,248,1,217,252,254,195,248,2,131,252,248,11,15,132,244,247,15,135,244,
504 252,248,11,15,132,244,247,15,135,244,255,217,252,255,195,248,1,217,252,242, 504 255,217,252,255,195,248,1,217,252,242,221,216,195,255,139,68,36,12,221,68,
505 221,216,195,255,139,68,36,12,221,68,36,4,131,252,248,1,15,130,244,83,15,132, 505 36,4,131,252,248,1,15,130,244,83,15,132,244,85,131,252,248,3,15,130,244,105,
506 244,85,131,252,248,3,15,130,244,105,15,135,244,248,217,252,250,195,248,2, 506 15,135,244,248,217,252,250,195,248,2,131,252,248,5,15,130,244,89,15,132,244,
507 131,252,248,5,15,130,244,89,15,132,244,150,131,252,248,7,15,132,244,247,15, 507 150,131,252,248,7,15,132,244,247,15,135,244,248,217,252,237,217,201,217,252,
508 135,244,248,217,252,237,217,201,217,252,241,195,248,1,217,232,217,201,217, 508 241,195,248,1,217,232,217,201,217,252,241,195,248,2,131,252,248,9,15,132,
509 252,241,195,248,2,131,252,248,9,15,132,244,247,255,15,135,244,248,217,252, 509 244,247,255,15,135,244,248,217,252,236,217,201,217,252,241,195,248,1,217,
510 236,217,201,217,252,241,195,248,1,217,252,254,195,248,2,131,252,248,11,15, 510 252,254,195,248,2,131,252,248,11,15,132,244,247,15,135,244,255,217,252,255,
511 132,244,247,15,135,244,255,217,252,255,195,248,1,217,252,242,221,216,195, 511 195,248,1,217,252,242,221,216,195,255,248,9,204,255,248,155,255,139,68,36,
512 255,248,9,204,255,248,155,255,139,68,36,20,252,242,15,16,68,36,4,252,242, 512 20,252,242,15,16,68,36,4,252,242,15,16,76,36,12,131,252,248,1,15,132,244,
513 15,16,76,36,12,131,252,248,1,15,132,244,247,15,135,244,248,252,242,15,88, 513 247,15,135,244,248,252,242,15,88,193,248,7,252,242,15,17,68,36,4,221,68,36,
514 193,248,7,252,242,15,17,68,36,4,221,68,36,4,195,248,1,252,242,15,92,193,252, 514 4,195,248,1,252,242,15,92,193,252,233,244,7,248,2,131,252,248,3,15,132,244,
515 233,244,7,248,2,131,252,248,3,15,132,244,247,15,135,244,248,252,242,15,89, 515 247,15,135,244,248,252,242,15,89,193,252,233,244,7,248,1,252,242,15,94,193,
516 193,252,233,244,7,248,1,252,242,15,94,193,252,233,244,7,248,2,131,252,248, 516 252,233,244,7,248,2,131,252,248,5,15,132,244,247,255,15,135,244,248,232,244,
517 5,15,132,244,247,255,15,135,244,248,232,244,149,252,233,244,7,248,1,90,232, 517 149,252,233,244,7,248,1,90,232,244,108,82,252,233,244,7,248,2,131,252,248,
518 244,108,82,252,233,244,7,248,2,131,252,248,7,15,132,244,247,15,135,244,248, 518 7,15,132,244,247,15,135,244,248,184,0,0,0,128,102,15,110,200,102,15,112,201,
519 184,0,0,0,128,102,15,110,200,102,15,112,201,81,15,87,193,252,233,244,7,248, 519 81,15,87,193,252,233,244,7,248,1,102,15,252,239,201,102,15,118,201,102,15,
520 1,102,15,252,239,201,102,15,118,201,102,15,115,209,1,15,84,193,252,233,244, 520 115,209,1,15,84,193,252,233,244,7,248,2,255,131,252,248,9,15,135,244,248,
521 7,248,2,255,131,252,248,9,15,135,244,248,221,68,36,4,221,68,36,12,15,132, 521 221,68,36,4,221,68,36,12,15,132,244,247,217,252,243,195,248,1,217,201,217,
522 244,247,217,252,243,195,248,1,217,201,217,252,253,221,217,195,248,2,131,252, 522 252,253,221,217,195,248,2,131,252,248,11,15,132,244,247,15,135,244,255,252,
523 248,11,15,132,244,247,15,135,244,255,252,242,15,93,193,252,233,244,7,248, 523 242,15,93,193,252,233,244,7,248,1,252,242,15,95,193,252,233,244,7,248,9,204,
524 1,252,242,15,95,193,252,233,244,7,248,9,204,255,139,68,36,20,221,68,36,4, 524 255,139,68,36,20,221,68,36,4,221,68,36,12,131,252,248,1,15,132,244,247,15,
525 221,68,36,12,131,252,248,1,15,132,244,247,15,135,244,248,222,193,195,248, 525 135,244,248,222,193,195,248,1,222,252,233,195,248,2,131,252,248,3,15,132,
526 1,222,252,233,195,248,2,131,252,248,3,15,132,244,247,15,135,244,248,222,201, 526 244,247,15,135,244,248,222,201,195,248,1,222,252,249,195,248,2,131,252,248,
527 195,248,1,222,252,249,195,248,2,131,252,248,5,15,130,244,149,15,132,244,108, 527 5,15,130,244,149,15,132,244,108,131,252,248,7,15,132,244,247,15,135,244,248,
528 131,252,248,7,15,132,244,247,15,135,244,248,255,221,216,217,224,195,248,1, 528 255,221,216,217,224,195,248,1,221,216,217,225,195,248,2,131,252,248,9,15,
529 221,216,217,225,195,248,2,131,252,248,9,15,132,244,247,15,135,244,248,217, 529 132,244,247,15,135,244,248,217,252,243,195,248,1,217,201,217,252,253,221,
530 252,243,195,248,1,217,201,217,252,253,221,217,195,248,2,131,252,248,11,15, 530 217,195,248,2,131,252,248,11,15,132,244,247,15,135,244,255,255,219,252,233,
531 132,244,247,15,135,244,255,255,219,252,233,219,209,221,217,195,248,1,219, 531 219,209,221,217,195,248,1,219,252,233,218,209,221,217,195,255,221,225,223,
532 252,233,218,209,221,217,195,255,221,225,223,224,252,246,196,1,15,132,244, 532 224,252,246,196,1,15,132,244,248,217,201,248,2,221,216,195,248,1,221,225,
533 248,217,201,248,2,221,216,195,248,1,221,225,223,224,252,246,196,1,15,133, 533 223,224,252,246,196,1,15,133,244,248,217,201,248,2,221,216,195,255,248,156,
534 244,248,217,201,248,2,221,216,195,255,248,156,156,90,137,209,129,252,242, 534 156,90,137,209,129,252,242,0,0,32,0,82,157,156,90,49,192,57,209,15,132,244,
535 0,0,32,0,82,157,156,90,49,192,57,209,15,132,244,247,139,68,36,4,87,83,15, 535 247,139,68,36,4,87,83,15,162,139,124,36,16,137,7,137,95,4,137,79,8,137,87,
536 162,139,124,36,16,137,7,137,95,4,137,79,8,137,87,12,91,95,248,1,195,248,157, 536 12,91,95,248,1,195,248,157,255,85,137,229,83,137,203,43,163,233,255,137,163,
537 255,85,137,229,83,137,203,43,163,233,255,137,163,233,255,15,182,139,233,131, 537 233,255,15,182,139,233,131,252,233,1,15,136,244,248,248,1,139,132,253,139,
538 252,233,1,15,136,244,248,248,1,139,132,253,139,233,137,4,140,131,252,233, 538 233,137,4,140,131,252,233,1,15,137,244,1,248,2,139,139,233,139,147,233,252,
539 1,15,137,244,1,248,2,139,139,233,139,147,233,252,255,147,233,137,131,233, 539 255,147,233,137,131,233,137,147,233,128,187,233,1,15,130,244,253,15,132,244,
540 137,147,233,128,187,233,1,15,130,244,253,15,132,244,252,221,155,233,252,233, 540 252,221,155,233,252,233,244,253,248,6,255,217,155,233,248,7,255,41,163,233,
541 244,253,248,6,255,217,155,233,248,7,255,41,163,233,255,139,93,252,252,201, 541 255,139,93,252,252,201,195,255,249,255,129,124,253,202,4,239,15,135,244,41,
542 195,255,249,255,129,124,253,202,4,239,15,135,244,41,129,124,253,194,4,239, 542 129,124,253,194,4,239,15,135,244,41,255,252,242,15,16,4,194,131,198,4,102,
543 15,135,244,41,255,252,242,15,16,4,194,131,198,4,102,15,46,4,202,255,221,4, 543 15,46,4,202,255,221,4,202,221,4,194,131,198,4,255,223,252,233,221,216,255,
544 202,221,4,194,131,198,4,255,223,252,233,221,216,255,218,252,233,223,224,158, 544 218,252,233,223,224,158,255,15,134,244,248,255,15,131,244,248,255,248,1,15,
545 255,15,134,244,248,255,15,131,244,248,255,248,1,15,183,70,252,254,141,180, 545 183,70,252,254,141,180,253,134,233,248,2,139,6,15,182,204,15,182,232,131,
546 253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, 546 198,4,193,232,16,252,255,36,171,255,139,108,194,4,131,198,4,129,252,253,239,
547 36,171,255,139,108,194,4,131,198,4,129,252,253,239,15,135,244,251,129,124, 547 15,135,244,251,129,124,253,202,4,239,15,135,244,251,255,252,242,15,16,4,194,
548 253,202,4,239,15,135,244,251,255,252,242,15,16,4,194,102,15,46,4,202,255, 548 102,15,46,4,202,255,221,4,202,221,4,194,255,15,138,244,248,15,133,244,248,
549 221,4,202,221,4,194,255,15,138,244,248,15,133,244,248,255,15,138,244,248, 549 255,15,138,244,248,15,132,244,247,255,248,1,15,183,70,252,254,141,180,253,
550 15,132,244,247,255,248,1,15,183,70,252,254,141,180,253,134,233,248,2,255, 550 134,233,248,2,255,248,2,15,183,70,252,254,141,180,253,134,233,248,1,255,248,
551 248,2,15,183,70,252,254,141,180,253,134,233,248,1,255,248,5,255,129,252,253, 551 5,255,129,252,253,239,15,132,244,46,129,124,253,202,4,239,15,132,244,46,255,
552 239,15,132,244,46,129,124,253,202,4,239,15,132,244,46,255,57,108,202,4,15, 552 57,108,202,4,15,133,244,2,129,252,253,239,15,131,244,1,139,12,202,139,4,194,
553 133,244,2,129,252,253,239,15,131,244,1,139,12,202,139,4,194,57,193,15,132, 553 57,193,15,132,244,1,129,252,253,239,15,135,244,2,139,169,233,133,252,237,
554 244,1,129,252,253,239,15,135,244,2,139,169,233,133,252,237,15,132,244,2,252, 554 15,132,244,2,252,246,133,233,235,15,133,244,2,255,49,252,237,255,189,1,0,
555 246,133,233,235,15,133,244,2,255,49,252,237,255,189,1,0,0,0,255,252,233,244, 555 0,0,255,252,233,244,45,255,248,3,129,252,253,239,15,133,244,2,252,233,244,
556 45,255,248,3,129,252,253,239,15,133,244,2,252,233,244,46,255,252,247,208, 556 46,255,252,247,208,139,108,202,4,131,198,4,129,252,253,239,15,133,244,249,
557 139,108,202,4,131,198,4,129,252,253,239,15,133,244,249,139,12,202,59,12,135, 557 139,12,202,59,12,135,255,139,108,202,4,131,198,4,129,252,253,239,15,135,244,
558 255,139,108,202,4,131,198,4,129,252,253,239,15,135,244,249,255,252,242,15, 558 249,255,252,242,15,16,4,199,102,15,46,4,202,255,221,4,202,221,4,199,255,252,
559 16,4,199,102,15,46,4,202,255,221,4,202,221,4,199,255,252,247,208,139,108, 559 247,208,139,108,202,4,131,198,4,57,197,255,15,133,244,249,15,183,70,252,254,
560 202,4,131,198,4,57,197,255,15,133,244,249,15,183,70,252,254,141,180,253,134, 560 141,180,253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,
561 233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171, 561 252,255,36,171,248,3,129,252,253,239,15,133,244,2,252,233,244,46,255,15,132,
562 248,3,129,252,253,239,15,133,244,2,252,233,244,46,255,15,132,244,248,129, 562 244,248,129,252,253,239,15,132,244,46,15,183,70,252,254,141,180,253,134,233,
563 252,253,239,15,132,244,46,15,183,70,252,254,141,180,253,134,233,248,2,139, 563 248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,
564 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,139,108,194, 564 139,108,194,4,131,198,4,129,252,253,239,255,15,131,244,247,255,15,130,244,
565 4,131,198,4,129,252,253,239,255,15,131,244,247,255,15,130,244,247,255,137, 565 247,255,137,108,202,4,139,44,194,137,44,202,255,15,183,70,252,254,141,180,
566 108,202,4,139,44,194,137,44,202,255,15,183,70,252,254,141,180,253,134,233, 566 253,134,233,248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,
567 248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255, 567 36,171,255,139,108,194,4,139,4,194,137,108,202,4,137,4,202,139,6,15,182,204,
568 139,108,194,4,139,4,194,137,108,202,4,137,4,202,139,6,15,182,204,15,182,232, 568 15,182,232,131,198,4,193,232,16,252,255,36,171,255,49,252,237,129,124,253,
569 131,198,4,193,232,16,252,255,36,171,255,49,252,237,129,124,253,194,4,239, 569 194,4,239,129,213,239,137,108,202,4,139,6,15,182,204,15,182,232,131,198,4,
570 129,213,239,137,108,202,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16, 570 193,232,16,252,255,36,171,255,129,124,253,194,4,239,15,135,244,49,255,252,
571 252,255,36,171,255,129,124,253,194,4,239,15,135,244,49,255,252,242,15,16, 571 242,15,16,4,194,184,0,0,0,128,102,15,110,200,102,15,112,201,81,15,87,193,
572 4,194,184,0,0,0,128,102,15,110,200,102,15,112,201,81,15,87,193,252,242,15, 572 252,242,15,17,4,202,255,221,4,194,217,224,221,28,202,255,129,124,253,194,
573 17,4,202,255,221,4,194,217,224,221,28,202,255,129,124,253,194,4,239,15,133, 573 4,239,15,133,244,248,139,4,194,255,15,87,192,252,242,15,42,128,233,248,1,
574 244,248,139,4,194,255,15,87,192,252,242,15,42,128,233,248,1,252,242,15,17, 574 252,242,15,17,4,202,255,219,128,233,248,1,221,28,202,255,139,6,15,182,204,
575 4,202,255,219,128,233,248,1,221,28,202,255,139,6,15,182,204,15,182,232,131, 575 15,182,232,131,198,4,193,232,16,252,255,36,171,248,2,129,124,253,194,4,239,
576 198,4,193,232,16,252,255,36,171,248,2,129,124,253,194,4,239,15,133,244,51, 576 15,133,244,51,139,12,194,137,213,232,251,1,19,255,252,242,15,42,192,137,252,
577 139,12,194,137,213,232,251,1,19,255,252,242,15,42,192,137,252,234,255,137, 577 234,255,137,4,36,137,252,234,219,4,36,255,15,182,78,252,253,252,233,244,1,
578 4,36,137,252,234,219,4,36,255,15,182,78,252,253,252,233,244,1,255,15,182, 578 255,15,182,252,236,15,182,192,255,129,124,253,252,234,4,239,15,135,244,47,
579 252,236,15,182,192,255,129,124,253,252,234,4,239,15,135,244,47,255,252,242, 579 255,252,242,15,16,4,252,234,252,242,15,88,4,199,255,221,4,252,234,220,4,199,
580 15,16,4,252,234,252,242,15,88,4,199,255,221,4,252,234,220,4,199,255,129,124, 580 255,129,124,253,252,234,4,239,15,135,244,48,255,252,242,15,16,4,199,252,242,
581 253,252,234,4,239,15,135,244,48,255,252,242,15,16,4,199,252,242,15,88,4,252, 581 15,88,4,252,234,255,221,4,199,220,4,252,234,255,129,124,253,252,234,4,239,
582 234,255,221,4,199,220,4,252,234,255,129,124,253,252,234,4,239,15,135,244, 582 15,135,244,50,129,124,253,194,4,239,15,135,244,50,255,252,242,15,16,4,252,
583 50,129,124,253,194,4,239,15,135,244,50,255,252,242,15,16,4,252,234,252,242, 583 234,252,242,15,88,4,194,255,221,4,252,234,220,4,194,255,252,242,15,16,4,252,
584 15,88,4,194,255,221,4,252,234,220,4,194,255,252,242,15,16,4,252,234,252,242, 584 234,252,242,15,92,4,199,255,221,4,252,234,220,36,199,255,252,242,15,16,4,
585 15,92,4,199,255,221,4,252,234,220,36,199,255,252,242,15,16,4,199,252,242, 585 199,252,242,15,92,4,252,234,255,221,4,199,220,36,252,234,255,252,242,15,16,
586 15,92,4,252,234,255,221,4,199,220,36,252,234,255,252,242,15,16,4,252,234, 586 4,252,234,252,242,15,92,4,194,255,221,4,252,234,220,36,194,255,252,242,15,
587 252,242,15,92,4,194,255,221,4,252,234,220,36,194,255,252,242,15,16,4,252, 587 16,4,252,234,252,242,15,89,4,199,255,221,4,252,234,220,12,199,255,252,242,
588 234,252,242,15,89,4,199,255,221,4,252,234,220,12,199,255,252,242,15,16,4, 588 15,16,4,199,252,242,15,89,4,252,234,255,221,4,199,220,12,252,234,255,252,
589 199,252,242,15,89,4,252,234,255,221,4,199,220,12,252,234,255,252,242,15,16, 589 242,15,16,4,252,234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,
590 4,252,234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,252,242,15, 590 252,242,15,16,4,252,234,252,242,15,94,4,199,255,221,4,252,234,220,52,199,
591 16,4,252,234,252,242,15,94,4,199,255,221,4,252,234,220,52,199,255,252,242, 591 255,252,242,15,16,4,199,252,242,15,94,4,252,234,255,221,4,199,220,52,252,
592 15,16,4,199,252,242,15,94,4,252,234,255,221,4,199,220,52,252,234,255,252, 592 234,255,252,242,15,16,4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,
593 242,15,16,4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,52,194,255, 593 52,194,255,252,242,15,16,4,252,234,252,242,15,16,12,199,255,221,4,252,234,
594 252,242,15,16,4,252,234,252,242,15,16,12,199,255,221,4,252,234,221,4,199, 594 221,4,199,255,252,242,15,16,4,199,252,242,15,16,12,252,234,255,221,4,199,
595 255,252,242,15,16,4,199,252,242,15,16,12,252,234,255,221,4,199,221,4,252, 595 221,4,252,234,255,252,242,15,16,4,252,234,252,242,15,16,12,194,255,221,4,
596 234,255,252,242,15,16,4,252,234,252,242,15,16,12,194,255,221,4,252,234,221, 596 252,234,221,4,194,255,248,158,232,244,149,255,252,233,244,158,255,232,244,
597 4,194,255,248,158,232,244,149,255,252,233,244,158,255,232,244,108,255,15, 597 108,255,15,182,252,236,15,182,192,141,12,194,41,232,137,76,36,4,137,68,36,
598 182,252,236,15,182,192,141,12,194,41,232,137,76,36,4,137,68,36,8,248,33,139, 598 8,248,33,139,108,36,48,137,44,36,137,149,233,137,116,36,24,232,251,1,26,139,
599 108,36,48,137,44,36,137,149,233,137,116,36,24,232,251,1,26,139,149,233,133, 599 149,233,133,192,15,133,244,42,15,182,110,252,255,15,182,78,252,253,139,68,
600 192,15,133,244,42,15,182,110,252,255,15,182,78,252,253,139,68,252,234,4,139, 600 252,234,4,139,44,252,234,137,68,202,4,137,44,202,139,6,15,182,204,15,182,
601 44,252,234,137,68,202,4,137,44,202,139,6,15,182,204,15,182,232,131,198,4, 601 232,131,198,4,193,232,16,252,255,36,171,255,252,247,208,139,4,135,199,68,
602 193,232,16,252,255,36,171,255,252,247,208,139,4,135,199,68,202,4,237,137, 602 202,4,237,137,4,202,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,
603 4,202,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255, 603 255,36,171,255,15,191,192,252,242,15,42,192,252,242,15,17,4,202,255,223,70,
604 15,191,192,252,242,15,42,192,252,242,15,17,4,202,255,223,70,252,254,221,28, 604 252,254,221,28,202,255,252,242,15,16,4,199,252,242,15,17,4,202,255,221,4,
605 202,255,252,242,15,16,4,199,252,242,15,17,4,202,255,221,4,199,221,28,202, 605 199,221,28,202,255,252,247,208,137,68,202,4,139,6,15,182,204,15,182,232,131,
606 255,252,247,208,137,68,202,4,139,6,15,182,204,15,182,232,131,198,4,193,232, 606 198,4,193,232,16,252,255,36,171,255,141,76,202,12,141,68,194,4,189,237,137,
607 16,252,255,36,171,255,141,76,202,12,141,68,194,4,189,237,137,105,252,248, 607 105,252,248,248,1,137,41,131,193,8,57,193,15,134,244,1,139,6,15,182,204,15,
608 248,1,137,41,131,193,8,57,193,15,134,244,1,139,6,15,182,204,15,182,232,131, 608 182,232,131,198,4,193,232,16,252,255,36,171,255,139,106,252,248,139,172,253,
609 198,4,193,232,16,252,255,36,171,255,139,106,252,248,139,172,253,133,233,139, 609 133,233,139,173,233,139,69,4,139,109,0,137,68,202,4,137,44,202,139,6,15,182,
610 173,233,139,69,4,139,109,0,137,68,202,4,137,44,202,139,6,15,182,204,15,182, 610 204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,139,106,252,248,139,
611 232,131,198,4,193,232,16,252,255,36,171,255,139,106,252,248,139,172,253,141, 611 172,253,141,233,128,189,233,0,139,173,233,139,12,194,139,68,194,4,137,77,
612 233,128,189,233,0,139,173,233,139,12,194,139,68,194,4,137,77,0,137,69,4,15, 612 0,137,69,4,15,132,244,247,252,246,133,233,235,15,133,244,248,248,1,139,6,
613 132,244,247,252,246,133,233,235,15,133,244,248,248,1,139,6,15,182,204,15, 613 15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,2,129,232,239,
614 182,232,131,198,4,193,232,16,252,255,36,171,248,2,129,232,239,129,252,248, 614 129,252,248,239,15,134,244,1,252,246,129,233,235,15,132,244,1,135,213,141,
615 239,15,134,244,1,252,246,129,233,235,15,132,244,1,135,213,141,139,233,255, 615 139,233,255,232,251,1,27,137,252,234,252,233,244,1,255,252,247,208,139,106,
616 232,251,1,27,137,252,234,252,233,244,1,255,252,247,208,139,106,252,248,139, 616 252,248,139,172,253,141,233,139,12,135,139,133,233,137,8,199,64,4,237,252,
617 172,253,141,233,139,12,135,139,133,233,137,8,199,64,4,237,252,246,133,233, 617 246,133,233,235,15,133,244,248,248,1,139,6,15,182,204,15,182,232,131,198,
618 235,15,133,244,248,248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16, 618 4,193,232,16,252,255,36,171,248,2,252,246,129,233,235,15,132,244,1,128,189,
619 252,255,36,171,248,2,252,246,129,233,235,15,132,244,1,128,189,233,0,15,132, 619 233,0,15,132,244,1,137,213,137,194,141,139,233,232,251,1,27,137,252,234,252,
620 244,1,137,213,137,194,141,139,233,232,251,1,27,137,252,234,252,233,244,1, 620 233,244,1,255,139,106,252,248,255,252,242,15,16,4,199,255,139,172,253,141,
621 255,139,106,252,248,255,252,242,15,16,4,199,255,139,172,253,141,233,139,141, 621 233,139,141,233,255,252,242,15,17,1,255,221,25,255,252,247,208,139,106,252,
622 233,255,252,242,15,17,1,255,221,25,255,252,247,208,139,106,252,248,139,172, 622 248,139,172,253,141,233,139,141,233,137,65,4,139,6,15,182,204,15,182,232,
623 253,141,233,139,141,233,137,65,4,139,6,15,182,204,15,182,232,131,198,4,193, 623 131,198,4,193,232,16,252,255,36,171,255,141,180,253,134,233,139,108,36,48,
624 232,16,252,255,36,171,255,141,180,253,134,233,139,108,36,48,131,189,233,0, 624 131,189,233,0,15,132,244,247,137,149,233,141,20,202,137,252,233,232,251,1,
625 15,132,244,247,137,149,233,141,20,202,137,252,233,232,251,1,28,139,149,233, 625 28,139,149,233,248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,
626 248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255, 626 255,36,171,255,252,247,208,139,74,252,248,139,4,135,139,108,36,48,137,76,
627 252,247,208,139,74,252,248,139,4,135,139,108,36,48,137,76,36,8,137,68,36, 627 36,8,137,68,36,4,137,44,36,137,149,233,137,116,36,24,232,251,1,29,139,149,
628 4,137,44,36,137,149,233,137,116,36,24,232,251,1,29,139,149,233,15,182,78, 628 233,15,182,78,252,253,137,4,202,199,68,202,4,237,139,6,15,182,204,15,182,
629 252,253,137,4,202,199,68,202,4,237,139,6,15,182,204,15,182,232,131,198,4, 629 232,131,198,4,193,232,16,252,255,36,171,255,139,108,36,48,137,149,233,139,
630 193,232,16,252,255,36,171,255,139,108,36,48,137,149,233,139,139,233,59,139, 630 139,233,59,139,233,137,116,36,24,15,131,244,251,248,1,137,193,37,252,255,
631 233,137,116,36,24,15,131,244,251,248,1,137,193,37,252,255,7,0,0,193,252,233, 631 7,0,0,193,252,233,11,137,76,36,8,61,252,255,7,0,0,15,132,244,249,248,2,137,
632 11,137,76,36,8,61,252,255,7,0,0,15,132,244,249,248,2,137,44,36,137,68,36, 632 44,36,137,68,36,4,232,251,1,30,139,149,233,15,182,78,252,253,137,4,202,199,
633 4,232,251,1,30,139,149,233,15,182,78,252,253,137,4,202,199,68,202,4,237,139, 633 68,202,4,237,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,
634 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,3,184,1,8, 634 171,248,3,184,1,8,0,0,252,233,244,2,248,5,137,252,233,232,251,1,31,15,183,
635 0,0,252,233,244,2,248,5,137,252,233,232,251,1,31,15,183,70,252,254,252,233, 635 70,252,254,252,233,244,1,255,252,247,208,139,108,36,48,139,139,233,137,116,
636 244,1,255,252,247,208,139,108,36,48,139,139,233,137,116,36,24,59,139,233, 636 36,24,59,139,233,137,149,233,15,131,244,249,248,2,139,20,135,137,252,233,
637 137,149,233,15,131,244,249,248,2,139,20,135,137,252,233,232,251,1,32,139, 637 232,251,1,32,139,149,233,15,182,78,252,253,137,4,202,199,68,202,4,237,139,
638 149,233,15,182,78,252,253,137,4,202,199,68,202,4,237,139,6,15,182,204,15, 638 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,3,137,252,
639 182,232,131,198,4,193,232,16,252,255,36,171,248,3,137,252,233,232,251,1,31, 639 233,232,251,1,31,15,183,70,252,254,252,247,208,252,233,244,2,255,252,247,
640 15,183,70,252,254,252,247,208,252,233,244,2,255,252,247,208,139,106,252,248, 640 208,139,106,252,248,139,173,233,139,4,135,252,233,244,159,255,252,247,208,
641 139,173,233,139,4,135,252,233,244,159,255,252,247,208,139,106,252,248,139, 641 139,106,252,248,139,173,233,139,4,135,252,233,244,160,255,15,182,252,236,
642 173,233,139,4,135,252,233,244,160,255,15,182,252,236,15,182,192,129,124,253, 642 15,182,192,129,124,253,252,234,4,239,15,133,244,36,139,44,252,234,129,124,
643 252,234,4,239,15,133,244,36,139,44,252,234,129,124,253,194,4,239,15,135,244, 643 253,194,4,239,15,135,244,251,255,252,242,15,16,4,194,252,242,15,45,192,252,
644 251,255,252,242,15,16,4,194,252,242,15,45,192,252,242,15,42,200,102,15,46, 644 242,15,42,200,102,15,46,193,255,221,4,194,219,20,36,219,4,36,255,15,133,244,
645 193,255,221,4,194,219,20,36,219,4,36,255,15,133,244,36,59,133,233,15,131, 645 36,59,133,233,15,131,244,36,193,224,3,3,133,233,129,120,253,4,239,15,132,
646 244,36,193,224,3,3,133,233,129,120,253,4,239,15,132,244,248,139,40,139,64, 646 244,248,139,40,139,64,4,137,44,202,137,68,202,4,248,1,139,6,15,182,204,15,
647 4,137,44,202,137,68,202,4,248,1,139,6,15,182,204,15,182,232,131,198,4,193, 647 182,232,131,198,4,193,232,16,252,255,36,171,248,2,131,189,233,0,15,132,244,
648 232,16,252,255,36,171,248,2,131,189,233,0,15,132,244,249,139,141,233,252, 648 249,139,141,233,252,246,129,233,235,15,132,244,36,15,182,78,252,253,248,3,
649 246,129,233,235,15,132,244,36,15,182,78,252,253,248,3,255,199,68,202,4,237, 649 255,199,68,202,4,237,252,233,244,1,248,5,129,124,253,194,4,239,15,133,244,
650 252,233,244,1,248,5,129,124,253,194,4,239,15,133,244,36,139,4,194,252,233, 650 36,139,4,194,252,233,244,159,255,15,182,252,236,15,182,192,252,247,208,139,
651 244,159,255,15,182,252,236,15,182,192,252,247,208,139,4,135,129,124,253,252, 651 4,135,129,124,253,252,234,4,239,15,133,244,34,139,44,252,234,248,159,139,
652 234,4,239,15,133,244,34,139,44,252,234,248,159,139,141,233,35,136,233,105, 652 141,233,35,136,233,105,201,239,3,141,233,248,1,129,185,233,239,15,133,244,
653 201,239,3,141,233,248,1,129,185,233,239,15,133,244,250,57,129,233,15,133, 653 250,57,129,233,15,133,244,250,129,121,253,4,239,15,132,244,251,15,182,70,
654 244,250,129,121,253,4,239,15,132,244,251,15,182,70,252,253,139,41,139,73, 654 252,253,139,41,139,73,4,137,44,194,137,76,194,4,248,2,255,139,6,15,182,204,
655 4,137,44,194,137,76,194,4,248,2,255,139,6,15,182,204,15,182,232,131,198,4, 655 15,182,232,131,198,4,193,232,16,252,255,36,171,248,3,15,182,70,252,253,199,
656 193,232,16,252,255,36,171,248,3,15,182,70,252,253,199,68,194,4,237,252,233, 656 68,194,4,237,252,233,244,2,248,4,139,137,233,133,201,15,133,244,1,248,5,139,
657 244,2,248,4,139,137,233,133,201,15,133,244,1,248,5,139,141,233,133,201,15, 657 141,233,133,201,15,132,244,3,252,246,129,233,235,15,133,244,3,252,233,244,
658 132,244,3,252,246,129,233,235,15,133,244,3,252,233,244,34,255,15,182,252, 658 34,255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,35,
659 236,15,182,192,129,124,253,252,234,4,239,15,133,244,35,139,44,252,234,59, 659 139,44,252,234,59,133,233,15,131,244,35,193,224,3,3,133,233,129,120,253,4,
660 133,233,15,131,244,35,193,224,3,3,133,233,129,120,253,4,239,15,132,244,248, 660 239,15,132,244,248,139,40,139,64,4,137,44,202,137,68,202,4,248,1,139,6,15,
661 139,40,139,64,4,137,44,202,137,68,202,4,248,1,139,6,15,182,204,15,182,232, 661 182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,2,131,189,233,
662 131,198,4,193,232,16,252,255,36,171,248,2,131,189,233,0,15,132,244,249,139, 662 0,15,132,244,249,139,141,233,252,246,129,233,235,15,132,244,35,255,15,182,
663 141,233,252,246,129,233,235,15,132,244,35,255,15,182,78,252,253,248,3,199, 663 78,252,253,248,3,199,68,202,4,237,252,233,244,1,255,15,182,252,236,15,182,
664 68,202,4,237,252,233,244,1,255,15,182,252,236,15,182,192,129,124,253,252, 664 192,129,124,253,252,234,4,239,15,133,244,39,139,44,252,234,129,124,253,194,
665 234,4,239,15,133,244,39,139,44,252,234,129,124,253,194,4,239,15,135,244,251, 665 4,239,15,135,244,251,255,15,133,244,39,59,133,233,15,131,244,39,193,224,3,
666 255,15,133,244,39,59,133,233,15,131,244,39,193,224,3,3,133,233,129,120,253, 666 3,133,233,129,120,253,4,239,15,132,244,249,248,1,252,246,133,233,235,15,133,
667 4,239,15,132,244,249,248,1,252,246,133,233,235,15,133,244,253,248,2,139,108, 667 244,253,248,2,139,108,202,4,139,12,202,137,104,4,137,8,139,6,15,182,204,15,
668 202,4,139,12,202,137,104,4,137,8,139,6,15,182,204,15,182,232,131,198,4,193, 668 182,232,131,198,4,193,232,16,252,255,36,171,248,3,131,189,233,0,15,132,244,
669 232,16,252,255,36,171,248,3,131,189,233,0,15,132,244,1,139,141,233,255,252, 669 1,139,141,233,255,252,246,129,233,235,15,132,244,39,15,182,78,252,253,252,
670 246,129,233,235,15,132,244,39,15,182,78,252,253,252,233,244,1,248,5,129,124, 670 233,244,1,248,5,129,124,253,194,4,239,15,133,244,39,139,4,194,252,233,244,
671 253,194,4,239,15,133,244,39,139,4,194,252,233,244,160,248,7,128,165,233,235, 671 160,248,7,128,165,233,235,139,139,233,137,171,233,137,141,233,15,182,78,252,
672 139,139,233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,2,255,15, 672 253,252,233,244,2,255,15,182,252,236,15,182,192,252,247,208,139,4,135,129,
673 182,252,236,15,182,192,252,247,208,139,4,135,129,124,253,252,234,4,239,15, 673 124,253,252,234,4,239,15,133,244,37,139,44,252,234,248,160,139,141,233,35,
674 133,244,37,139,44,252,234,248,160,139,141,233,35,136,233,105,201,239,198, 674 136,233,105,201,239,198,133,233,0,3,141,233,248,1,129,185,233,239,15,133,
675 133,233,0,3,141,233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133, 675 244,251,57,129,233,15,133,244,251,129,121,253,4,239,15,132,244,250,248,2,
676 244,251,129,121,253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15, 676 255,252,246,133,233,235,15,133,244,253,248,3,15,182,70,252,253,139,108,194,
677 133,244,253,248,3,15,182,70,252,253,139,108,194,4,139,4,194,137,105,4,137, 677 4,139,4,194,137,105,4,137,1,139,6,15,182,204,15,182,232,131,198,4,193,232,
678 1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,4,131, 678 16,252,255,36,171,248,4,131,189,233,0,15,132,244,2,137,76,36,16,139,141,233,
679 189,233,0,15,132,244,2,137,76,36,16,139,141,233,252,246,129,233,235,15,132, 679 252,246,129,233,235,15,132,244,37,139,76,36,16,252,233,244,2,248,5,139,137,
680 244,37,139,76,36,16,252,233,244,2,248,5,139,137,233,133,201,15,133,244,1, 680 233,133,201,15,133,244,1,255,139,141,233,133,201,15,132,244,252,252,246,129,
681 255,139,141,233,133,201,15,132,244,252,252,246,129,233,235,15,132,244,37, 681 233,235,15,132,244,37,248,6,137,68,36,16,199,68,36,20,237,137,108,36,12,141,
682 248,6,137,68,36,16,199,68,36,20,237,137,108,36,12,141,68,36,16,137,108,36, 682 68,36,16,137,108,36,4,139,108,36,48,137,68,36,8,137,44,36,137,149,233,137,
683 4,139,108,36,48,137,68,36,8,137,44,36,137,149,233,137,116,36,24,232,251,1, 683 116,36,24,232,251,1,33,139,149,233,139,108,36,12,137,193,252,233,244,2,248,
684 33,139,149,233,139,108,36,12,137,193,252,233,244,2,248,7,128,165,233,235, 684 7,128,165,233,235,139,131,233,137,171,233,137,133,233,252,233,244,3,255,15,
685 139,131,233,137,171,233,137,133,233,252,233,244,3,255,15,182,252,236,15,182, 685 182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,38,139,44,252,
686 192,129,124,253,252,234,4,239,15,133,244,38,139,44,252,234,59,133,233,15, 686 234,59,133,233,15,131,244,38,193,224,3,3,133,233,129,120,253,4,239,15,132,
687 131,244,38,193,224,3,3,133,233,129,120,253,4,239,15,132,244,249,248,1,252, 687 244,249,248,1,252,246,133,233,235,15,133,244,253,248,2,139,108,202,4,139,
688 246,133,233,235,15,133,244,253,248,2,139,108,202,4,139,12,202,137,104,4,137, 688 12,202,137,104,4,137,8,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,
689 8,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,3,131, 689 255,36,171,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252,246,129,233,
690 189,233,0,15,132,244,1,255,139,141,233,252,246,129,233,235,15,132,244,38, 690 235,15,132,244,38,15,182,78,252,253,252,233,244,1,248,7,128,165,233,235,139,
691 15,182,78,252,253,252,233,244,1,248,7,128,165,233,235,139,139,233,137,171, 691 139,233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,2,255,137,124,
692 233,137,141,233,15,182,78,252,253,252,233,244,2,255,137,124,36,16,139,60, 692 36,16,139,60,199,248,1,141,12,202,139,105,252,248,252,246,133,233,235,15,
693 199,248,1,141,12,202,139,105,252,248,252,246,133,233,235,15,133,244,253,248, 693 133,244,253,248,2,139,68,36,20,131,232,1,15,132,244,250,1,252,248,59,133,
694 2,139,68,36,20,131,232,1,15,132,244,250,1,252,248,59,133,233,15,135,244,251, 694 233,15,135,244,251,41,252,248,193,231,3,3,189,233,248,3,139,41,137,47,139,
695 41,252,248,193,231,3,3,189,233,248,3,139,41,137,47,139,105,4,131,193,8,137, 695 105,4,131,193,8,137,111,4,131,199,8,131,232,1,15,133,244,3,248,4,139,124,
696 111,4,131,199,8,131,232,1,15,133,244,3,248,4,139,124,36,16,139,6,15,182,204, 696 36,16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,
697 15,182,232,131,198,4,193,232,16,252,255,36,171,248,5,137,108,36,4,139,108, 697 5,137,108,36,4,139,108,36,48,137,149,233,137,68,36,8,137,44,36,137,116,36,
698 36,48,137,149,233,137,68,36,8,137,44,36,137,116,36,24,232,251,1,34,139,149, 698 24,232,251,1,34,139,149,233,15,182,78,252,253,252,233,244,1,248,7,255,128,
699 233,15,182,78,252,253,252,233,244,1,248,7,255,128,165,233,235,139,131,233, 699 165,233,235,139,131,233,137,171,233,137,133,233,252,233,244,2,255,3,68,36,
700 137,171,233,137,133,233,252,233,244,2,255,3,68,36,20,255,129,124,253,202, 700 20,255,129,124,253,202,4,239,139,44,202,15,133,244,52,141,84,202,8,137,114,
701 4,239,139,44,202,15,133,244,52,141,84,202,8,137,114,252,252,139,181,233,139, 701 252,252,139,181,233,139,14,15,182,252,233,15,182,205,131,198,4,252,255,36,
702 14,15,182,252,233,15,182,205,131,198,4,252,255,36,171,255,141,76,202,8,137, 702 171,255,141,76,202,8,137,215,139,105,252,248,129,121,253,252,252,239,15,133,
703 215,139,105,252,248,129,121,253,252,252,239,15,133,244,28,248,53,139,114, 703 244,28,248,53,139,114,252,252,252,247,198,237,15,133,244,253,248,1,137,106,
704 252,252,252,247,198,237,15,133,244,253,248,1,137,106,252,248,137,68,36,20, 704 252,248,137,68,36,20,131,232,1,15,132,244,249,248,2,139,41,137,47,139,105,
705 131,232,1,15,132,244,249,248,2,139,41,137,47,139,105,4,131,193,8,137,111, 705 4,131,193,8,137,111,4,131,199,8,131,232,1,15,133,244,2,139,106,252,248,248,
706 4,131,199,8,131,232,1,15,133,244,2,139,106,252,248,248,3,139,68,36,20,128, 706 3,139,68,36,20,128,189,233,1,15,135,244,251,248,4,139,181,233,139,14,15,182,
707 189,233,1,15,135,244,251,248,4,139,181,233,139,14,15,182,252,233,15,182,205, 707 252,233,15,182,205,131,198,4,252,255,36,171,248,5,255,252,247,198,237,15,
708 131,198,4,252,255,36,171,248,5,255,252,247,198,237,15,133,244,4,15,182,78, 708 133,244,4,15,182,78,252,253,252,247,209,141,12,202,139,121,252,248,139,191,
709 252,253,252,247,209,141,12,202,139,121,252,248,139,191,233,139,191,233,252, 709 233,139,191,233,252,233,244,4,248,7,129,252,238,239,252,247,198,237,15,133,
710 233,244,4,248,7,129,252,238,239,252,247,198,237,15,133,244,254,41,252,242, 710 244,254,41,252,242,137,215,139,114,252,252,252,233,244,1,248,8,129,198,239,
711 137,215,139,114,252,252,252,233,244,1,248,8,129,198,239,252,233,244,1,255, 711 252,233,244,1,255,141,76,202,8,139,105,232,139,65,252,236,137,41,137,65,4,
712 141,76,202,8,139,105,232,139,65,252,236,137,41,137,65,4,139,105,252,240,139, 712 139,105,252,240,139,65,252,244,137,105,8,137,65,12,139,105,224,139,65,228,
713 65,252,244,137,105,8,137,65,12,139,105,224,139,65,228,137,105,252,248,137, 713 137,105,252,248,137,65,252,252,129,252,248,239,184,237,15,133,244,28,137,
714 65,252,252,129,252,248,239,184,237,15,133,244,28,137,202,137,114,252,252, 714 202,137,114,252,252,139,181,233,139,14,15,182,252,233,15,182,205,131,198,
715 139,181,233,139,14,15,182,252,233,15,182,205,131,198,4,252,255,36,171,255, 715 4,252,255,36,171,255,137,124,36,16,137,92,36,20,139,108,202,252,240,139,68,
716 137,124,36,16,137,92,36,20,139,108,202,252,240,139,68,202,252,248,139,157, 716 202,252,248,139,157,233,131,198,4,139,189,233,248,1,57,216,15,131,244,251,
717 233,131,198,4,139,189,233,248,1,57,216,15,131,244,251,129,124,253,199,4,239, 717 129,124,253,199,4,239,15,132,244,250,255,252,242,15,42,192,255,219,68,202,
718 15,132,244,250,255,252,242,15,42,192,255,219,68,202,252,248,255,139,108,199, 718 252,248,255,139,108,199,4,137,108,202,12,139,44,199,137,108,202,8,131,192,
719 4,137,108,202,12,139,44,199,137,108,202,8,131,192,1,255,137,68,202,252,248, 719 1,255,137,68,202,252,248,248,2,15,183,70,252,254,141,180,253,134,233,248,
720 248,2,15,183,70,252,254,141,180,253,134,233,248,3,139,92,36,20,139,124,36, 720 3,139,92,36,20,139,124,36,16,139,6,15,182,204,15,182,232,131,198,4,193,232,
721 16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,4, 721 16,252,255,36,171,248,4,131,192,1,255,137,68,202,252,248,255,252,233,244,
722 131,192,1,255,137,68,202,252,248,255,252,233,244,1,248,5,41,216,248,6,59, 722 1,248,5,41,216,248,6,59,133,233,15,135,244,3,105,252,248,239,3,189,233,129,
723 133,233,15,135,244,3,105,252,248,239,3,189,233,129,191,233,239,15,132,244, 723 191,233,239,15,132,244,253,141,92,24,1,139,175,233,139,135,233,137,44,202,
724 253,141,92,24,1,139,175,233,139,135,233,137,44,202,137,68,202,4,139,175,233, 724 137,68,202,4,139,175,233,139,135,233,137,108,202,8,137,68,202,12,137,92,202,
725 139,135,233,137,108,202,8,137,68,202,12,137,92,202,252,248,252,233,244,2, 725 252,248,252,233,244,2,248,7,255,131,192,1,252,233,244,6,255,129,124,253,202,
726 248,7,255,131,192,1,252,233,244,6,255,129,124,253,202,252,236,239,15,133, 726 252,236,239,15,133,244,251,139,108,202,232,129,124,253,202,252,244,239,15,
727 244,251,139,108,202,232,129,124,253,202,252,244,239,15,133,244,251,129,124, 727 133,244,251,129,124,253,202,252,252,239,15,133,244,251,128,189,233,235,15,
728 253,202,252,252,239,15,133,244,251,128,189,233,235,15,133,244,251,141,180, 728 133,244,251,141,180,253,134,233,199,68,202,252,248,0,0,0,0,248,1,139,6,15,
729 253,134,233,199,68,202,252,248,0,0,0,0,248,1,139,6,15,182,204,15,182,232, 729 182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,5,198,70,252,252,
730 131,198,4,193,232,16,252,255,36,171,248,5,198,70,252,252,235,141,180,253, 730 235,141,180,253,134,233,198,6,235,252,233,244,1,255,15,182,252,236,15,182,
731 134,233,198,6,235,252,233,244,1,255,15,182,252,236,15,182,192,137,124,36, 731 192,137,124,36,16,141,188,253,194,233,141,12,202,43,122,252,252,133,252,237,
732 16,141,188,253,194,233,141,12,202,43,122,252,252,133,252,237,15,132,244,251, 732 15,132,244,251,141,108,252,233,252,248,57,215,15,131,244,248,248,1,139,71,
733 141,108,252,233,252,248,57,215,15,131,244,248,248,1,139,71,252,248,137,1, 733 252,248,137,1,139,71,252,252,131,199,8,137,65,4,131,193,8,57,252,233,15,131,
734 139,71,252,252,131,199,8,137,65,4,131,193,8,57,252,233,15,131,244,249,57, 734 244,249,57,215,15,130,244,1,248,2,199,65,4,237,131,193,8,57,252,233,15,130,
735 215,15,130,244,1,248,2,199,65,4,237,131,193,8,57,252,233,15,130,244,2,248, 735 244,2,248,3,139,124,36,16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,
736 3,139,124,36,16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, 736 252,255,36,171,248,5,199,68,36,20,1,0,0,0,137,208,41,252,248,15,134,244,3,
737 36,171,248,5,199,68,36,20,1,0,0,0,137,208,41,252,248,15,134,244,3,137,197, 737 137,197,193,252,237,3,131,197,1,137,108,36,20,139,108,36,48,1,200,59,133,
738 193,252,237,3,131,197,1,137,108,36,20,139,108,36,48,1,200,59,133,233,15,135, 738 233,15,135,244,253,248,6,255,139,71,252,248,137,1,139,71,252,252,131,199,
739 244,253,248,6,255,139,71,252,248,137,1,139,71,252,252,131,199,8,137,65,4, 739 8,137,65,4,131,193,8,57,215,15,130,244,6,252,233,244,3,248,7,137,149,233,
740 131,193,8,57,215,15,130,244,6,252,233,244,3,248,7,137,149,233,137,141,233, 740 137,141,233,137,116,36,24,41,215,139,84,36,20,131,252,234,1,137,252,233,232,
741 137,116,36,24,41,215,139,84,36,20,131,252,234,1,137,252,233,232,251,1,0,139, 741 251,1,0,139,149,233,139,141,233,1,215,252,233,244,6,255,193,225,3,255,248,
742 149,233,139,141,233,1,215,252,233,244,6,255,193,225,3,255,248,1,139,114,252, 742 1,139,114,252,252,137,68,36,20,252,247,198,237,15,133,244,253,255,248,13,
743 252,137,68,36,20,252,247,198,237,15,133,244,253,255,248,13,137,215,131,232, 743 137,215,131,232,1,15,132,244,249,248,2,139,44,15,137,111,252,248,139,108,
744 1,15,132,244,249,248,2,139,44,15,137,111,252,248,139,108,15,4,137,111,252, 744 15,4,137,111,252,252,131,199,8,131,232,1,15,133,244,2,248,3,139,68,36,20,
745 252,131,199,8,131,232,1,15,133,244,2,248,3,139,68,36,20,15,182,110,252,255, 745 15,182,110,252,255,248,5,57,197,15,135,244,252,255,139,108,10,4,137,106,252,
746 248,5,57,197,15,135,244,252,255,139,108,10,4,137,106,252,252,139,44,10,137, 746 252,139,44,10,137,106,252,248,255,248,5,56,70,252,255,15,135,244,252,255,
747 106,252,248,255,248,5,56,70,252,255,15,135,244,252,255,15,182,78,252,253, 747 15,182,78,252,253,252,247,209,141,20,202,139,122,252,248,139,191,233,139,
748 252,247,209,141,20,202,139,122,252,248,139,191,233,139,191,233,139,6,15,182, 748 191,233,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,
749 204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,6,255,199,71,252,252, 749 6,255,199,71,252,252,237,131,199,8,255,199,68,194,252,244,237,255,131,192,
750 237,131,199,8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248, 750 1,252,233,244,5,248,7,141,174,233,252,247,197,237,15,133,244,14,41,252,234,
751 7,141,174,233,252,247,197,237,15,133,244,14,41,252,234,255,1,252,233,255, 751 255,1,252,233,255,137,252,245,209,252,237,129,229,239,102,131,172,253,43,
752 137,252,245,209,252,237,129,229,239,102,131,172,253,43,233,1,15,132,244,141, 752 233,1,15,132,244,141,255,141,12,202,255,129,121,253,4,239,15,135,244,54,129,
753 255,141,12,202,255,129,121,253,4,239,15,135,244,54,129,121,253,12,239,15, 753 121,253,12,239,15,135,244,54,255,139,105,20,255,129,252,253,239,15,135,244,
754 135,244,54,255,139,105,20,255,129,252,253,239,15,135,244,54,255,252,242,15, 754 54,255,252,242,15,16,1,252,242,15,16,73,8,255,252,242,15,88,65,16,252,242,
755 16,1,252,242,15,16,73,8,255,252,242,15,88,65,16,252,242,15,17,1,133,252,237, 755 15,17,1,133,252,237,15,136,244,249,255,15,140,244,249,255,102,15,46,200,248,
756 15,136,244,249,255,15,140,244,249,255,102,15,46,200,248,1,252,242,15,17,65, 756 1,252,242,15,17,65,24,255,221,65,8,221,1,255,220,65,16,221,17,221,81,24,133,
757 24,255,221,65,8,221,1,255,220,65,16,221,17,221,81,24,133,252,237,15,136,244, 757 252,237,15,136,244,247,255,221,81,24,15,140,244,247,255,217,201,248,1,255,
758 247,255,221,81,24,15,140,244,247,255,217,201,248,1,255,15,183,70,252,254, 758 15,183,70,252,254,255,15,131,244,248,141,180,253,134,233,255,141,180,253,
759 255,15,131,244,248,141,180,253,134,233,255,141,180,253,134,233,15,183,70, 759 134,233,15,183,70,252,254,15,131,245,255,15,130,244,248,141,180,253,134,233,
760 252,254,15,131,245,255,15,130,244,248,141,180,253,134,233,255,248,3,102,15, 760 255,248,3,102,15,46,193,252,233,244,1,255,141,12,202,139,105,4,129,252,253,
761 46,193,252,233,244,1,255,141,12,202,139,105,4,129,252,253,239,15,132,244, 761 239,15,132,244,247,255,137,105,252,252,139,41,137,105,252,248,252,233,245,
762 247,255,137,105,252,252,139,41,137,105,252,248,252,233,245,255,141,180,253, 762 255,141,180,253,134,233,139,1,137,105,252,252,137,65,252,248,255,139,139,
763 134,233,139,1,137,105,252,252,137,65,252,248,255,139,139,233,139,4,129,139, 763 233,139,4,129,139,128,233,139,108,36,48,137,147,233,137,171,233,252,255,224,
764 128,233,139,108,36,48,137,147,233,137,171,233,252,255,224,255,141,180,253, 764 255,141,180,253,134,233,139,6,15,182,204,15,182,232,131,198,4,193,232,16,
765 134,233,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255, 765 252,255,36,171,255,137,252,245,209,252,237,129,229,239,102,131,172,253,43,
766 137,252,245,209,252,237,129,229,239,102,131,172,253,43,233,1,15,132,244,143, 766 233,1,15,132,244,143,255,139,190,233,139,108,36,48,141,12,202,59,141,233,
767 255,139,190,233,139,108,36,48,141,12,202,59,141,233,15,135,244,23,15,182, 767 15,135,244,23,15,182,142,233,57,200,15,134,244,249,248,2,255,15,183,70,252,
768 142,233,57,200,15,134,244,249,248,2,255,15,183,70,252,254,252,233,245,255, 768 254,252,233,245,255,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,
769 248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,244,3,252,233,244,2, 769 244,3,252,233,244,2,255,141,44,197,237,141,4,194,139,122,252,248,137,104,
770 255,141,44,197,237,141,4,194,139,122,252,248,137,104,252,252,137,120,252, 770 252,252,137,120,252,248,139,108,36,48,141,12,200,59,141,233,15,135,244,22,
771 248,139,108,36,48,141,12,200,59,141,233,15,135,244,22,137,209,137,194,15, 771 137,209,137,194,15,182,174,233,133,252,237,15,132,244,248,248,1,131,193,8,
772 182,174,233,133,252,237,15,132,244,248,248,1,131,193,8,57,209,15,131,244, 772 57,209,15,131,244,249,139,121,252,248,137,56,139,121,252,252,137,120,4,131,
773 249,139,121,252,248,137,56,139,121,252,252,137,120,4,131,192,8,199,65,252, 773 192,8,199,65,252,252,237,131,252,237,1,15,133,244,1,248,2,255,139,190,233,
774 252,237,131,252,237,1,15,133,244,1,248,2,255,139,190,233,139,6,15,182,204, 774 139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,248,3,
775 15,182,232,131,198,4,193,232,16,252,255,36,171,255,248,3,199,64,4,237,131, 775 199,64,4,237,131,192,8,131,252,237,1,15,133,244,3,252,233,244,2,255,139,106,
776 192,8,131,252,237,1,15,133,244,3,252,233,244,2,255,139,106,252,248,139,189, 776 252,248,139,189,233,139,108,36,48,141,68,194,252,248,137,149,233,141,136,
777 233,139,108,36,48,141,68,194,252,248,137,149,233,141,136,233,59,141,233,137, 777 233,59,141,233,137,133,233,255,137,44,36,255,137,124,36,4,137,44,36,255,15,
778 133,233,255,137,44,36,255,137,124,36,4,137,44,36,255,15,135,244,21,199,131, 778 135,244,21,199,131,233,237,255,252,255,215,255,252,255,147,233,255,199,131,
779 233,237,255,252,255,215,255,252,255,147,233,255,199,131,233,237,139,149,233, 779 233,237,139,149,233,141,12,194,252,247,217,3,141,233,139,114,252,252,252,
780 141,12,194,252,247,217,3,141,233,139,114,252,252,252,233,244,12,255,254,0 780 233,244,12,255,254,0
781}; 781};
782 782
783enum { 783enum {
@@ -1555,47 +1555,47 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1555 } 1555 }
1556 dasm_put(Dst, 9534); 1556 dasm_put(Dst, 9534);
1557 dasm_put(Dst, 9619); 1557 dasm_put(Dst, 9619);
1558 dasm_put(Dst, 9750); 1558 dasm_put(Dst, 9749);
1559 dasm_put(Dst, 9949); 1559 dasm_put(Dst, 9955);
1560#if LJ_HASJIT 1560#if LJ_HASJIT
1561 if (sse) { 1561 if (sse) {
1562 dasm_put(Dst, 9972); 1562 dasm_put(Dst, 9962);
1563 dasm_put(Dst, 10029); 1563 dasm_put(Dst, 10019);
1564 dasm_put(Dst, 10120); 1564 dasm_put(Dst, 10110);
1565 } else { 1565 } else {
1566 dasm_put(Dst, 10162); 1566 dasm_put(Dst, 10152);
1567 dasm_put(Dst, 10254); 1567 dasm_put(Dst, 10244);
1568 } 1568 }
1569 dasm_put(Dst, 10300); 1569 dasm_put(Dst, 10290);
1570#endif 1570#endif
1571 dasm_put(Dst, 10304); 1571 dasm_put(Dst, 10294);
1572 if (sse) { 1572 if (sse) {
1573 dasm_put(Dst, 10307); 1573 dasm_put(Dst, 10297);
1574 dasm_put(Dst, 10412); 1574 dasm_put(Dst, 10402);
1575 dasm_put(Dst, 10495); 1575 dasm_put(Dst, 10485);
1576 } else { 1576 } else {
1577 dasm_put(Dst, 10567); 1577 dasm_put(Dst, 10557);
1578 dasm_put(Dst, 10650); 1578 dasm_put(Dst, 10640);
1579 if (cmov) { 1579 if (cmov) {
1580 dasm_put(Dst, 10705); 1580 dasm_put(Dst, 10695);
1581 } else { 1581 } else {
1582 dasm_put(Dst, 10724); 1582 dasm_put(Dst, 10714);
1583 } 1583 }
1584 dasm_put(Dst, 10300); 1584 dasm_put(Dst, 10290);
1585 } 1585 }
1586 dasm_put(Dst, 10765); 1586 dasm_put(Dst, 10755);
1587#if LJ_HASFFI 1587#if LJ_HASFFI
1588#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V) 1588#define DtE(_V) (int)(ptrdiff_t)&(((CCallState *)0)_V)
1589 dasm_put(Dst, 10821, DtE(->spadj)); 1589 dasm_put(Dst, 10811, DtE(->spadj));
1590#if LJ_TARGET_WINDOWS 1590#if LJ_TARGET_WINDOWS
1591 dasm_put(Dst, 10831, DtE(->spadj)); 1591 dasm_put(Dst, 10821, DtE(->spadj));
1592#endif 1592#endif
1593 dasm_put(Dst, 10835, DtE(->nsp), offsetof(CCallState, stack), DtE(->gpr[0]), DtE(->gpr[1]), DtE(->func), DtE(->gpr[0]), DtE(->gpr[1]), DtE(->resx87), DtE(->fpr[0].d[0])); 1593 dasm_put(Dst, 10825, DtE(->nsp), offsetof(CCallState, stack), DtE(->gpr[0]), DtE(->gpr[1]), DtE(->func), DtE(->gpr[0]), DtE(->gpr[1]), DtE(->resx87), DtE(->fpr[0].d[0]));
1594 dasm_put(Dst, 10905, DtE(->fpr[0].f[0])); 1594 dasm_put(Dst, 10895, DtE(->fpr[0].f[0]));
1595#if LJ_TARGET_WINDOWS 1595#if LJ_TARGET_WINDOWS
1596 dasm_put(Dst, 10911, DtE(->spadj)); 1596 dasm_put(Dst, 10901, DtE(->spadj));
1597#endif 1597#endif
1598 dasm_put(Dst, 10915); 1598 dasm_put(Dst, 10905);
1599#endif 1599#endif
1600} 1600}
1601 1601
@@ -1603,7 +1603,7 @@ static void build_subroutines(BuildCtx *ctx, int cmov, int sse)
1603static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) 1603static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1604{ 1604{
1605 int vk = 0; 1605 int vk = 0;
1606 dasm_put(Dst, 10922, defop); 1606 dasm_put(Dst, 10912, defop);
1607 1607
1608 switch (op) { 1608 switch (op) {
1609 1609
@@ -1612,57 +1612,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1612 /* Remember: all ops branch for a true comparison, fall through otherwise. */ 1612 /* Remember: all ops branch for a true comparison, fall through otherwise. */
1613 1613
1614 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT: 1614 case BC_ISLT: case BC_ISGE: case BC_ISLE: case BC_ISGT:
1615 dasm_put(Dst, 10924, LJ_TISNUM, LJ_TISNUM); 1615 dasm_put(Dst, 10914, LJ_TISNUM, LJ_TISNUM);
1616 if (sse) { 1616 if (sse) {
1617 dasm_put(Dst, 10945); 1617 dasm_put(Dst, 10935);
1618 } else { 1618 } else {
1619 dasm_put(Dst, 10960); 1619 dasm_put(Dst, 10950);
1620 if (cmov) { 1620 if (cmov) {
1621 dasm_put(Dst, 10970); 1621 dasm_put(Dst, 10960);
1622 } else { 1622 } else {
1623 dasm_put(Dst, 10976); 1623 dasm_put(Dst, 10966);
1624 } 1624 }
1625 } 1625 }
1626 switch (op) { 1626 switch (op) {
1627 case BC_ISLT: 1627 case BC_ISLT:
1628 dasm_put(Dst, 10983); 1628 dasm_put(Dst, 10973);
1629 break; 1629 break;
1630 case BC_ISGE: 1630 case BC_ISGE:
1631 dasm_put(Dst, 10115); 1631 dasm_put(Dst, 10105);
1632 break; 1632 break;
1633 case BC_ISLE: 1633 case BC_ISLE:
1634 dasm_put(Dst, 6241); 1634 dasm_put(Dst, 6241);
1635 break; 1635 break;
1636 case BC_ISGT: 1636 case BC_ISGT:
1637 dasm_put(Dst, 10988); 1637 dasm_put(Dst, 10978);
1638 break; 1638 break;
1639 default: break; /* Shut up GCC. */ 1639 default: break; /* Shut up GCC. */
1640 } 1640 }
1641 dasm_put(Dst, 10993, -BCBIAS_J*4); 1641 dasm_put(Dst, 10983, -BCBIAS_J*4);
1642 break; 1642 break;
1643 1643
1644 case BC_ISEQV: case BC_ISNEV: 1644 case BC_ISEQV: case BC_ISNEV:
1645 vk = op == BC_ISEQV; 1645 vk = op == BC_ISEQV;
1646 dasm_put(Dst, 11026, LJ_TISNUM, LJ_TISNUM); 1646 dasm_put(Dst, 11016, LJ_TISNUM, LJ_TISNUM);
1647 if (sse) { 1647 if (sse) {
1648 dasm_put(Dst, 11052); 1648 dasm_put(Dst, 11042);
1649 } else { 1649 } else {
1650 dasm_put(Dst, 11064); 1650 dasm_put(Dst, 11054);
1651 if (cmov) { 1651 if (cmov) {
1652 dasm_put(Dst, 10970); 1652 dasm_put(Dst, 10960);
1653 } else { 1653 } else {
1654 dasm_put(Dst, 10976); 1654 dasm_put(Dst, 10966);
1655 } 1655 }
1656 } 1656 }
1657 iseqne_fp: 1657 iseqne_fp:
1658 if (vk) { 1658 if (vk) {
1659 dasm_put(Dst, 11071); 1659 dasm_put(Dst, 11061);
1660 } else { 1660 } else {
1661 dasm_put(Dst, 11080); 1661 dasm_put(Dst, 11070);
1662 } 1662 }
1663 iseqne_end: 1663 iseqne_end:
1664 if (vk) { 1664 if (vk) {
1665 dasm_put(Dst, 11089, -BCBIAS_J*4); 1665 dasm_put(Dst, 11079, -BCBIAS_J*4);
1666 if (!LJ_HASFFI) { 1666 if (!LJ_HASFFI) {
1667 dasm_put(Dst, 4654); 1667 dasm_put(Dst, 4654);
1668 } 1668 }
@@ -1670,597 +1670,597 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
1670 if (!LJ_HASFFI) { 1670 if (!LJ_HASFFI) {
1671 dasm_put(Dst, 4654); 1671 dasm_put(Dst, 4654);
1672 } 1672 }
1673 dasm_put(Dst, 11104, -BCBIAS_J*4); 1673 dasm_put(Dst, 11094, -BCBIAS_J*4);
1674 } 1674 }
1675 dasm_put(Dst, 11007); 1675 dasm_put(Dst, 10997);
1676 if (op == BC_ISEQV || op == BC_ISNEV) { 1676 if (op == BC_ISEQV || op == BC_ISNEV) {
1677 dasm_put(Dst, 11119); 1677 dasm_put(Dst, 11109);
1678 if (LJ_HASFFI) { 1678 if (LJ_HASFFI) {
1679 dasm_put(Dst, 11122, LJ_TCDATA, LJ_TCDATA); 1679 dasm_put(Dst, 11112, LJ_TCDATA, LJ_TCDATA);
1680 } 1680 }
1681 dasm_put(Dst, 11141, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq); 1681 dasm_put(Dst, 11131, LJ_TISPRI, LJ_TISTABUD, Dt6(->metatable), Dt6(->nomm), 1<<MM_eq);
1682 if (vk) { 1682 if (vk) {
1683 dasm_put(Dst, 11197); 1683 dasm_put(Dst, 11187);
1684 } else { 1684 } else {
1685 dasm_put(Dst, 11201); 1685 dasm_put(Dst, 11191);
1686 } 1686 }
1687 dasm_put(Dst, 11207); 1687 dasm_put(Dst, 11197);
1688 } else if (LJ_HASFFI) { 1688 } else if (LJ_HASFFI) {
1689 dasm_put(Dst, 11212, LJ_TCDATA); 1689 dasm_put(Dst, 11202, LJ_TCDATA);
1690 } 1690 }
1691 break; 1691 break;
1692 case BC_ISEQS: case BC_ISNES: 1692 case BC_ISEQS: case BC_ISNES:
1693 vk = op == BC_ISEQS; 1693 vk = op == BC_ISEQS;
1694 dasm_put(Dst, 11227, LJ_TSTR); 1694 dasm_put(Dst, 11217, LJ_TSTR);
1695 iseqne_test: 1695 iseqne_test:
1696 if (vk) { 1696 if (vk) {
1697 dasm_put(Dst, 11075); 1697 dasm_put(Dst, 11065);
1698 } else { 1698 } else {
1699 dasm_put(Dst, 2863); 1699 dasm_put(Dst, 2863);
1700 } 1700 }
1701 goto iseqne_end; 1701 goto iseqne_end;
1702 case BC_ISEQN: case BC_ISNEN: 1702 case BC_ISEQN: case BC_ISNEN:
1703 vk = op == BC_ISEQN; 1703 vk = op == BC_ISEQN;
1704 dasm_put(Dst, 11252, LJ_TISNUM); 1704 dasm_put(Dst, 11242, LJ_TISNUM);
1705 if (sse) { 1705 if (sse) {
1706 dasm_put(Dst, 11268); 1706 dasm_put(Dst, 11258);
1707 } else { 1707 } else {
1708 dasm_put(Dst, 11280); 1708 dasm_put(Dst, 11270);
1709 if (cmov) { 1709 if (cmov) {
1710 dasm_put(Dst, 10970); 1710 dasm_put(Dst, 10960);
1711 } else { 1711 } else {
1712 dasm_put(Dst, 10976); 1712 dasm_put(Dst, 10966);
1713 } 1713 }
1714 } 1714 }
1715 goto iseqne_fp; 1715 goto iseqne_fp;
1716 case BC_ISEQP: case BC_ISNEP: 1716 case BC_ISEQP: case BC_ISNEP:
1717 vk = op == BC_ISEQP; 1717 vk = op == BC_ISEQP;
1718 dasm_put(Dst, 11287); 1718 dasm_put(Dst, 11277);
1719 if (!LJ_HASFFI) goto iseqne_test; 1719 if (!LJ_HASFFI) goto iseqne_test;
1720 if (vk) { 1720 if (vk) {
1721 dasm_put(Dst, 11300, -BCBIAS_J*4, LJ_TCDATA); 1721 dasm_put(Dst, 11290, -BCBIAS_J*4, LJ_TCDATA);
1722 } else { 1722 } else {
1723 dasm_put(Dst, 11349, LJ_TCDATA, -BCBIAS_J*4); 1723 dasm_put(Dst, 11339, LJ_TCDATA, -BCBIAS_J*4);
1724 } 1724 }
1725 break; 1725 break;
1726 1726
1727 /* -- Unary test and copy ops ------------------------------------------- */ 1727 /* -- Unary test and copy ops ------------------------------------------- */
1728 1728
1729 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: 1729 case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF:
1730 dasm_put(Dst, 11392, LJ_TISTRUECOND); 1730 dasm_put(Dst, 11382, LJ_TISTRUECOND);
1731 if (op == BC_IST || op == BC_ISTC) { 1731 if (op == BC_IST || op == BC_ISTC) {
1732 dasm_put(Dst, 11404); 1732 dasm_put(Dst, 11394);
1733 } else { 1733 } else {
1734 dasm_put(Dst, 11409); 1734 dasm_put(Dst, 11399);
1735 } 1735 }
1736 if (op == BC_ISTC || op == BC_ISFC) { 1736 if (op == BC_ISTC || op == BC_ISFC) {
1737 dasm_put(Dst, 11414); 1737 dasm_put(Dst, 11404);
1738 } 1738 }
1739 dasm_put(Dst, 11425, -BCBIAS_J*4); 1739 dasm_put(Dst, 11415, -BCBIAS_J*4);
1740 break; 1740 break;
1741 1741
1742 /* -- Unary ops --------------------------------------------------------- */ 1742 /* -- Unary ops --------------------------------------------------------- */
1743 1743
1744 case BC_MOV: 1744 case BC_MOV:
1745 dasm_put(Dst, 11456); 1745 dasm_put(Dst, 11446);
1746 break; 1746 break;
1747 case BC_NOT: 1747 case BC_NOT:
1748 dasm_put(Dst, 11489, LJ_TISTRUECOND, LJ_TTRUE); 1748 dasm_put(Dst, 11479, LJ_TISTRUECOND, LJ_TTRUE);
1749 break; 1749 break;
1750 case BC_UNM: 1750 case BC_UNM:
1751 dasm_put(Dst, 11524, LJ_TISNUM); 1751 dasm_put(Dst, 11514, LJ_TISNUM);
1752 if (sse) { 1752 if (sse) {
1753 dasm_put(Dst, 11535); 1753 dasm_put(Dst, 11525);
1754 } else { 1754 } else {
1755 dasm_put(Dst, 11565); 1755 dasm_put(Dst, 11555);
1756 } 1756 }
1757 dasm_put(Dst, 11007); 1757 dasm_put(Dst, 10997);
1758 break; 1758 break;
1759 case BC_LEN: 1759 case BC_LEN:
1760 dasm_put(Dst, 11574, LJ_TSTR); 1760 dasm_put(Dst, 11564, LJ_TSTR);
1761 if (sse) { 1761 if (sse) {
1762 dasm_put(Dst, 11588, Dt5(->len)); 1762 dasm_put(Dst, 11578, Dt5(->len));
1763 } else { 1763 } else {
1764 dasm_put(Dst, 11606, Dt5(->len)); 1764 dasm_put(Dst, 11596, Dt5(->len));
1765 } 1765 }
1766 dasm_put(Dst, 11615, LJ_TTAB); 1766 dasm_put(Dst, 11605, LJ_TTAB);
1767 if (sse) { 1767 if (sse) {
1768 dasm_put(Dst, 11655); 1768 dasm_put(Dst, 11645);
1769 } else { 1769 } else {
1770 dasm_put(Dst, 11664); 1770 dasm_put(Dst, 11654);
1771 } 1771 }
1772 dasm_put(Dst, 11674); 1772 dasm_put(Dst, 11664);
1773 break; 1773 break;
1774 1774
1775 /* -- Binary ops -------------------------------------------------------- */ 1775 /* -- Binary ops -------------------------------------------------------- */
1776 1776
1777 1777
1778 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: 1778 case BC_ADDVN: case BC_ADDNV: case BC_ADDVV:
1779 dasm_put(Dst, 11684); 1779 dasm_put(Dst, 11674);
1780 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1780 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1781 switch (vk) { 1781 switch (vk) {
1782 case 0: 1782 case 0:
1783 dasm_put(Dst, 11692, LJ_TISNUM); 1783 dasm_put(Dst, 11682, LJ_TISNUM);
1784 if (sse) { 1784 if (sse) {
1785 dasm_put(Dst, 11704); 1785 dasm_put(Dst, 11694);
1786 } else { 1786 } else {
1787 dasm_put(Dst, 11718); 1787 dasm_put(Dst, 11708);
1788 } 1788 }
1789 break; 1789 break;
1790 case 1: 1790 case 1:
1791 dasm_put(Dst, 11726, LJ_TISNUM); 1791 dasm_put(Dst, 11716, LJ_TISNUM);
1792 if (sse) { 1792 if (sse) {
1793 dasm_put(Dst, 11738); 1793 dasm_put(Dst, 11728);
1794 } else { 1794 } else {
1795 dasm_put(Dst, 11752); 1795 dasm_put(Dst, 11742);
1796 } 1796 }
1797 break; 1797 break;
1798 default: 1798 default:
1799 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 1799 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
1800 if (sse) { 1800 if (sse) {
1801 dasm_put(Dst, 11782); 1801 dasm_put(Dst, 11772);
1802 } else { 1802 } else {
1803 dasm_put(Dst, 11796); 1803 dasm_put(Dst, 11786);
1804 } 1804 }
1805 break; 1805 break;
1806 } 1806 }
1807 if (sse) { 1807 if (sse) {
1808 dasm_put(Dst, 11558); 1808 dasm_put(Dst, 11548);
1809 } else { 1809 } else {
1810 dasm_put(Dst, 11570); 1810 dasm_put(Dst, 11560);
1811 } 1811 }
1812 dasm_put(Dst, 11007); 1812 dasm_put(Dst, 10997);
1813 break; 1813 break;
1814 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: 1814 case BC_SUBVN: case BC_SUBNV: case BC_SUBVV:
1815 dasm_put(Dst, 11684); 1815 dasm_put(Dst, 11674);
1816 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1816 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1817 switch (vk) { 1817 switch (vk) {
1818 case 0: 1818 case 0:
1819 dasm_put(Dst, 11692, LJ_TISNUM); 1819 dasm_put(Dst, 11682, LJ_TISNUM);
1820 if (sse) { 1820 if (sse) {
1821 dasm_put(Dst, 11804); 1821 dasm_put(Dst, 11794);
1822 } else { 1822 } else {
1823 dasm_put(Dst, 11818); 1823 dasm_put(Dst, 11808);
1824 } 1824 }
1825 break; 1825 break;
1826 case 1: 1826 case 1:
1827 dasm_put(Dst, 11726, LJ_TISNUM); 1827 dasm_put(Dst, 11716, LJ_TISNUM);
1828 if (sse) { 1828 if (sse) {
1829 dasm_put(Dst, 11826); 1829 dasm_put(Dst, 11816);
1830 } else { 1830 } else {
1831 dasm_put(Dst, 11840); 1831 dasm_put(Dst, 11830);
1832 } 1832 }
1833 break; 1833 break;
1834 default: 1834 default:
1835 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 1835 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
1836 if (sse) { 1836 if (sse) {
1837 dasm_put(Dst, 11848); 1837 dasm_put(Dst, 11838);
1838 } else { 1838 } else {
1839 dasm_put(Dst, 11862); 1839 dasm_put(Dst, 11852);
1840 } 1840 }
1841 break; 1841 break;
1842 } 1842 }
1843 if (sse) { 1843 if (sse) {
1844 dasm_put(Dst, 11558); 1844 dasm_put(Dst, 11548);
1845 } else { 1845 } else {
1846 dasm_put(Dst, 11570); 1846 dasm_put(Dst, 11560);
1847 } 1847 }
1848 dasm_put(Dst, 11007); 1848 dasm_put(Dst, 10997);
1849 break; 1849 break;
1850 case BC_MULVN: case BC_MULNV: case BC_MULVV: 1850 case BC_MULVN: case BC_MULNV: case BC_MULVV:
1851 dasm_put(Dst, 11684); 1851 dasm_put(Dst, 11674);
1852 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1852 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1853 switch (vk) { 1853 switch (vk) {
1854 case 0: 1854 case 0:
1855 dasm_put(Dst, 11692, LJ_TISNUM); 1855 dasm_put(Dst, 11682, LJ_TISNUM);
1856 if (sse) { 1856 if (sse) {
1857 dasm_put(Dst, 11870); 1857 dasm_put(Dst, 11860);
1858 } else { 1858 } else {
1859 dasm_put(Dst, 11884); 1859 dasm_put(Dst, 11874);
1860 } 1860 }
1861 break; 1861 break;
1862 case 1: 1862 case 1:
1863 dasm_put(Dst, 11726, LJ_TISNUM); 1863 dasm_put(Dst, 11716, LJ_TISNUM);
1864 if (sse) { 1864 if (sse) {
1865 dasm_put(Dst, 11892); 1865 dasm_put(Dst, 11882);
1866 } else { 1866 } else {
1867 dasm_put(Dst, 11906); 1867 dasm_put(Dst, 11896);
1868 } 1868 }
1869 break; 1869 break;
1870 default: 1870 default:
1871 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 1871 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
1872 if (sse) { 1872 if (sse) {
1873 dasm_put(Dst, 11914); 1873 dasm_put(Dst, 11904);
1874 } else { 1874 } else {
1875 dasm_put(Dst, 11928); 1875 dasm_put(Dst, 11918);
1876 } 1876 }
1877 break; 1877 break;
1878 } 1878 }
1879 if (sse) { 1879 if (sse) {
1880 dasm_put(Dst, 11558); 1880 dasm_put(Dst, 11548);
1881 } else { 1881 } else {
1882 dasm_put(Dst, 11570); 1882 dasm_put(Dst, 11560);
1883 } 1883 }
1884 dasm_put(Dst, 11007); 1884 dasm_put(Dst, 10997);
1885 break; 1885 break;
1886 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: 1886 case BC_DIVVN: case BC_DIVNV: case BC_DIVVV:
1887 dasm_put(Dst, 11684); 1887 dasm_put(Dst, 11674);
1888 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1888 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1889 switch (vk) { 1889 switch (vk) {
1890 case 0: 1890 case 0:
1891 dasm_put(Dst, 11692, LJ_TISNUM); 1891 dasm_put(Dst, 11682, LJ_TISNUM);
1892 if (sse) { 1892 if (sse) {
1893 dasm_put(Dst, 11936); 1893 dasm_put(Dst, 11926);
1894 } else { 1894 } else {
1895 dasm_put(Dst, 11950); 1895 dasm_put(Dst, 11940);
1896 } 1896 }
1897 break; 1897 break;
1898 case 1: 1898 case 1:
1899 dasm_put(Dst, 11726, LJ_TISNUM); 1899 dasm_put(Dst, 11716, LJ_TISNUM);
1900 if (sse) { 1900 if (sse) {
1901 dasm_put(Dst, 11958); 1901 dasm_put(Dst, 11948);
1902 } else { 1902 } else {
1903 dasm_put(Dst, 11972); 1903 dasm_put(Dst, 11962);
1904 } 1904 }
1905 break; 1905 break;
1906 default: 1906 default:
1907 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 1907 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
1908 if (sse) { 1908 if (sse) {
1909 dasm_put(Dst, 11980); 1909 dasm_put(Dst, 11970);
1910 } else { 1910 } else {
1911 dasm_put(Dst, 11994); 1911 dasm_put(Dst, 11984);
1912 } 1912 }
1913 break; 1913 break;
1914 } 1914 }
1915 if (sse) { 1915 if (sse) {
1916 dasm_put(Dst, 11558); 1916 dasm_put(Dst, 11548);
1917 } else { 1917 } else {
1918 dasm_put(Dst, 11570); 1918 dasm_put(Dst, 11560);
1919 } 1919 }
1920 dasm_put(Dst, 11007); 1920 dasm_put(Dst, 10997);
1921 break; 1921 break;
1922 case BC_MODVN: 1922 case BC_MODVN:
1923 dasm_put(Dst, 11684); 1923 dasm_put(Dst, 11674);
1924 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1924 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1925 switch (vk) { 1925 switch (vk) {
1926 case 0: 1926 case 0:
1927 dasm_put(Dst, 11692, LJ_TISNUM); 1927 dasm_put(Dst, 11682, LJ_TISNUM);
1928 if (sse) { 1928 if (sse) {
1929 dasm_put(Dst, 12002); 1929 dasm_put(Dst, 11992);
1930 } else { 1930 } else {
1931 dasm_put(Dst, 12016); 1931 dasm_put(Dst, 12006);
1932 } 1932 }
1933 break; 1933 break;
1934 case 1: 1934 case 1:
1935 dasm_put(Dst, 11726, LJ_TISNUM); 1935 dasm_put(Dst, 11716, LJ_TISNUM);
1936 if (sse) { 1936 if (sse) {
1937 dasm_put(Dst, 12024); 1937 dasm_put(Dst, 12014);
1938 } else { 1938 } else {
1939 dasm_put(Dst, 12038); 1939 dasm_put(Dst, 12028);
1940 } 1940 }
1941 break; 1941 break;
1942 default: 1942 default:
1943 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 1943 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
1944 if (sse) { 1944 if (sse) {
1945 dasm_put(Dst, 12046); 1945 dasm_put(Dst, 12036);
1946 } else { 1946 } else {
1947 dasm_put(Dst, 12060); 1947 dasm_put(Dst, 12050);
1948 } 1948 }
1949 break; 1949 break;
1950 } 1950 }
1951 dasm_put(Dst, 12068); 1951 dasm_put(Dst, 12058);
1952 if (sse) { 1952 if (sse) {
1953 dasm_put(Dst, 11558); 1953 dasm_put(Dst, 11548);
1954 } else { 1954 } else {
1955 dasm_put(Dst, 11570); 1955 dasm_put(Dst, 11560);
1956 } 1956 }
1957 dasm_put(Dst, 11007); 1957 dasm_put(Dst, 10997);
1958 break; 1958 break;
1959 case BC_MODNV: case BC_MODVV: 1959 case BC_MODNV: case BC_MODVV:
1960 dasm_put(Dst, 11684); 1960 dasm_put(Dst, 11674);
1961 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1961 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1962 switch (vk) { 1962 switch (vk) {
1963 case 0: 1963 case 0:
1964 dasm_put(Dst, 11692, LJ_TISNUM); 1964 dasm_put(Dst, 11682, LJ_TISNUM);
1965 if (sse) { 1965 if (sse) {
1966 dasm_put(Dst, 12002); 1966 dasm_put(Dst, 11992);
1967 } else { 1967 } else {
1968 dasm_put(Dst, 12016); 1968 dasm_put(Dst, 12006);
1969 } 1969 }
1970 break; 1970 break;
1971 case 1: 1971 case 1:
1972 dasm_put(Dst, 11726, LJ_TISNUM); 1972 dasm_put(Dst, 11716, LJ_TISNUM);
1973 if (sse) { 1973 if (sse) {
1974 dasm_put(Dst, 12024); 1974 dasm_put(Dst, 12014);
1975 } else { 1975 } else {
1976 dasm_put(Dst, 12038); 1976 dasm_put(Dst, 12028);
1977 } 1977 }
1978 break; 1978 break;
1979 default: 1979 default:
1980 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 1980 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
1981 if (sse) { 1981 if (sse) {
1982 dasm_put(Dst, 12046); 1982 dasm_put(Dst, 12036);
1983 } else { 1983 } else {
1984 dasm_put(Dst, 12060); 1984 dasm_put(Dst, 12050);
1985 } 1985 }
1986 break; 1986 break;
1987 } 1987 }
1988 dasm_put(Dst, 12074); 1988 dasm_put(Dst, 12064);
1989 break; 1989 break;
1990 case BC_POW: 1990 case BC_POW:
1991 dasm_put(Dst, 11684); 1991 dasm_put(Dst, 11674);
1992 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); 1992 vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN);
1993 switch (vk) { 1993 switch (vk) {
1994 case 0: 1994 case 0:
1995 dasm_put(Dst, 11692, LJ_TISNUM); 1995 dasm_put(Dst, 11682, LJ_TISNUM);
1996 if (sse) { 1996 if (sse) {
1997 dasm_put(Dst, 12002); 1997 dasm_put(Dst, 11992);
1998 } else { 1998 } else {
1999 dasm_put(Dst, 12016); 1999 dasm_put(Dst, 12006);
2000 } 2000 }
2001 break; 2001 break;
2002 case 1: 2002 case 1:
2003 dasm_put(Dst, 11726, LJ_TISNUM); 2003 dasm_put(Dst, 11716, LJ_TISNUM);
2004 if (sse) { 2004 if (sse) {
2005 dasm_put(Dst, 12024); 2005 dasm_put(Dst, 12014);
2006 } else { 2006 } else {
2007 dasm_put(Dst, 12038); 2007 dasm_put(Dst, 12028);
2008 } 2008 }
2009 break; 2009 break;
2010 default: 2010 default:
2011 dasm_put(Dst, 11760, LJ_TISNUM, LJ_TISNUM); 2011 dasm_put(Dst, 11750, LJ_TISNUM, LJ_TISNUM);
2012 if (sse) { 2012 if (sse) {
2013 dasm_put(Dst, 12046); 2013 dasm_put(Dst, 12036);
2014 } else { 2014 } else {
2015 dasm_put(Dst, 12060); 2015 dasm_put(Dst, 12050);
2016 } 2016 }
2017 break; 2017 break;
2018 } 2018 }
2019 dasm_put(Dst, 12079); 2019 dasm_put(Dst, 12069);
2020 if (sse) { 2020 if (sse) {
2021 dasm_put(Dst, 11558); 2021 dasm_put(Dst, 11548);
2022 } else { 2022 } else {
2023 dasm_put(Dst, 11570); 2023 dasm_put(Dst, 11560);
2024 } 2024 }
2025 dasm_put(Dst, 11007); 2025 dasm_put(Dst, 10997);
2026 break; 2026 break;
2027 2027
2028 case BC_CAT: 2028 case BC_CAT:
2029 dasm_put(Dst, 12083, Dt1(->base), Dt1(->base)); 2029 dasm_put(Dst, 12073, Dt1(->base), Dt1(->base));
2030 break; 2030 break;
2031 2031
2032 /* -- Constant ops ------------------------------------------------------ */ 2032 /* -- Constant ops ------------------------------------------------------ */
2033 2033
2034 case BC_KSTR: 2034 case BC_KSTR:
2035 dasm_put(Dst, 12177, LJ_TSTR); 2035 dasm_put(Dst, 12167, LJ_TSTR);
2036 break; 2036 break;
2037 case BC_KCDATA: 2037 case BC_KCDATA:
2038#if LJ_HASFFI 2038#if LJ_HASFFI
2039 dasm_put(Dst, 12177, LJ_TCDATA); 2039 dasm_put(Dst, 12167, LJ_TCDATA);
2040#endif 2040#endif
2041 break; 2041 break;
2042 case BC_KSHORT: 2042 case BC_KSHORT:
2043 if (sse) { 2043 if (sse) {
2044 dasm_put(Dst, 12210); 2044 dasm_put(Dst, 12200);
2045 } else { 2045 } else {
2046 dasm_put(Dst, 12225); 2046 dasm_put(Dst, 12215);
2047 } 2047 }
2048 dasm_put(Dst, 11007); 2048 dasm_put(Dst, 10997);
2049 break; 2049 break;
2050 case BC_KNUM: 2050 case BC_KNUM:
2051 if (sse) { 2051 if (sse) {
2052 dasm_put(Dst, 12233); 2052 dasm_put(Dst, 12223);
2053 } else { 2053 } else {
2054 dasm_put(Dst, 12246); 2054 dasm_put(Dst, 12236);
2055 } 2055 }
2056 dasm_put(Dst, 11007); 2056 dasm_put(Dst, 10997);
2057 break; 2057 break;
2058 case BC_KPRI: 2058 case BC_KPRI:
2059 dasm_put(Dst, 12253); 2059 dasm_put(Dst, 12243);
2060 break; 2060 break;
2061 case BC_KNIL: 2061 case BC_KNIL:
2062 dasm_put(Dst, 12279, LJ_TNIL); 2062 dasm_put(Dst, 12269, LJ_TNIL);
2063 break; 2063 break;
2064 2064
2065 /* -- Upvalue and function ops ------------------------------------------ */ 2065 /* -- Upvalue and function ops ------------------------------------------ */
2066 2066
2067 case BC_UGET: 2067 case BC_UGET:
2068 dasm_put(Dst, 12325, offsetof(GCfuncL, uvptr), DtA(->v)); 2068 dasm_put(Dst, 12315, offsetof(GCfuncL, uvptr), DtA(->v));
2069 break; 2069 break;
2070 case BC_USETV: 2070 case BC_USETV:
2071#define TV2MARKOFS \ 2071#define TV2MARKOFS \
2072 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) 2072 ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv))
2073 dasm_put(Dst, 12369, 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); 2073 dasm_put(Dst, 12359, 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);
2074 dasm_put(Dst, 12459); 2074 dasm_put(Dst, 12449);
2075 break; 2075 break;
2076#undef TV2MARKOFS 2076#undef TV2MARKOFS
2077 case BC_USETS: 2077 case BC_USETS:
2078 dasm_put(Dst, 12471, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); 2078 dasm_put(Dst, 12461, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G);
2079 break; 2079 break;
2080 case BC_USETN: 2080 case BC_USETN:
2081 dasm_put(Dst, 12562); 2081 dasm_put(Dst, 12552);
2082 if (sse) { 2082 if (sse) {
2083 dasm_put(Dst, 12567); 2083 dasm_put(Dst, 12557);
2084 } else { 2084 } else {
2085 dasm_put(Dst, 11283); 2085 dasm_put(Dst, 11273);
2086 } 2086 }
2087 dasm_put(Dst, 12574, offsetof(GCfuncL, uvptr), DtA(->v)); 2087 dasm_put(Dst, 12564, offsetof(GCfuncL, uvptr), DtA(->v));
2088 if (sse) { 2088 if (sse) {
2089 dasm_put(Dst, 12583); 2089 dasm_put(Dst, 12573);
2090 } else { 2090 } else {
2091 dasm_put(Dst, 12589); 2091 dasm_put(Dst, 12579);
2092 } 2092 }
2093 dasm_put(Dst, 11007); 2093 dasm_put(Dst, 10997);
2094 break; 2094 break;
2095 case BC_USETP: 2095 case BC_USETP:
2096 dasm_put(Dst, 12592, offsetof(GCfuncL, uvptr), DtA(->v)); 2096 dasm_put(Dst, 12582, offsetof(GCfuncL, uvptr), DtA(->v));
2097 break; 2097 break;
2098 case BC_UCLO: 2098 case BC_UCLO:
2099 dasm_put(Dst, 12629, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); 2099 dasm_put(Dst, 12619, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base));
2100 break; 2100 break;
2101 2101
2102 case BC_FNEW: 2102 case BC_FNEW:
2103 dasm_put(Dst, 12683, Dt1(->base), Dt1(->base), LJ_TFUNC); 2103 dasm_put(Dst, 12673, Dt1(->base), Dt1(->base), LJ_TFUNC);
2104 break; 2104 break;
2105 2105
2106 /* -- Table ops --------------------------------------------------------- */ 2106 /* -- Table ops --------------------------------------------------------- */
2107 2107
2108 case BC_TNEW: 2108 case BC_TNEW:
2109 dasm_put(Dst, 12754, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); 2109 dasm_put(Dst, 12744, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB);
2110 break; 2110 break;
2111 case BC_TDUP: 2111 case BC_TDUP:
2112 dasm_put(Dst, 12880, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); 2112 dasm_put(Dst, 12870, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB);
2113 break; 2113 break;
2114 2114
2115 case BC_GGET: 2115 case BC_GGET:
2116 dasm_put(Dst, 12972, Dt7(->env)); 2116 dasm_put(Dst, 12962, Dt7(->env));
2117 break; 2117 break;
2118 case BC_GSET: 2118 case BC_GSET:
2119 dasm_put(Dst, 12990, Dt7(->env)); 2119 dasm_put(Dst, 12980, Dt7(->env));
2120 break; 2120 break;
2121 2121
2122 case BC_TGETV: 2122 case BC_TGETV:
2123 dasm_put(Dst, 13008, LJ_TTAB, LJ_TISNUM); 2123 dasm_put(Dst, 12998, LJ_TTAB, LJ_TISNUM);
2124 if (sse) { 2124 if (sse) {
2125 dasm_put(Dst, 13041); 2125 dasm_put(Dst, 13031);
2126 } else { 2126 } else {
2127 dasm_put(Dst, 13062); 2127 dasm_put(Dst, 13052);
2128 if (cmov) { 2128 if (cmov) {
2129 dasm_put(Dst, 10970); 2129 dasm_put(Dst, 10960);
2130 } else { 2130 } else {
2131 dasm_put(Dst, 10976); 2131 dasm_put(Dst, 10966);
2132 } 2132 }
2133 dasm_put(Dst, 2573); 2133 dasm_put(Dst, 2573);
2134 } 2134 }
2135 dasm_put(Dst, 13072, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2135 dasm_put(Dst, 13062, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2136 dasm_put(Dst, 13160, LJ_TNIL, LJ_TSTR); 2136 dasm_put(Dst, 13150, LJ_TNIL, LJ_TSTR);
2137 break; 2137 break;
2138 case BC_TGETS: 2138 case BC_TGETS:
2139 dasm_put(Dst, 13189, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 2139 dasm_put(Dst, 13179, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
2140 dasm_put(Dst, 13277, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2140 dasm_put(Dst, 13267, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2141 break; 2141 break;
2142 case BC_TGETB: 2142 case BC_TGETB:
2143 dasm_put(Dst, 13347, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index); 2143 dasm_put(Dst, 13337, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_index);
2144 dasm_put(Dst, 13446, LJ_TNIL); 2144 dasm_put(Dst, 13436, LJ_TNIL);
2145 break; 2145 break;
2146 2146
2147 case BC_TSETV: 2147 case BC_TSETV:
2148 dasm_put(Dst, 13463, LJ_TTAB, LJ_TISNUM); 2148 dasm_put(Dst, 13453, LJ_TTAB, LJ_TISNUM);
2149 if (sse) { 2149 if (sse) {
2150 dasm_put(Dst, 13041); 2150 dasm_put(Dst, 13031);
2151 } else { 2151 } else {
2152 dasm_put(Dst, 13062); 2152 dasm_put(Dst, 13052);
2153 if (cmov) { 2153 if (cmov) {
2154 dasm_put(Dst, 10970); 2154 dasm_put(Dst, 10960);
2155 } else { 2155 } else {
2156 dasm_put(Dst, 10976); 2156 dasm_put(Dst, 10966);
2157 } 2157 }
2158 dasm_put(Dst, 2573); 2158 dasm_put(Dst, 2573);
2159 } 2159 }
2160 dasm_put(Dst, 13496, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable)); 2160 dasm_put(Dst, 13486, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable));
2161 dasm_put(Dst, 13579, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2161 dasm_put(Dst, 13569, Dt6(->nomm), 1<<MM_newindex, LJ_TSTR, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2162 break; 2162 break;
2163 case BC_TSETS: 2163 case BC_TSETS:
2164 dasm_put(Dst, 13641, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); 2164 dasm_put(Dst, 13631, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL);
2165 dasm_put(Dst, 13716, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next)); 2165 dasm_put(Dst, 13706, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, DtB(->next));
2166 dasm_put(Dst, 13808, 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)); 2166 dasm_put(Dst, 13798, 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));
2167 break; 2167 break;
2168 case BC_TSETB: 2168 case BC_TSETB:
2169 dasm_put(Dst, 13904, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); 2169 dasm_put(Dst, 13894, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable));
2170 dasm_put(Dst, 14002, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2170 dasm_put(Dst, 13992, Dt6(->metatable), Dt6(->nomm), 1<<MM_newindex, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2171 break; 2171 break;
2172 2172
2173 case BC_TSETM: 2173 case BC_TSETM:
2174 dasm_put(Dst, 14048, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); 2174 dasm_put(Dst, 14038, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base));
2175 dasm_put(Dst, 14197, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); 2175 dasm_put(Dst, 14187, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist));
2176 break; 2176 break;
2177 2177
2178 /* -- Calls and vararg handling ----------------------------------------- */ 2178 /* -- Calls and vararg handling ----------------------------------------- */
2179 2179
2180 case BC_CALL: case BC_CALLM: 2180 case BC_CALL: case BC_CALLM:
2181 dasm_put(Dst, 11688); 2181 dasm_put(Dst, 11678);
2182 if (op == BC_CALLM) { 2182 if (op == BC_CALLM) {
2183 dasm_put(Dst, 14215); 2183 dasm_put(Dst, 14205);
2184 } 2184 }
2185 dasm_put(Dst, 14220, LJ_TFUNC, Dt7(->pc)); 2185 dasm_put(Dst, 14210, LJ_TFUNC, Dt7(->pc));
2186 break; 2186 break;
2187 2187
2188 case BC_CALLMT: 2188 case BC_CALLMT:
2189 dasm_put(Dst, 14215); 2189 dasm_put(Dst, 14205);
2190 break; 2190 break;
2191 case BC_CALLT: 2191 case BC_CALLT:
2192 dasm_put(Dst, 14261, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); 2192 dasm_put(Dst, 14251, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc));
2193 dasm_put(Dst, 14379, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); 2193 dasm_put(Dst, 14369, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG);
2194 break; 2194 break;
2195 2195
2196 case BC_ITERC: 2196 case BC_ITERC:
2197 dasm_put(Dst, 14449, LJ_TFUNC, 2+1, Dt7(->pc)); 2197 dasm_put(Dst, 14439, LJ_TFUNC, 2+1, Dt7(->pc));
2198 break; 2198 break;
2199 2199
2200 case BC_ITERN: 2200 case BC_ITERN:
2201#if LJ_HASJIT 2201#if LJ_HASJIT
2202#endif 2202#endif
2203 dasm_put(Dst, 14529, Dt6(->asize), Dt6(->array), LJ_TNIL); 2203 dasm_put(Dst, 14519, Dt6(->asize), Dt6(->array), LJ_TNIL);
2204 if (sse) { 2204 if (sse) {
2205 dasm_put(Dst, 14575); 2205 dasm_put(Dst, 14565);
2206 } else { 2206 } else {
2207 dasm_put(Dst, 14581); 2207 dasm_put(Dst, 14571);
2208 } 2208 }
2209 dasm_put(Dst, 14587); 2209 dasm_put(Dst, 14577);
2210 if (sse) { 2210 if (sse) {
2211 dasm_put(Dst, 11558); 2211 dasm_put(Dst, 11548);
2212 } else { 2212 } else {
2213 dasm_put(Dst, 11570); 2213 dasm_put(Dst, 11560);
2214 } 2214 }
2215 dasm_put(Dst, 14606, -BCBIAS_J*4); 2215 dasm_put(Dst, 14596, -BCBIAS_J*4);
2216 if (!sse) { 2216 if (!sse) {
2217 dasm_put(Dst, 14657); 2217 dasm_put(Dst, 14647);
2218 } 2218 }
2219 dasm_put(Dst, 14663, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key.gcr), DtB(->key.it), DtB(->val.gcr), DtB(->val.it)); 2219 dasm_put(Dst, 14653, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key.gcr), DtB(->key.it), DtB(->val.gcr), DtB(->val.it));
2220 dasm_put(Dst, 14738); 2220 dasm_put(Dst, 14728);
2221 break; 2221 break;
2222 2222
2223 case BC_ISNEXT: 2223 case BC_ISNEXT:
2224 dasm_put(Dst, 14746, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); 2224 dasm_put(Dst, 14736, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC);
2225 break; 2225 break;
2226 2226
2227 case BC_VARG: 2227 case BC_VARG:
2228 dasm_put(Dst, 14845, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); 2228 dasm_put(Dst, 14835, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack));
2229 dasm_put(Dst, 15009, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); 2229 dasm_put(Dst, 14999, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top));
2230 break; 2230 break;
2231 2231
2232 /* -- Returns ----------------------------------------------------------- */ 2232 /* -- Returns ----------------------------------------------------------- */
2233 2233
2234 case BC_RETM: 2234 case BC_RETM:
2235 dasm_put(Dst, 14215); 2235 dasm_put(Dst, 14205);
2236 break; 2236 break;
2237 2237
2238 case BC_RET: case BC_RET0: case BC_RET1: 2238 case BC_RET: case BC_RET0: case BC_RET1:
2239 if (op != BC_RET0) { 2239 if (op != BC_RET0) {
2240 dasm_put(Dst, 15080); 2240 dasm_put(Dst, 15070);
2241 } 2241 }
2242 dasm_put(Dst, 15084, FRAME_TYPE); 2242 dasm_put(Dst, 15074, FRAME_TYPE);
2243 switch (op) { 2243 switch (op) {
2244 case BC_RET: 2244 case BC_RET:
2245 dasm_put(Dst, 15103); 2245 dasm_put(Dst, 15093);
2246 break; 2246 break;
2247 case BC_RET1: 2247 case BC_RET1:
2248 dasm_put(Dst, 15161); 2248 dasm_put(Dst, 15151);
2249 /* fallthrough */ 2249 /* fallthrough */
2250 case BC_RET0: 2250 case BC_RET0:
2251 dasm_put(Dst, 15177); 2251 dasm_put(Dst, 15167);
2252 default: 2252 default:
2253 break; 2253 break;
2254 } 2254 }
2255 dasm_put(Dst, 15188, Dt7(->pc), PC2PROTO(k)); 2255 dasm_put(Dst, 15178, Dt7(->pc), PC2PROTO(k));
2256 if (op == BC_RET) { 2256 if (op == BC_RET) {
2257 dasm_put(Dst, 15230, LJ_TNIL); 2257 dasm_put(Dst, 15220, LJ_TNIL);
2258 } else { 2258 } else {
2259 dasm_put(Dst, 15239, LJ_TNIL); 2259 dasm_put(Dst, 15229, LJ_TNIL);
2260 } 2260 }
2261 dasm_put(Dst, 15246, -FRAME_VARG, FRAME_TYPEP); 2261 dasm_put(Dst, 15236, -FRAME_VARG, FRAME_TYPEP);
2262 if (op != BC_RET0) { 2262 if (op != BC_RET0) {
2263 dasm_put(Dst, 15270); 2263 dasm_put(Dst, 15260);
2264 } 2264 }
2265 dasm_put(Dst, 4738); 2265 dasm_put(Dst, 4738);
2266 break; 2266 break;
@@ -2270,7 +2270,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2270 2270
2271 case BC_FORL: 2271 case BC_FORL:
2272#if LJ_HASJIT 2272#if LJ_HASJIT
2273 dasm_put(Dst, 15274, HOTCOUNT_PCMASK, GG_DISP2HOT); 2273 dasm_put(Dst, 15264, HOTCOUNT_PCMASK, GG_DISP2HOT);
2274#endif 2274#endif
2275 break; 2275 break;
2276 2276
@@ -2282,57 +2282,57 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2282 case BC_FORI: 2282 case BC_FORI:
2283 case BC_IFORL: 2283 case BC_IFORL:
2284 vk = (op == BC_IFORL || op == BC_JFORL); 2284 vk = (op == BC_IFORL || op == BC_JFORL);
2285 dasm_put(Dst, 15295); 2285 dasm_put(Dst, 15285);
2286 if (!vk) { 2286 if (!vk) {
2287 dasm_put(Dst, 15299, LJ_TISNUM, LJ_TISNUM); 2287 dasm_put(Dst, 15289, LJ_TISNUM, LJ_TISNUM);
2288 } 2288 }
2289 dasm_put(Dst, 15318); 2289 dasm_put(Dst, 15308);
2290 if (!vk) { 2290 if (!vk) {
2291 dasm_put(Dst, 15322, LJ_TISNUM); 2291 dasm_put(Dst, 15312, LJ_TISNUM);
2292 } 2292 }
2293 if (sse) { 2293 if (sse) {
2294 dasm_put(Dst, 15331); 2294 dasm_put(Dst, 15321);
2295 if (vk) { 2295 if (vk) {
2296 dasm_put(Dst, 15343); 2296 dasm_put(Dst, 15333);
2297 } else { 2297 } else {
2298 dasm_put(Dst, 15362); 2298 dasm_put(Dst, 15352);
2299 } 2299 }
2300 dasm_put(Dst, 15367); 2300 dasm_put(Dst, 15357);
2301 } else { 2301 } else {
2302 dasm_put(Dst, 15380); 2302 dasm_put(Dst, 15370);
2303 if (vk) { 2303 if (vk) {
2304 dasm_put(Dst, 15386); 2304 dasm_put(Dst, 15376);
2305 } else { 2305 } else {
2306 dasm_put(Dst, 15402); 2306 dasm_put(Dst, 15392);
2307 } 2307 }
2308 dasm_put(Dst, 15410); 2308 dasm_put(Dst, 15400);
2309 if (cmov) { 2309 if (cmov) {
2310 dasm_put(Dst, 10970); 2310 dasm_put(Dst, 10960);
2311 } else { 2311 } else {
2312 dasm_put(Dst, 10976); 2312 dasm_put(Dst, 10966);
2313 } 2313 }
2314 if (!cmov) { 2314 if (!cmov) {
2315 dasm_put(Dst, 15415); 2315 dasm_put(Dst, 15405);
2316 } 2316 }
2317 } 2317 }
2318 if (op == BC_FORI) { 2318 if (op == BC_FORI) {
2319 dasm_put(Dst, 15421, -BCBIAS_J*4); 2319 dasm_put(Dst, 15411, -BCBIAS_J*4);
2320 } else if (op == BC_JFORI) { 2320 } else if (op == BC_JFORI) {
2321 dasm_put(Dst, 15431, -BCBIAS_J*4, BC_JLOOP); 2321 dasm_put(Dst, 15421, -BCBIAS_J*4, BC_JLOOP);
2322 } else if (op == BC_IFORL) { 2322 } else if (op == BC_IFORL) {
2323 dasm_put(Dst, 15445, -BCBIAS_J*4); 2323 dasm_put(Dst, 15435, -BCBIAS_J*4);
2324 } else { 2324 } else {
2325 dasm_put(Dst, 15441, BC_JLOOP); 2325 dasm_put(Dst, 15431, BC_JLOOP);
2326 } 2326 }
2327 dasm_put(Dst, 11005); 2327 dasm_put(Dst, 10995);
2328 if (sse) { 2328 if (sse) {
2329 dasm_put(Dst, 15455); 2329 dasm_put(Dst, 15445);
2330 } 2330 }
2331 break; 2331 break;
2332 2332
2333 case BC_ITERL: 2333 case BC_ITERL:
2334#if LJ_HASJIT 2334#if LJ_HASJIT
2335 dasm_put(Dst, 15274, HOTCOUNT_PCMASK, GG_DISP2HOT); 2335 dasm_put(Dst, 15264, HOTCOUNT_PCMASK, GG_DISP2HOT);
2336#endif 2336#endif
2337 break; 2337 break;
2338 2338
@@ -2341,33 +2341,33 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2341 break; 2341 break;
2342#endif 2342#endif
2343 case BC_IITERL: 2343 case BC_IITERL:
2344 dasm_put(Dst, 15466, LJ_TNIL); 2344 dasm_put(Dst, 15456, LJ_TNIL);
2345 if (op == BC_JITERL) { 2345 if (op == BC_JITERL) {
2346 dasm_put(Dst, 15481, BC_JLOOP); 2346 dasm_put(Dst, 15471, BC_JLOOP);
2347 } else { 2347 } else {
2348 dasm_put(Dst, 15495, -BCBIAS_J*4); 2348 dasm_put(Dst, 15485, -BCBIAS_J*4);
2349 } 2349 }
2350 dasm_put(Dst, 11435); 2350 dasm_put(Dst, 11425);
2351 break; 2351 break;
2352 2352
2353 case BC_LOOP: 2353 case BC_LOOP:
2354#if LJ_HASJIT 2354#if LJ_HASJIT
2355 dasm_put(Dst, 15274, HOTCOUNT_PCMASK, GG_DISP2HOT); 2355 dasm_put(Dst, 15264, HOTCOUNT_PCMASK, GG_DISP2HOT);
2356#endif 2356#endif
2357 break; 2357 break;
2358 2358
2359 case BC_ILOOP: 2359 case BC_ILOOP:
2360 dasm_put(Dst, 11007); 2360 dasm_put(Dst, 10997);
2361 break; 2361 break;
2362 2362
2363 case BC_JLOOP: 2363 case BC_JLOOP:
2364#if LJ_HASJIT 2364#if LJ_HASJIT
2365 dasm_put(Dst, 15511, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); 2365 dasm_put(Dst, 15501, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L));
2366#endif 2366#endif
2367 break; 2367 break;
2368 2368
2369 case BC_JMP: 2369 case BC_JMP:
2370 dasm_put(Dst, 15534, -BCBIAS_J*4); 2370 dasm_put(Dst, 15524, -BCBIAS_J*4);
2371 break; 2371 break;
2372 2372
2373 /* -- Function headers -------------------------------------------------- */ 2373 /* -- Function headers -------------------------------------------------- */
@@ -2381,7 +2381,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2381 2381
2382 case BC_FUNCF: 2382 case BC_FUNCF:
2383#if LJ_HASJIT 2383#if LJ_HASJIT
2384 dasm_put(Dst, 15558, HOTCOUNT_PCMASK, GG_DISP2HOT); 2384 dasm_put(Dst, 15548, HOTCOUNT_PCMASK, GG_DISP2HOT);
2385#endif 2385#endif
2386 case BC_FUNCV: /* NYI: compiled vararg functions. */ 2386 case BC_FUNCV: /* NYI: compiled vararg functions. */
2387 break; 2387 break;
@@ -2391,47 +2391,47 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
2391 break; 2391 break;
2392#endif 2392#endif
2393 case BC_IFUNCF: 2393 case BC_IFUNCF:
2394 dasm_put(Dst, 15579, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); 2394 dasm_put(Dst, 15569, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams));
2395 if (op == BC_JFUNCF) { 2395 if (op == BC_JFUNCF) {
2396 dasm_put(Dst, 15609, BC_JLOOP); 2396 dasm_put(Dst, 15599, BC_JLOOP);
2397 } else { 2397 } else {
2398 dasm_put(Dst, 11007); 2398 dasm_put(Dst, 10997);
2399 } 2399 }
2400 dasm_put(Dst, 15618, LJ_TNIL); 2400 dasm_put(Dst, 15608, LJ_TNIL);
2401 break; 2401 break;
2402 2402
2403 case BC_JFUNCV: 2403 case BC_JFUNCV:
2404#if !LJ_HASJIT 2404#if !LJ_HASJIT
2405 break; 2405 break;
2406#endif 2406#endif
2407 dasm_put(Dst, 10302); 2407 dasm_put(Dst, 10292);
2408 break; /* NYI: compiled vararg functions. */ 2408 break; /* NYI: compiled vararg functions. */
2409 2409
2410 case BC_IFUNCV: 2410 case BC_IFUNCV:
2411 dasm_put(Dst, 15640, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); 2411 dasm_put(Dst, 15630, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL);
2412 if (op == BC_JFUNCV) { 2412 if (op == BC_JFUNCV) {
2413 dasm_put(Dst, 15609, BC_JLOOP); 2413 dasm_put(Dst, 15599, BC_JLOOP);
2414 } else { 2414 } else {
2415 dasm_put(Dst, 15731, -4+PC2PROTO(k)); 2415 dasm_put(Dst, 15721, -4+PC2PROTO(k));
2416 } 2416 }
2417 dasm_put(Dst, 15753, LJ_TNIL); 2417 dasm_put(Dst, 15743, LJ_TNIL);
2418 break; 2418 break;
2419 2419
2420 case BC_FUNCC: 2420 case BC_FUNCC:
2421 case BC_FUNCCW: 2421 case BC_FUNCCW:
2422 dasm_put(Dst, 15775, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); 2422 dasm_put(Dst, 15765, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top));
2423 if (op == BC_FUNCC) { 2423 if (op == BC_FUNCC) {
2424 dasm_put(Dst, 15804); 2424 dasm_put(Dst, 15794);
2425 } else { 2425 } else {
2426 dasm_put(Dst, 15808); 2426 dasm_put(Dst, 15798);
2427 } 2427 }
2428 dasm_put(Dst, 15816, DISPATCH_GL(vmstate), ~LJ_VMST_C); 2428 dasm_put(Dst, 15806, DISPATCH_GL(vmstate), ~LJ_VMST_C);
2429 if (op == BC_FUNCC) { 2429 if (op == BC_FUNCC) {
2430 dasm_put(Dst, 15825); 2430 dasm_put(Dst, 15815);
2431 } else { 2431 } else {
2432 dasm_put(Dst, 15829, DISPATCH_GL(wrapf)); 2432 dasm_put(Dst, 15819, DISPATCH_GL(wrapf));
2433 } 2433 }
2434 dasm_put(Dst, 15834, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); 2434 dasm_put(Dst, 15824, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top));
2435 break; 2435 break;
2436 2436
2437 /* ---------------------------------------------------------------------- */ 2437 /* ---------------------------------------------------------------------- */
@@ -2459,7 +2459,7 @@ static int build_backend(BuildCtx *ctx)
2459 2459
2460 build_subroutines(ctx, cmov, sse); 2460 build_subroutines(ctx, cmov, sse);
2461 2461
2462 dasm_put(Dst, 15859); 2462 dasm_put(Dst, 15849);
2463 for (op = 0; op < BC__MAX; op++) 2463 for (op = 0; op < BC__MAX; op++)
2464 build_ins(ctx, (BCOp)op, op, cmov, sse); 2464 build_ins(ctx, (BCOp)op, op, cmov, sse);
2465 2465