From a30f58b54ba645ec0b1efe7087f615451033eb38 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Mon, 7 Mar 2011 20:12:39 +0100 Subject: DUALNUM: Fix x87 code for BC_ISEQN/BC_ISNEN. --- src/buildvm_x64.h | 781 ++++++++++++++++++------------------ src/buildvm_x64win.h | 647 +++++++++++++++--------------- src/buildvm_x86.dasc | 5 +- src/buildvm_x86.h | 1077 +++++++++++++++++++++++++------------------------- 4 files changed, 1253 insertions(+), 1257 deletions(-) (limited to 'src') diff --git a/src/buildvm_x64.h b/src/buildvm_x64.h index 87115fe3..42d435cb 100644 --- a/src/buildvm_x64.h +++ b/src/buildvm_x64.h @@ -12,7 +12,7 @@ #define DASM_SECTION_CODE_OP 0 #define DASM_SECTION_CODE_SUB 1 #define DASM_MAXSECTION 2 -static const unsigned char build_actionlist[15908] = { +static const unsigned char build_actionlist[15911] = { 254,1,248,10,252,247,195,237,15,132,244,11,131,227,252,248,41,218,72,141, 76,25,252,248,139,90,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36,4, 252,247,195,237,15,132,244,13,248,14,129,252,243,239,252,247,195,237,15,133, @@ -528,111 +528,111 @@ static const unsigned char build_actionlist[15908] = { 4,193,232,16,65,252,255,36,252,238,248,7,15,135,244,249,65,129,124,253,199, 4,239,15,130,244,247,255,252,242,65,15,42,4,199,255,65,219,4,199,255,252, 233,244,248,248,8,255,252,242,15,42,4,202,102,65,15,46,4,199,255,219,4,202, - 221,4,194,255,129,252,253,239,15,131,244,249,255,248,1,252,242,65,15,16,4, - 199,248,2,102,15,46,4,202,248,4,255,248,1,65,221,4,199,248,2,221,4,202,255, - 72,252,247,208,139,108,202,4,131,195,4,57,197,255,15,133,244,249,15,183,67, + 65,221,4,199,255,129,252,253,239,15,131,244,249,255,248,1,252,242,65,15,16, + 4,199,248,2,102,15,46,4,202,248,4,255,248,1,65,221,4,199,248,2,221,4,202, + 248,4,255,72,252,247,208,139,108,202,4,131,195,4,57,197,255,15,133,244,249, + 15,183,67,252,254,141,156,253,131,233,248,2,139,3,15,182,204,15,182,232,131, + 195,4,193,232,16,65,252,255,36,252,238,248,3,129,252,253,239,15,133,244,2, + 252,233,244,46,255,15,132,244,248,129,252,253,239,15,132,244,46,15,183,67, 252,254,141,156,253,131,233,248,2,139,3,15,182,204,15,182,232,131,195,4,193, - 232,16,65,252,255,36,252,238,248,3,129,252,253,239,15,133,244,2,252,233,244, - 46,255,15,132,244,248,129,252,253,239,15,132,244,46,15,183,67,252,254,141, - 156,253,131,233,248,2,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, - 252,255,36,252,238,255,139,108,194,4,131,195,4,129,252,253,239,255,137,108, - 202,4,139,44,194,137,44,202,255,72,139,44,194,72,137,44,202,139,3,15,182, - 204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,49,252,237, - 129,124,253,194,4,239,129,213,239,137,108,202,4,139,3,15,182,204,15,182,232, - 131,195,4,193,232,16,65,252,255,36,252,238,255,129,124,253,194,4,239,15,133, - 244,251,139,44,194,252,247,221,15,128,244,250,199,68,202,4,237,137,44,202, - 248,9,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252, - 238,248,4,199,68,202,4,0,0,224,65,199,4,202,0,0,0,0,252,233,244,9,248,5,15, - 135,244,51,255,129,124,253,194,4,239,15,131,244,51,255,252,242,15,16,4,194, - 72,184,237,237,102,72,15,110,200,15,87,193,252,242,15,17,4,202,255,221,4, - 194,217,224,221,28,202,255,129,124,253,194,4,239,15,133,244,248,139,4,194, - 255,139,128,233,248,1,199,68,202,4,237,137,4,202,255,15,87,192,252,242,15, - 42,128,233,248,1,252,242,15,17,4,202,255,219,128,233,248,1,221,28,202,255, - 139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,248, - 2,129,124,253,194,4,239,15,133,244,54,139,60,194,137,213,232,251,1,20,255, - 252,242,15,42,192,255,137,252,234,15,182,75,252,253,252,233,244,1,255,15, - 182,252,236,15,182,192,255,129,124,253,252,234,4,239,15,133,244,48,65,129, - 124,253,199,4,239,15,133,244,48,139,44,252,234,65,3,44,199,15,128,244,47, - 255,129,124,253,252,234,4,239,15,133,244,50,65,129,124,253,199,4,239,15,133, - 244,50,65,139,4,199,3,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239, - 15,133,244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234,3,44,194, - 15,128,244,52,255,199,68,202,4,237,255,129,124,253,252,234,4,239,15,131,244, - 48,255,65,129,124,253,199,4,239,15,131,244,48,255,252,242,15,16,4,252,234, - 252,242,65,15,88,4,199,255,221,4,252,234,65,220,4,199,255,129,124,253,252, - 234,4,239,15,131,244,50,255,65,129,124,253,199,4,239,15,131,244,50,255,252, - 242,65,15,16,4,199,252,242,15,88,4,252,234,255,65,221,4,199,220,4,252,234, - 255,129,124,253,252,234,4,239,15,131,244,53,129,124,253,194,4,239,15,131, - 244,53,255,252,242,15,16,4,252,234,252,242,15,88,4,194,255,221,4,252,234, - 220,4,194,255,129,124,253,252,234,4,239,15,133,244,48,65,129,124,253,199, - 4,239,15,133,244,48,139,44,252,234,65,43,44,199,15,128,244,47,255,129,124, - 253,252,234,4,239,15,133,244,50,65,129,124,253,199,4,239,15,133,244,50,65, - 139,4,199,43,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239,15,133, - 244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234,43,44,194,15,128, - 244,52,255,252,242,15,16,4,252,234,252,242,65,15,92,4,199,255,221,4,252,234, - 65,220,36,199,255,252,242,65,15,16,4,199,252,242,15,92,4,252,234,255,65,221, - 4,199,220,36,252,234,255,252,242,15,16,4,252,234,252,242,15,92,4,194,255, - 221,4,252,234,220,36,194,255,129,124,253,252,234,4,239,15,133,244,48,65,129, - 124,253,199,4,239,15,133,244,48,139,44,252,234,65,15,175,44,199,15,128,244, - 47,255,129,124,253,252,234,4,239,15,133,244,50,65,129,124,253,199,4,239,15, - 133,244,50,65,139,4,199,15,175,4,252,234,15,128,244,49,255,129,124,253,252, - 234,4,239,15,133,244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234, - 15,175,44,194,15,128,244,52,255,252,242,15,16,4,252,234,252,242,65,15,89, - 4,199,255,221,4,252,234,65,220,12,199,255,252,242,65,15,16,4,199,252,242, - 15,89,4,252,234,255,65,221,4,199,220,12,252,234,255,252,242,15,16,4,252,234, - 252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,252,242,15,16,4,252, - 234,252,242,65,15,94,4,199,255,221,4,252,234,65,220,52,199,255,252,242,65, - 15,16,4,199,252,242,15,94,4,252,234,255,65,221,4,199,220,52,252,234,255,252, - 242,15,16,4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,52,194,255, - 252,242,15,16,4,252,234,252,242,65,15,16,12,199,255,221,4,252,234,65,221, - 4,199,255,252,242,65,15,16,4,199,252,242,15,16,12,252,234,255,65,221,4,199, - 221,4,252,234,255,252,242,15,16,4,252,234,252,242,15,16,12,194,255,221,4, - 252,234,221,4,194,255,248,162,232,244,153,255,252,233,244,162,255,232,244, - 113,255,15,182,252,236,15,182,192,139,124,36,24,137,151,233,141,52,194,137, - 194,41,252,234,248,33,137,252,253,137,92,36,28,232,251,1,27,139,149,233,133, - 192,15,133,244,42,15,182,107,252,255,15,182,75,252,253,72,139,4,252,234,72, - 137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, - 252,238,255,72,252,247,208,65,139,4,135,199,68,202,4,237,137,4,202,139,3, - 15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,15,191, - 192,199,68,202,4,237,137,4,202,255,15,191,192,252,242,15,42,192,252,242,15, - 17,4,202,255,223,67,252,254,221,28,202,255,252,242,65,15,16,4,199,252,242, - 15,17,4,202,255,65,221,4,199,221,28,202,255,72,252,247,208,137,68,202,4,139, - 3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,141, - 76,202,12,141,68,194,4,189,237,137,105,252,248,248,1,137,41,131,193,8,57, - 193,15,134,244,1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252, - 255,36,252,238,255,139,106,252,248,139,172,253,133,233,139,173,233,72,139, - 69,0,72,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252, - 255,36,252,238,255,139,106,252,248,139,172,253,141,233,128,189,233,0,139, - 173,233,139,12,194,139,68,194,4,137,77,0,137,69,4,15,132,244,247,252,246, - 133,233,235,15,133,244,248,248,1,139,3,15,182,204,15,182,232,131,195,4,193, - 232,16,65,252,255,36,252,238,248,2,129,232,239,129,252,248,239,15,134,244, - 1,252,246,129,233,235,15,132,244,1,137,252,238,137,213,65,141,190,233,255, - 232,251,1,28,137,252,234,252,233,244,1,255,72,252,247,208,139,106,252,248, - 139,172,253,141,233,65,139,12,135,139,133,233,137,8,199,64,4,237,252,246, - 133,233,235,15,133,244,248,248,1,139,3,15,182,204,15,182,232,131,195,4,193, - 232,16,65,252,255,36,252,238,248,2,252,246,129,233,235,15,132,244,1,128,189, - 233,0,15,132,244,1,137,213,137,198,65,141,190,233,232,251,1,28,137,252,234, - 252,233,244,1,255,139,106,252,248,255,252,242,65,15,16,4,199,255,139,172, - 253,141,233,139,141,233,255,252,242,15,17,1,255,221,25,255,72,252,247,208, - 139,106,252,248,139,172,253,141,233,139,141,233,137,65,4,139,3,15,182,204, - 15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,141,156,253,131, - 233,139,108,36,24,131,189,233,0,15,132,244,247,137,149,233,141,52,202,137, - 252,239,232,251,1,29,139,149,233,248,1,139,3,15,182,204,15,182,232,131,195, - 4,193,232,16,65,252,255,36,252,238,255,72,252,247,208,139,108,36,24,137,149, - 233,139,82,252,248,65,139,52,135,137,252,239,137,92,36,28,232,251,1,30,139, - 149,233,15,182,75,252,253,137,4,202,199,68,202,4,237,139,3,15,182,204,15, - 182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,139,108,36,24,137, - 149,233,65,139,142,233,65,59,142,233,137,92,36,28,15,131,244,251,248,1,137, - 194,37,252,255,7,0,0,193,252,234,11,61,252,255,7,0,0,15,132,244,249,248,2, - 137,252,239,137,198,232,251,1,31,139,149,233,15,182,75,252,253,137,4,202, - 199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252, - 255,36,252,238,248,3,184,1,8,0,0,252,233,244,2,248,5,137,252,239,232,251, - 1,32,15,183,67,252,254,252,233,244,1,255,72,252,247,208,139,108,36,24,65, - 139,142,233,137,92,36,28,65,59,142,233,137,149,233,15,131,244,249,248,2,65, - 139,52,135,137,252,239,232,251,1,33,139,149,233,15,182,75,252,253,137,4,202, - 199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252, - 255,36,252,238,248,3,137,252,239,232,251,1,32,15,183,67,252,254,72,252,247, - 208,252,233,244,2,255,72,252,247,208,139,106,252,248,139,173,233,65,139,4, - 135,252,233,244,163,255,72,252,247,208,139,106,252,248,139,173,233,65,139, + 232,16,65,252,255,36,252,238,255,139,108,194,4,131,195,4,129,252,253,239, + 255,137,108,202,4,139,44,194,137,44,202,255,72,139,44,194,72,137,44,202,139, + 3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,49, + 252,237,129,124,253,194,4,239,129,213,239,137,108,202,4,139,3,15,182,204, + 15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,129,124,253,194, + 4,239,15,133,244,251,139,44,194,252,247,221,15,128,244,250,199,68,202,4,237, + 137,44,202,248,9,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252, + 255,36,252,238,248,4,199,68,202,4,0,0,224,65,199,4,202,0,0,0,0,252,233,244, + 9,248,5,15,135,244,51,255,129,124,253,194,4,239,15,131,244,51,255,252,242, + 15,16,4,194,72,184,237,237,102,72,15,110,200,15,87,193,252,242,15,17,4,202, + 255,221,4,194,217,224,221,28,202,255,129,124,253,194,4,239,15,133,244,248, + 139,4,194,255,139,128,233,248,1,199,68,202,4,237,137,4,202,255,15,87,192, + 252,242,15,42,128,233,248,1,252,242,15,17,4,202,255,219,128,233,248,1,221, + 28,202,255,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36, + 252,238,248,2,129,124,253,194,4,239,15,133,244,54,139,60,194,137,213,232, + 251,1,20,255,252,242,15,42,192,255,137,252,234,15,182,75,252,253,252,233, + 244,1,255,15,182,252,236,15,182,192,255,129,124,253,252,234,4,239,15,133, + 244,48,65,129,124,253,199,4,239,15,133,244,48,139,44,252,234,65,3,44,199, + 15,128,244,47,255,129,124,253,252,234,4,239,15,133,244,50,65,129,124,253, + 199,4,239,15,133,244,50,65,139,4,199,3,4,252,234,15,128,244,49,255,129,124, + 253,252,234,4,239,15,133,244,53,129,124,253,194,4,239,15,133,244,53,139,44, + 252,234,3,44,194,15,128,244,52,255,199,68,202,4,237,255,129,124,253,252,234, + 4,239,15,131,244,48,255,65,129,124,253,199,4,239,15,131,244,48,255,252,242, + 15,16,4,252,234,252,242,65,15,88,4,199,255,221,4,252,234,65,220,4,199,255, + 129,124,253,252,234,4,239,15,131,244,50,255,65,129,124,253,199,4,239,15,131, + 244,50,255,252,242,65,15,16,4,199,252,242,15,88,4,252,234,255,65,221,4,199, + 220,4,252,234,255,129,124,253,252,234,4,239,15,131,244,53,129,124,253,194, + 4,239,15,131,244,53,255,252,242,15,16,4,252,234,252,242,15,88,4,194,255,221, + 4,252,234,220,4,194,255,129,124,253,252,234,4,239,15,133,244,48,65,129,124, + 253,199,4,239,15,133,244,48,139,44,252,234,65,43,44,199,15,128,244,47,255, + 129,124,253,252,234,4,239,15,133,244,50,65,129,124,253,199,4,239,15,133,244, + 50,65,139,4,199,43,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239, + 15,133,244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234,43,44,194, + 15,128,244,52,255,252,242,15,16,4,252,234,252,242,65,15,92,4,199,255,221, + 4,252,234,65,220,36,199,255,252,242,65,15,16,4,199,252,242,15,92,4,252,234, + 255,65,221,4,199,220,36,252,234,255,252,242,15,16,4,252,234,252,242,15,92, + 4,194,255,221,4,252,234,220,36,194,255,129,124,253,252,234,4,239,15,133,244, + 48,65,129,124,253,199,4,239,15,133,244,48,139,44,252,234,65,15,175,44,199, + 15,128,244,47,255,129,124,253,252,234,4,239,15,133,244,50,65,129,124,253, + 199,4,239,15,133,244,50,65,139,4,199,15,175,4,252,234,15,128,244,49,255,129, + 124,253,252,234,4,239,15,133,244,53,129,124,253,194,4,239,15,133,244,53,139, + 44,252,234,15,175,44,194,15,128,244,52,255,252,242,15,16,4,252,234,252,242, + 65,15,89,4,199,255,221,4,252,234,65,220,12,199,255,252,242,65,15,16,4,199, + 252,242,15,89,4,252,234,255,65,221,4,199,220,12,252,234,255,252,242,15,16, + 4,252,234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,252,242,15, + 16,4,252,234,252,242,65,15,94,4,199,255,221,4,252,234,65,220,52,199,255,252, + 242,65,15,16,4,199,252,242,15,94,4,252,234,255,65,221,4,199,220,52,252,234, + 255,252,242,15,16,4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,52, + 194,255,252,242,15,16,4,252,234,252,242,65,15,16,12,199,255,221,4,252,234, + 65,221,4,199,255,252,242,65,15,16,4,199,252,242,15,16,12,252,234,255,65,221, + 4,199,221,4,252,234,255,252,242,15,16,4,252,234,252,242,15,16,12,194,255, + 221,4,252,234,221,4,194,255,248,162,232,244,153,255,252,233,244,162,255,232, + 244,113,255,15,182,252,236,15,182,192,139,124,36,24,137,151,233,141,52,194, + 137,194,41,252,234,248,33,137,252,253,137,92,36,28,232,251,1,27,139,149,233, + 133,192,15,133,244,42,15,182,107,252,255,15,182,75,252,253,72,139,4,252,234, + 72,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255, + 36,252,238,255,72,252,247,208,65,139,4,135,199,68,202,4,237,137,4,202,139, + 3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,15, + 191,192,199,68,202,4,237,137,4,202,255,15,191,192,252,242,15,42,192,252,242, + 15,17,4,202,255,223,67,252,254,221,28,202,255,252,242,65,15,16,4,199,252, + 242,15,17,4,202,255,65,221,4,199,221,28,202,255,72,252,247,208,137,68,202, + 4,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238, + 255,141,76,202,12,141,68,194,4,189,237,137,105,252,248,248,1,137,41,131,193, + 8,57,193,15,134,244,1,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, + 252,255,36,252,238,255,139,106,252,248,139,172,253,133,233,139,173,233,72, + 139,69,0,72,137,4,202,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, + 252,255,36,252,238,255,139,106,252,248,139,172,253,141,233,128,189,233,0, + 139,173,233,139,12,194,139,68,194,4,137,77,0,137,69,4,15,132,244,247,252, + 246,133,233,235,15,133,244,248,248,1,139,3,15,182,204,15,182,232,131,195, + 4,193,232,16,65,252,255,36,252,238,248,2,129,232,239,129,252,248,239,15,134, + 244,1,252,246,129,233,235,15,132,244,1,137,252,238,137,213,65,141,190,233, + 255,232,251,1,28,137,252,234,252,233,244,1,255,72,252,247,208,139,106,252, + 248,139,172,253,141,233,65,139,12,135,139,133,233,137,8,199,64,4,237,252, + 246,133,233,235,15,133,244,248,248,1,139,3,15,182,204,15,182,232,131,195, + 4,193,232,16,65,252,255,36,252,238,248,2,252,246,129,233,235,15,132,244,1, + 128,189,233,0,15,132,244,1,137,213,137,198,65,141,190,233,232,251,1,28,137, + 252,234,252,233,244,1,255,139,106,252,248,255,252,242,65,15,16,4,199,255, + 139,172,253,141,233,139,141,233,255,252,242,15,17,1,255,221,25,255,72,252, + 247,208,139,106,252,248,139,172,253,141,233,139,141,233,137,65,4,139,3,15, + 182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,141,156, + 253,131,233,139,108,36,24,131,189,233,0,15,132,244,247,137,149,233,141,52, + 202,137,252,239,232,251,1,29,139,149,233,248,1,139,3,15,182,204,15,182,232, + 131,195,4,193,232,16,65,252,255,36,252,238,255,72,252,247,208,139,108,36, + 24,137,149,233,139,82,252,248,65,139,52,135,137,252,239,137,92,36,28,232, + 251,1,30,139,149,233,15,182,75,252,253,137,4,202,199,68,202,4,237,139,3,15, + 182,204,15,182,232,131,195,4,193,232,16,65,252,255,36,252,238,255,139,108, + 36,24,137,149,233,65,139,142,233,65,59,142,233,137,92,36,28,15,131,244,251, + 248,1,137,194,37,252,255,7,0,0,193,252,234,11,61,252,255,7,0,0,15,132,244, + 249,248,2,137,252,239,137,198,232,251,1,31,139,149,233,15,182,75,252,253, + 137,4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193,232, + 16,65,252,255,36,252,238,248,3,184,1,8,0,0,252,233,244,2,248,5,137,252,239, + 232,251,1,32,15,183,67,252,254,252,233,244,1,255,72,252,247,208,139,108,36, + 24,65,139,142,233,137,92,36,28,65,59,142,233,137,149,233,15,131,244,249,248, + 2,65,139,52,135,137,252,239,232,251,1,33,139,149,233,15,182,75,252,253,137, + 4,202,199,68,202,4,237,139,3,15,182,204,15,182,232,131,195,4,193,232,16,65, + 252,255,36,252,238,248,3,137,252,239,232,251,1,32,15,183,67,252,254,72,252, + 247,208,252,233,244,2,255,72,252,247,208,139,106,252,248,139,173,233,65,139, + 4,135,252,233,244,163,255,72,252,247,208,139,106,252,248,139,173,233,65,139, 4,135,252,233,244,164,255,15,182,252,236,15,182,192,129,124,253,252,234,4, 239,15,133,244,36,139,44,252,234,255,129,124,253,194,4,239,15,133,244,251, 139,4,194,255,129,124,253,194,4,239,15,131,244,251,255,252,242,15,16,4,194, @@ -2045,42 +2045,41 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } dasm_put(Dst, 10290); } else { - dasm_put(Dst, 10660, LJ_TISNUM); + dasm_put(Dst, 10661, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 10669); + dasm_put(Dst, 10670); } else { - dasm_put(Dst, 10688); + dasm_put(Dst, 10689); if (cmov) { dasm_put(Dst, 10087); } else { dasm_put(Dst, 10093); } - dasm_put(Dst, 4611); } goto iseqne_fp; case BC_ISEQP: case BC_ISNEP: vk = op == BC_ISEQP; - dasm_put(Dst, 10700); + dasm_put(Dst, 10703); if (!LJ_HASFFI) goto iseqne_test; if (vk) { - dasm_put(Dst, 10714, -BCBIAS_J*4, LJ_TCDATA); + dasm_put(Dst, 10717, -BCBIAS_J*4, LJ_TCDATA); } else { - dasm_put(Dst, 10765, LJ_TCDATA, -BCBIAS_J*4); + dasm_put(Dst, 10768, LJ_TCDATA, -BCBIAS_J*4); } break; /* -- Unary test and copy ops ------------------------------------------- */ case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: - dasm_put(Dst, 10810, LJ_TISTRUECOND); + dasm_put(Dst, 10813, LJ_TISTRUECOND); if (op == BC_IST || op == BC_ISTC) { dasm_put(Dst, 10115); } else { dasm_put(Dst, 10110); } if (op == BC_ISTC || op == BC_ISFC) { - dasm_put(Dst, 10822); + dasm_put(Dst, 10825); } dasm_put(Dst, 10120, -BCBIAS_J*4); break; @@ -2088,21 +2087,21 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) /* -- Unary ops --------------------------------------------------------- */ case BC_MOV: - dasm_put(Dst, 10833); + dasm_put(Dst, 10836); break; case BC_NOT: - dasm_put(Dst, 10862, LJ_TISTRUECOND, LJ_TTRUE); + dasm_put(Dst, 10865, LJ_TISTRUECOND, LJ_TTRUE); break; case BC_UNM: if (LJ_DUALNUM) { - dasm_put(Dst, 10899, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 10902, LJ_TISNUM, LJ_TISNUM); } else { - dasm_put(Dst, 10977, LJ_TISNUM); + dasm_put(Dst, 10980, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 10988, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); + dasm_put(Dst, 10991, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); } else { - dasm_put(Dst, 11013); + dasm_put(Dst, 11016); } if (LJ_DUALNUM) { dasm_put(Dst, 10393); @@ -2111,21 +2110,21 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } break; case BC_LEN: - dasm_put(Dst, 11022, LJ_TSTR); + dasm_put(Dst, 11025, LJ_TSTR); if (LJ_DUALNUM) { - dasm_put(Dst, 11036, Dt5(->len), LJ_TISNUM); + dasm_put(Dst, 11039, Dt5(->len), LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 11050, Dt5(->len)); + dasm_put(Dst, 11053, Dt5(->len)); } else { - dasm_put(Dst, 11068, Dt5(->len)); + dasm_put(Dst, 11071, Dt5(->len)); } - dasm_put(Dst, 11077, LJ_TTAB); + dasm_put(Dst, 11080, LJ_TTAB); if (LJ_DUALNUM) { } else if (sse) { - dasm_put(Dst, 11119); + dasm_put(Dst, 11122); } else { } - dasm_put(Dst, 11125); + dasm_put(Dst, 11128); break; /* -- Binary ops -------------------------------------------------------- */ @@ -2133,603 +2132,603 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: if (LJ_DUALNUM) { - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11146, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11149, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 11181, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11184, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 11216, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11219, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 11249, LJ_TISNUM); + dasm_put(Dst, 11252, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 11046); + dasm_put(Dst, 11049); } else { - dasm_put(Dst, 10829); + dasm_put(Dst, 10832); } dasm_put(Dst, 10132); } else { - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11279); + dasm_put(Dst, 11282); } else { - dasm_put(Dst, 11294); + dasm_put(Dst, 11297); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11327); + dasm_put(Dst, 11330); } else { - dasm_put(Dst, 11342); + dasm_put(Dst, 11345); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11373); + dasm_put(Dst, 11376); } else { - dasm_put(Dst, 11387); + dasm_put(Dst, 11390); } break; } if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } dasm_put(Dst, 10132); } break; case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: if (LJ_DUALNUM) { - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11395, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11398, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 11430, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11433, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 11465, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11468, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 11249, LJ_TISNUM); + dasm_put(Dst, 11252, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 11046); + dasm_put(Dst, 11049); } else { - dasm_put(Dst, 10829); + dasm_put(Dst, 10832); } dasm_put(Dst, 10132); } else { - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11498); + dasm_put(Dst, 11501); } else { - dasm_put(Dst, 11513); + dasm_put(Dst, 11516); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11522); + dasm_put(Dst, 11525); } else { - dasm_put(Dst, 11537); + dasm_put(Dst, 11540); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11546); + dasm_put(Dst, 11549); } else { - dasm_put(Dst, 11560); + dasm_put(Dst, 11563); } break; } if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } dasm_put(Dst, 10132); } break; case BC_MULVN: case BC_MULNV: case BC_MULVV: if (LJ_DUALNUM) { - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11568, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11571, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 11604, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11607, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 11640, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11643, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 11249, LJ_TISNUM); + dasm_put(Dst, 11252, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 11046); + dasm_put(Dst, 11049); } else { - dasm_put(Dst, 10829); + dasm_put(Dst, 10832); } dasm_put(Dst, 10132); } else { - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11674); + dasm_put(Dst, 11677); } else { - dasm_put(Dst, 11689); + dasm_put(Dst, 11692); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11698); + dasm_put(Dst, 11701); } else { - dasm_put(Dst, 11713); + dasm_put(Dst, 11716); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11722); + dasm_put(Dst, 11725); } else { - dasm_put(Dst, 11736); + dasm_put(Dst, 11739); } break; } if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } dasm_put(Dst, 10132); } break; case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11744); + dasm_put(Dst, 11747); } else { - dasm_put(Dst, 11759); + dasm_put(Dst, 11762); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11768); + dasm_put(Dst, 11771); } else { - dasm_put(Dst, 11783); + dasm_put(Dst, 11786); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11792); + dasm_put(Dst, 11795); } else { - dasm_put(Dst, 11806); + dasm_put(Dst, 11809); } break; } if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } dasm_put(Dst, 10132); break; case BC_MODVN: - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11814); + dasm_put(Dst, 11817); } else { - dasm_put(Dst, 11829); + dasm_put(Dst, 11832); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11838); + dasm_put(Dst, 11841); } else { - dasm_put(Dst, 11853); + dasm_put(Dst, 11856); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11862); + dasm_put(Dst, 11865); } else { - dasm_put(Dst, 11876); + dasm_put(Dst, 11879); } break; } - dasm_put(Dst, 11884); + dasm_put(Dst, 11887); if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } dasm_put(Dst, 10132); break; case BC_MODNV: case BC_MODVV: - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11814); + dasm_put(Dst, 11817); } else { - dasm_put(Dst, 11829); + dasm_put(Dst, 11832); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11838); + dasm_put(Dst, 11841); } else { - dasm_put(Dst, 11853); + dasm_put(Dst, 11856); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11862); + dasm_put(Dst, 11865); } else { - dasm_put(Dst, 11876); + dasm_put(Dst, 11879); } break; } - dasm_put(Dst, 11890); + dasm_put(Dst, 11893); break; case BC_POW: - dasm_put(Dst, 11138); + dasm_put(Dst, 11141); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11255, LJ_TISNUM); + dasm_put(Dst, 11258, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11267, LJ_TISNUM); + dasm_put(Dst, 11270, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11814); + dasm_put(Dst, 11817); } else { - dasm_put(Dst, 11829); + dasm_put(Dst, 11832); } break; case 1: - dasm_put(Dst, 11303, LJ_TISNUM); + dasm_put(Dst, 11306, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11315, LJ_TISNUM); + dasm_put(Dst, 11318, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11838); + dasm_put(Dst, 11841); } else { - dasm_put(Dst, 11853); + dasm_put(Dst, 11856); } break; default: - dasm_put(Dst, 11351, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11354, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11862); + dasm_put(Dst, 11865); } else { - dasm_put(Dst, 11876); + dasm_put(Dst, 11879); } break; } - dasm_put(Dst, 11895); + dasm_put(Dst, 11898); if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } dasm_put(Dst, 10132); break; case BC_CAT: - dasm_put(Dst, 11899, Dt1(->base), Dt1(->base)); + dasm_put(Dst, 11902, Dt1(->base), Dt1(->base)); break; /* -- Constant ops ------------------------------------------------------ */ case BC_KSTR: - dasm_put(Dst, 11983, LJ_TSTR); + dasm_put(Dst, 11986, LJ_TSTR); break; case BC_KCDATA: #if LJ_HASFFI - dasm_put(Dst, 11983, LJ_TCDATA); + dasm_put(Dst, 11986, LJ_TCDATA); #endif break; case BC_KSHORT: if (LJ_DUALNUM) { - dasm_put(Dst, 12020, LJ_TISNUM); + dasm_put(Dst, 12023, LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 12032); + dasm_put(Dst, 12035); } else { - dasm_put(Dst, 12047); + dasm_put(Dst, 12050); } dasm_put(Dst, 10132); break; case BC_KNUM: if (sse) { - dasm_put(Dst, 12055); + dasm_put(Dst, 12058); } else { - dasm_put(Dst, 12069); + dasm_put(Dst, 12072); } dasm_put(Dst, 10132); break; case BC_KPRI: - dasm_put(Dst, 12077); + dasm_put(Dst, 12080); break; case BC_KNIL: - dasm_put(Dst, 12106, LJ_TNIL); + dasm_put(Dst, 12109, LJ_TNIL); break; /* -- Upvalue and function ops ------------------------------------------ */ case BC_UGET: - dasm_put(Dst, 12154, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 12157, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_USETV: #define TV2MARKOFS \ ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) - dasm_put(Dst, 12195, 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); - dasm_put(Dst, 12291); + dasm_put(Dst, 12198, 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); + dasm_put(Dst, 12294); break; #undef TV2MARKOFS case BC_USETS: - dasm_put(Dst, 12303, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); + dasm_put(Dst, 12306, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); break; case BC_USETN: - dasm_put(Dst, 12399); + dasm_put(Dst, 12402); if (sse) { - dasm_put(Dst, 12404); + dasm_put(Dst, 12407); } else { - dasm_put(Dst, 11833); + dasm_put(Dst, 10656); } - dasm_put(Dst, 12412, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 12415, offsetof(GCfuncL, uvptr), DtA(->v)); if (sse) { - dasm_put(Dst, 12421); + dasm_put(Dst, 12424); } else { - dasm_put(Dst, 12427); + dasm_put(Dst, 12430); } dasm_put(Dst, 10132); break; case BC_USETP: - dasm_put(Dst, 12430, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 12433, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_UCLO: - dasm_put(Dst, 12470, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 12473, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); break; case BC_FNEW: - dasm_put(Dst, 12526, Dt1(->base), Dt1(->base), LJ_TFUNC); + dasm_put(Dst, 12529, Dt1(->base), Dt1(->base), LJ_TFUNC); break; /* -- Table ops --------------------------------------------------------- */ case BC_TNEW: - dasm_put(Dst, 12593, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); + dasm_put(Dst, 12596, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); break; case BC_TDUP: - dasm_put(Dst, 12717, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); + dasm_put(Dst, 12720, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); break; case BC_GGET: - dasm_put(Dst, 12816, Dt7(->env)); + dasm_put(Dst, 12819, Dt7(->env)); break; case BC_GSET: - dasm_put(Dst, 12836, Dt7(->env)); + dasm_put(Dst, 12839, Dt7(->env)); break; case BC_TGETV: - dasm_put(Dst, 12856, LJ_TTAB); + dasm_put(Dst, 12859, LJ_TTAB); if (LJ_DUALNUM) { - dasm_put(Dst, 12879, LJ_TISNUM); + dasm_put(Dst, 12882, LJ_TISNUM); } else { - dasm_put(Dst, 12893, LJ_TISNUM); + dasm_put(Dst, 12896, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12904); + dasm_put(Dst, 12907); } else { } - dasm_put(Dst, 12925); + dasm_put(Dst, 12928); } - dasm_put(Dst, 12930, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); - dasm_put(Dst, 13125, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); + dasm_put(Dst, 13128, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13341, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETS: - dasm_put(Dst, 13478, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); - dasm_put(Dst, 13555, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<next)); - dasm_put(Dst, 13642, Dt6(->metatable), Dt6(->nomm), 1<base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13481, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); + dasm_put(Dst, 13558, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<next)); + dasm_put(Dst, 13645, Dt6(->metatable), Dt6(->nomm), 1<base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETB: - dasm_put(Dst, 13734, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); - dasm_put(Dst, 13829, Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13737, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); + dasm_put(Dst, 13832, Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETM: - dasm_put(Dst, 13877, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); - dasm_put(Dst, 14027, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13880, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 14030, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; /* -- Calls and vararg handling ----------------------------------------- */ case BC_CALL: case BC_CALLM: - dasm_put(Dst, 11142); + dasm_put(Dst, 11145); if (op == BC_CALLM) { - dasm_put(Dst, 14047); + dasm_put(Dst, 14050); } - dasm_put(Dst, 14052, LJ_TFUNC, Dt7(->pc)); + dasm_put(Dst, 14055, LJ_TFUNC, Dt7(->pc)); break; case BC_CALLMT: - dasm_put(Dst, 14047); + dasm_put(Dst, 14050); break; case BC_CALLT: - dasm_put(Dst, 14095, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); - dasm_put(Dst, 14213, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); + dasm_put(Dst, 14098, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); + dasm_put(Dst, 14216, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); break; case BC_ITERC: - dasm_put(Dst, 14287, LJ_TFUNC, 2+1, Dt7(->pc)); + dasm_put(Dst, 14290, LJ_TFUNC, 2+1, Dt7(->pc)); break; case BC_ITERN: #if LJ_HASJIT #endif - dasm_put(Dst, 14359, Dt6(->asize), Dt6(->array), LJ_TNIL); + dasm_put(Dst, 14362, Dt6(->asize), Dt6(->array), LJ_TNIL); if (LJ_DUALNUM) { - dasm_put(Dst, 11041, LJ_TISNUM); + dasm_put(Dst, 11044, LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 11119); + dasm_put(Dst, 11122); } else { - dasm_put(Dst, 14411); + dasm_put(Dst, 14414); } - dasm_put(Dst, 14417); + dasm_put(Dst, 14420); if (LJ_DUALNUM) { } else if (sse) { - dasm_put(Dst, 11006); + dasm_put(Dst, 11009); } else { - dasm_put(Dst, 11018); + dasm_put(Dst, 11021); } - dasm_put(Dst, 14430, -BCBIAS_J*4); + dasm_put(Dst, 14433, -BCBIAS_J*4); if (!LJ_DUALNUM && !sse) { - dasm_put(Dst, 14484); + dasm_put(Dst, 14487); } - dasm_put(Dst, 14490, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key), DtB(->val)); + dasm_put(Dst, 14493, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key), DtB(->val)); break; case BC_ISNEXT: - dasm_put(Dst, 14569, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); + dasm_put(Dst, 14572, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); break; case BC_VARG: - dasm_put(Dst, 14670, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); - dasm_put(Dst, 14837, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); + dasm_put(Dst, 14673, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); + dasm_put(Dst, 14840, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); break; /* -- Returns ----------------------------------------------------------- */ case BC_RETM: - dasm_put(Dst, 14047); + dasm_put(Dst, 14050); break; case BC_RET: case BC_RET0: case BC_RET1: if (op != BC_RET0) { - dasm_put(Dst, 14907); + dasm_put(Dst, 14910); } - dasm_put(Dst, 14911, FRAME_TYPE); + dasm_put(Dst, 14914, FRAME_TYPE); switch (op) { case BC_RET: - dasm_put(Dst, 14930); + dasm_put(Dst, 14933); break; case BC_RET1: - dasm_put(Dst, 14984); + dasm_put(Dst, 14987); /* fallthrough */ case BC_RET0: - dasm_put(Dst, 14994); + dasm_put(Dst, 14997); default: break; } - dasm_put(Dst, 15005, Dt7(->pc), PC2PROTO(k)); + dasm_put(Dst, 15008, Dt7(->pc), PC2PROTO(k)); if (op == BC_RET) { - dasm_put(Dst, 15053, LJ_TNIL); + dasm_put(Dst, 15056, LJ_TNIL); } else { - dasm_put(Dst, 15064, LJ_TNIL); + dasm_put(Dst, 15067, LJ_TNIL); } - dasm_put(Dst, 15071, -FRAME_VARG, FRAME_TYPEP); + dasm_put(Dst, 15074, -FRAME_VARG, FRAME_TYPEP); if (op != BC_RET0) { - dasm_put(Dst, 15095); + dasm_put(Dst, 15098); } dasm_put(Dst, 4669); break; @@ -2739,7 +2738,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FORL: #if LJ_HASJIT - dasm_put(Dst, 15099, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 15102, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2751,104 +2750,104 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FORI: case BC_IFORL: vk = (op == BC_IFORL || op == BC_JFORL); - dasm_put(Dst, 15120); + dasm_put(Dst, 15123); if (LJ_DUALNUM) { - dasm_put(Dst, 15124, LJ_TISNUM); + dasm_put(Dst, 15127, LJ_TISNUM); if (!vk) { - dasm_put(Dst, 15134, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 15137, LJ_TISNUM, LJ_TISNUM); } else { - dasm_put(Dst, 15163); + dasm_put(Dst, 15166); } - dasm_put(Dst, 15182, LJ_TISNUM); + dasm_put(Dst, 15185, LJ_TISNUM); if (op == BC_FORI) { - dasm_put(Dst, 15193, -BCBIAS_J*4); + dasm_put(Dst, 15196, -BCBIAS_J*4); } else if (op == BC_JFORI) { - dasm_put(Dst, 15207, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 15210, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { - dasm_put(Dst, 15225, -BCBIAS_J*4); + dasm_put(Dst, 15228, -BCBIAS_J*4); } else { - dasm_put(Dst, 15217, BC_JLOOP); + dasm_put(Dst, 15220, BC_JLOOP); } - dasm_put(Dst, 15239); + dasm_put(Dst, 15242); if (vk) { - dasm_put(Dst, 15264); + dasm_put(Dst, 15267); } - dasm_put(Dst, 15182, LJ_TISNUM); + dasm_put(Dst, 15185, LJ_TISNUM); if (op == BC_FORI) { - dasm_put(Dst, 15273); + dasm_put(Dst, 15276); } else if (op == BC_JFORI) { - dasm_put(Dst, 15278, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 15281, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { - dasm_put(Dst, 15292); + dasm_put(Dst, 15295); } else { - dasm_put(Dst, 15288, BC_JLOOP); + dasm_put(Dst, 15291, BC_JLOOP); } - dasm_put(Dst, 15297); + dasm_put(Dst, 15300); } else if (!vk) { - dasm_put(Dst, 15304, LJ_TISNUM); + dasm_put(Dst, 15307, LJ_TISNUM); } if (!vk) { - dasm_put(Dst, 15310, LJ_TISNUM); + dasm_put(Dst, 15313, LJ_TISNUM); } - dasm_put(Dst, 15324); + dasm_put(Dst, 15327); if (!vk) { - dasm_put(Dst, 15328, LJ_TISNUM); + dasm_put(Dst, 15331, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 15337); + dasm_put(Dst, 15340); if (vk) { - dasm_put(Dst, 15349); + dasm_put(Dst, 15352); } else { - dasm_put(Dst, 15368); + dasm_put(Dst, 15371); } - dasm_put(Dst, 15373); + dasm_put(Dst, 15376); } else { - dasm_put(Dst, 15386); + dasm_put(Dst, 15389); if (vk) { - dasm_put(Dst, 15392); + dasm_put(Dst, 15395); } else { - dasm_put(Dst, 15408); + dasm_put(Dst, 15411); } - dasm_put(Dst, 15416); + dasm_put(Dst, 15419); if (cmov) { dasm_put(Dst, 10087); } else { dasm_put(Dst, 10093); } if (!cmov) { - dasm_put(Dst, 15421); + dasm_put(Dst, 15424); } } if (op == BC_FORI) { if (LJ_DUALNUM) { - dasm_put(Dst, 15427); + dasm_put(Dst, 15430); } else { - dasm_put(Dst, 15432, -BCBIAS_J*4); + dasm_put(Dst, 15435, -BCBIAS_J*4); } } else if (op == BC_JFORI) { - dasm_put(Dst, 15442, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 15445, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { if (LJ_DUALNUM) { - dasm_put(Dst, 15456); + dasm_put(Dst, 15459); } else { - dasm_put(Dst, 15461, -BCBIAS_J*4); + dasm_put(Dst, 15464, -BCBIAS_J*4); } } else { - dasm_put(Dst, 15452, BC_JLOOP); + dasm_put(Dst, 15455, BC_JLOOP); } if (LJ_DUALNUM) { dasm_put(Dst, 10016); } else { - dasm_put(Dst, 10787); + dasm_put(Dst, 10790); } if (sse) { - dasm_put(Dst, 15471); + dasm_put(Dst, 15474); } break; case BC_ITERL: #if LJ_HASJIT - dasm_put(Dst, 15099, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 15102, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2857,18 +2856,18 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; #endif case BC_IITERL: - dasm_put(Dst, 15482, LJ_TNIL); + dasm_put(Dst, 15485, LJ_TNIL); if (op == BC_JITERL) { - dasm_put(Dst, 15497, BC_JLOOP); + dasm_put(Dst, 15500, BC_JLOOP); } else { - dasm_put(Dst, 15511, -BCBIAS_J*4); + dasm_put(Dst, 15514, -BCBIAS_J*4); } dasm_put(Dst, 10130); break; case BC_LOOP: #if LJ_HASJIT - dasm_put(Dst, 15099, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 15102, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2878,12 +2877,12 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_JLOOP: #if LJ_HASJIT - dasm_put(Dst, 15527, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); + dasm_put(Dst, 15530, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); #endif break; case BC_JMP: - dasm_put(Dst, 15568, -BCBIAS_J*4); + dasm_put(Dst, 15571, -BCBIAS_J*4); break; /* -- Function headers -------------------------------------------------- */ @@ -2897,7 +2896,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FUNCF: #if LJ_HASJIT - dasm_put(Dst, 15594, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 15597, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif case BC_FUNCV: /* NYI: compiled vararg functions. */ break; @@ -2907,13 +2906,13 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; #endif case BC_IFUNCF: - dasm_put(Dst, 15615, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); + dasm_put(Dst, 15618, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); if (op == BC_JFUNCF) { - dasm_put(Dst, 15646, BC_JLOOP); + dasm_put(Dst, 15649, BC_JLOOP); } else { dasm_put(Dst, 10132); } - dasm_put(Dst, 15655, LJ_TNIL); + dasm_put(Dst, 15658, LJ_TNIL); break; case BC_JFUNCV: @@ -2924,30 +2923,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; /* NYI: compiled vararg functions. */ case BC_IFUNCV: - dasm_put(Dst, 15677, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); + dasm_put(Dst, 15680, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); if (op == BC_JFUNCV) { - dasm_put(Dst, 15646, BC_JLOOP); + dasm_put(Dst, 15649, BC_JLOOP); } else { - dasm_put(Dst, 15774, -4+PC2PROTO(k)); + dasm_put(Dst, 15777, -4+PC2PROTO(k)); } - dasm_put(Dst, 15799, LJ_TNIL); + dasm_put(Dst, 15802, LJ_TNIL); break; case BC_FUNCC: case BC_FUNCCW: - dasm_put(Dst, 15821, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); + dasm_put(Dst, 15824, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); if (op == BC_FUNCC) { dasm_put(Dst, 2341); } else { - dasm_put(Dst, 15851); + dasm_put(Dst, 15854); } - dasm_put(Dst, 15859, DISPATCH_GL(vmstate), ~LJ_VMST_C); + dasm_put(Dst, 15862, DISPATCH_GL(vmstate), ~LJ_VMST_C); if (op == BC_FUNCC) { - dasm_put(Dst, 15869); + dasm_put(Dst, 15872); } else { - dasm_put(Dst, 15874, DISPATCH_GL(wrapf)); + dasm_put(Dst, 15877, DISPATCH_GL(wrapf)); } - dasm_put(Dst, 15880, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); + dasm_put(Dst, 15883, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); break; /* ---------------------------------------------------------------------- */ @@ -2975,7 +2974,7 @@ static int build_backend(BuildCtx *ctx) build_subroutines(ctx, cmov, sse); - dasm_put(Dst, 15906); + dasm_put(Dst, 15909); for (op = 0; op < BC__MAX; op++) build_ins(ctx, (BCOp)op, op, cmov, sse); diff --git a/src/buildvm_x64win.h b/src/buildvm_x64win.h index e4de09ee..2e51c32b 100644 --- a/src/buildvm_x64win.h +++ b/src/buildvm_x64win.h @@ -12,7 +12,7 @@ #define DASM_SECTION_CODE_OP 0 #define DASM_SECTION_CODE_SUB 1 #define DASM_MAXSECTION 2 -static const unsigned char build_actionlist[15785] = { +static const unsigned char build_actionlist[15787] = { 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,72, 141,76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68, 36,84,252,247,198,237,15,132,244,13,248,14,129,252,246,239,252,247,198,237, @@ -528,46 +528,46 @@ static const unsigned char build_actionlist[15785] = { 182,232,131,198,4,193,232,16,252,255,36,252,235,248,7,15,135,244,249,129, 124,253,199,4,239,15,130,244,247,255,252,242,15,42,4,199,255,219,4,199,255, 252,233,244,248,248,8,255,252,242,15,42,4,202,102,15,46,4,199,255,219,4,202, - 221,4,194,255,129,252,253,239,15,131,244,249,255,248,1,252,242,15,16,4,199, - 248,2,102,15,46,4,202,248,4,255,248,1,221,4,199,248,2,221,4,202,255,72,252, - 247,208,139,108,202,4,131,198,4,57,197,255,15,133,244,249,15,183,70,252,254, - 141,180,253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16, - 252,255,36,252,235,248,3,129,252,253,239,15,133,244,2,252,233,244,46,255, - 15,132,244,248,129,252,253,239,15,132,244,46,15,183,70,252,254,141,180,253, - 134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36, - 252,235,255,139,108,194,4,131,198,4,129,252,253,239,255,137,108,202,4,139, - 44,194,137,44,202,255,72,139,44,194,72,137,44,202,139,6,15,182,204,15,182, - 232,131,198,4,193,232,16,252,255,36,252,235,255,49,252,237,129,124,253,194, - 4,239,129,213,239,137,108,202,4,139,6,15,182,204,15,182,232,131,198,4,193, - 232,16,252,255,36,252,235,255,129,124,253,194,4,239,15,133,244,251,139,44, - 194,252,247,221,15,128,244,250,199,68,202,4,237,137,44,202,248,9,139,6,15, - 182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,4,199,68,202, - 4,0,0,224,65,199,4,202,0,0,0,0,252,233,244,9,248,5,15,135,244,51,255,129, - 124,253,194,4,239,15,131,244,51,255,252,242,15,16,4,194,72,184,237,237,102, - 72,15,110,200,15,87,193,252,242,15,17,4,202,255,221,4,194,217,224,221,28, - 202,255,129,124,253,194,4,239,15,133,244,248,139,4,194,255,139,128,233,248, - 1,199,68,202,4,237,137,4,202,255,15,87,192,252,242,15,42,128,233,248,1,252, - 242,15,17,4,202,255,219,128,233,248,1,221,28,202,255,139,6,15,182,204,15, - 182,232,131,198,4,193,232,16,252,255,36,252,235,248,2,129,124,253,194,4,239, - 15,133,244,54,139,12,194,137,213,232,251,1,20,255,252,242,15,42,192,255,137, - 252,234,15,182,78,252,253,252,233,244,1,255,15,182,252,236,15,182,192,255, - 129,124,253,252,234,4,239,15,133,244,48,129,124,253,199,4,239,15,133,244, - 48,139,44,252,234,3,44,199,15,128,244,47,255,129,124,253,252,234,4,239,15, - 133,244,50,129,124,253,199,4,239,15,133,244,50,139,4,199,3,4,252,234,15,128, - 244,49,255,129,124,253,252,234,4,239,15,133,244,53,129,124,253,194,4,239, - 15,133,244,53,139,44,252,234,3,44,194,15,128,244,52,255,199,68,202,4,237, - 255,129,124,253,252,234,4,239,15,131,244,48,255,129,124,253,199,4,239,15, - 131,244,48,255,252,242,15,16,4,252,234,252,242,15,88,4,199,255,221,4,252, - 234,220,4,199,255,129,124,253,252,234,4,239,15,131,244,50,255,129,124,253, - 199,4,239,15,131,244,50,255,252,242,15,16,4,199,252,242,15,88,4,252,234,255, - 221,4,199,220,4,252,234,255,129,124,253,252,234,4,239,15,131,244,53,129,124, - 253,194,4,239,15,131,244,53,255,252,242,15,16,4,252,234,252,242,15,88,4,194, - 255,221,4,252,234,220,4,194,255,129,124,253,252,234,4,239,15,133,244,48,129, - 124,253,199,4,239,15,133,244,48,139,44,252,234,43,44,199,15,128,244,47,255, - 129,124,253,252,234,4,239,15,133,244,50,129,124,253,199,4,239,15,133,244, - 50,139,4,199,43,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239,15, - 133,244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234,43,44,194,15, - 128,244,52,255,252,242,15,16,4,252,234,252,242,15,92,4,199,255,221,4,252, + 221,4,199,255,129,252,253,239,15,131,244,249,255,248,1,252,242,15,16,4,199, + 248,2,102,15,46,4,202,248,4,255,248,1,221,4,199,248,2,221,4,202,248,4,255, + 72,252,247,208,139,108,202,4,131,198,4,57,197,255,15,133,244,249,15,183,70, + 252,254,141,180,253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193, + 232,16,252,255,36,252,235,248,3,129,252,253,239,15,133,244,2,252,233,244, + 46,255,15,132,244,248,129,252,253,239,15,132,244,46,15,183,70,252,254,141, + 180,253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252, + 255,36,252,235,255,139,108,194,4,131,198,4,129,252,253,239,255,137,108,202, + 4,139,44,194,137,44,202,255,72,139,44,194,72,137,44,202,139,6,15,182,204, + 15,182,232,131,198,4,193,232,16,252,255,36,252,235,255,49,252,237,129,124, + 253,194,4,239,129,213,239,137,108,202,4,139,6,15,182,204,15,182,232,131,198, + 4,193,232,16,252,255,36,252,235,255,129,124,253,194,4,239,15,133,244,251, + 139,44,194,252,247,221,15,128,244,250,199,68,202,4,237,137,44,202,248,9,139, + 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,4,199, + 68,202,4,0,0,224,65,199,4,202,0,0,0,0,252,233,244,9,248,5,15,135,244,51,255, + 129,124,253,194,4,239,15,131,244,51,255,252,242,15,16,4,194,72,184,237,237, + 102,72,15,110,200,15,87,193,252,242,15,17,4,202,255,221,4,194,217,224,221, + 28,202,255,129,124,253,194,4,239,15,133,244,248,139,4,194,255,139,128,233, + 248,1,199,68,202,4,237,137,4,202,255,15,87,192,252,242,15,42,128,233,248, + 1,252,242,15,17,4,202,255,219,128,233,248,1,221,28,202,255,139,6,15,182,204, + 15,182,232,131,198,4,193,232,16,252,255,36,252,235,248,2,129,124,253,194, + 4,239,15,133,244,54,139,12,194,137,213,232,251,1,20,255,252,242,15,42,192, + 255,137,252,234,15,182,78,252,253,252,233,244,1,255,15,182,252,236,15,182, + 192,255,129,124,253,252,234,4,239,15,133,244,48,129,124,253,199,4,239,15, + 133,244,48,139,44,252,234,3,44,199,15,128,244,47,255,129,124,253,252,234, + 4,239,15,133,244,50,129,124,253,199,4,239,15,133,244,50,139,4,199,3,4,252, + 234,15,128,244,49,255,129,124,253,252,234,4,239,15,133,244,53,129,124,253, + 194,4,239,15,133,244,53,139,44,252,234,3,44,194,15,128,244,52,255,199,68, + 202,4,237,255,129,124,253,252,234,4,239,15,131,244,48,255,129,124,253,199, + 4,239,15,131,244,48,255,252,242,15,16,4,252,234,252,242,15,88,4,199,255,221, + 4,252,234,220,4,199,255,129,124,253,252,234,4,239,15,131,244,50,255,129,124, + 253,199,4,239,15,131,244,50,255,252,242,15,16,4,199,252,242,15,88,4,252,234, + 255,221,4,199,220,4,252,234,255,129,124,253,252,234,4,239,15,131,244,53,129, + 124,253,194,4,239,15,131,244,53,255,252,242,15,16,4,252,234,252,242,15,88, + 4,194,255,221,4,252,234,220,4,194,255,129,124,253,252,234,4,239,15,133,244, + 48,129,124,253,199,4,239,15,133,244,48,139,44,252,234,43,44,199,15,128,244, + 47,255,129,124,253,252,234,4,239,15,133,244,50,129,124,253,199,4,239,15,133, + 244,50,139,4,199,43,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239, + 15,133,244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234,43,44,194, + 15,128,244,52,255,252,242,15,16,4,252,234,252,242,15,92,4,199,255,221,4,252, 234,220,36,199,255,252,242,15,16,4,199,252,242,15,92,4,252,234,255,221,4, 199,220,36,252,234,255,252,242,15,16,4,252,234,252,242,15,92,4,194,255,221, 4,252,234,220,36,194,255,129,124,253,252,234,4,239,15,133,244,48,129,124, @@ -2055,31 +2055,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } else { dasm_put(Dst, 10063); } - dasm_put(Dst, 4586); } goto iseqne_fp; case BC_ISEQP: case BC_ISNEP: vk = op == BC_ISEQP; - dasm_put(Dst, 10655); + dasm_put(Dst, 10657); if (!LJ_HASFFI) goto iseqne_test; if (vk) { - dasm_put(Dst, 10669, -BCBIAS_J*4, LJ_TCDATA); + dasm_put(Dst, 10671, -BCBIAS_J*4, LJ_TCDATA); } else { - dasm_put(Dst, 10719, LJ_TCDATA, -BCBIAS_J*4); + dasm_put(Dst, 10721, LJ_TCDATA, -BCBIAS_J*4); } break; /* -- Unary test and copy ops ------------------------------------------- */ case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: - dasm_put(Dst, 10763, LJ_TISTRUECOND); + dasm_put(Dst, 10765, LJ_TISTRUECOND); if (op == BC_IST || op == BC_ISTC) { dasm_put(Dst, 10085); } else { dasm_put(Dst, 10080); } if (op == BC_ISTC || op == BC_ISFC) { - dasm_put(Dst, 10775); + dasm_put(Dst, 10777); } dasm_put(Dst, 10090, -BCBIAS_J*4); break; @@ -2087,21 +2086,21 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) /* -- Unary ops --------------------------------------------------------- */ case BC_MOV: - dasm_put(Dst, 10786); + dasm_put(Dst, 10788); break; case BC_NOT: - dasm_put(Dst, 10814, LJ_TISTRUECOND, LJ_TTRUE); + dasm_put(Dst, 10816, LJ_TISTRUECOND, LJ_TTRUE); break; case BC_UNM: if (LJ_DUALNUM) { - dasm_put(Dst, 10850, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 10852, LJ_TISNUM, LJ_TISNUM); } else { - dasm_put(Dst, 10927, LJ_TISNUM); + dasm_put(Dst, 10929, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 10938, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); + dasm_put(Dst, 10940, (unsigned int)(U64x(80000000,00000000)), (unsigned int)((U64x(80000000,00000000))>>32)); } else { - dasm_put(Dst, 10963); + dasm_put(Dst, 10965); } if (LJ_DUALNUM) { dasm_put(Dst, 10361); @@ -2110,21 +2109,21 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } break; case BC_LEN: - dasm_put(Dst, 10972, LJ_TSTR); + dasm_put(Dst, 10974, LJ_TSTR); if (LJ_DUALNUM) { - dasm_put(Dst, 10986, Dt5(->len), LJ_TISNUM); + dasm_put(Dst, 10988, Dt5(->len), LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 11000, Dt5(->len)); + dasm_put(Dst, 11002, Dt5(->len)); } else { - dasm_put(Dst, 11018, Dt5(->len)); + dasm_put(Dst, 11020, Dt5(->len)); } - dasm_put(Dst, 11027, LJ_TTAB); + dasm_put(Dst, 11029, LJ_TTAB); if (LJ_DUALNUM) { } else if (sse) { - dasm_put(Dst, 11068); + dasm_put(Dst, 11070); } else { } - dasm_put(Dst, 11074); + dasm_put(Dst, 11076); break; /* -- Binary ops -------------------------------------------------------- */ @@ -2132,603 +2131,603 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: if (LJ_DUALNUM) { - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11095, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11097, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 11128, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11130, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 11161, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11163, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 11194, LJ_TISNUM); + dasm_put(Dst, 11196, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 10996); + dasm_put(Dst, 10998); } else { - dasm_put(Dst, 10782); + dasm_put(Dst, 10784); } dasm_put(Dst, 10102); } else { - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11223); + dasm_put(Dst, 11225); } else { - dasm_put(Dst, 11237); + dasm_put(Dst, 11239); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11268); + dasm_put(Dst, 11270); } else { - dasm_put(Dst, 11282); + dasm_put(Dst, 11284); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11312); + dasm_put(Dst, 11314); } else { - dasm_put(Dst, 11326); + dasm_put(Dst, 11328); } break; } if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } dasm_put(Dst, 10102); } break; case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: if (LJ_DUALNUM) { - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11334, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11336, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 11367, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11369, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 11400, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11402, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 11194, LJ_TISNUM); + dasm_put(Dst, 11196, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 10996); + dasm_put(Dst, 10998); } else { - dasm_put(Dst, 10782); + dasm_put(Dst, 10784); } dasm_put(Dst, 10102); } else { - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11433); + dasm_put(Dst, 11435); } else { - dasm_put(Dst, 11447); + dasm_put(Dst, 11449); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11455); + dasm_put(Dst, 11457); } else { - dasm_put(Dst, 11469); + dasm_put(Dst, 11471); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11477); + dasm_put(Dst, 11479); } else { - dasm_put(Dst, 11491); + dasm_put(Dst, 11493); } break; } if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } dasm_put(Dst, 10102); } break; case BC_MULVN: case BC_MULNV: case BC_MULVV: if (LJ_DUALNUM) { - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11499, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11501, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 11533, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11535, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 11567, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11569, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 11194, LJ_TISNUM); + dasm_put(Dst, 11196, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 10996); + dasm_put(Dst, 10998); } else { - dasm_put(Dst, 10782); + dasm_put(Dst, 10784); } dasm_put(Dst, 10102); } else { - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11601); + dasm_put(Dst, 11603); } else { - dasm_put(Dst, 11615); + dasm_put(Dst, 11617); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11623); + dasm_put(Dst, 11625); } else { - dasm_put(Dst, 11637); + dasm_put(Dst, 11639); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11645); + dasm_put(Dst, 11647); } else { - dasm_put(Dst, 11659); + dasm_put(Dst, 11661); } break; } if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } dasm_put(Dst, 10102); } break; case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11667); + dasm_put(Dst, 11669); } else { - dasm_put(Dst, 11681); + dasm_put(Dst, 11683); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11689); + dasm_put(Dst, 11691); } else { - dasm_put(Dst, 11703); + dasm_put(Dst, 11705); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11711); + dasm_put(Dst, 11713); } else { - dasm_put(Dst, 11725); + dasm_put(Dst, 11727); } break; } if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } dasm_put(Dst, 10102); break; case BC_MODVN: - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11733); + dasm_put(Dst, 11735); } else { - dasm_put(Dst, 11747); + dasm_put(Dst, 11749); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11755); + dasm_put(Dst, 11757); } else { - dasm_put(Dst, 11769); + dasm_put(Dst, 11771); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11777); + dasm_put(Dst, 11779); } else { - dasm_put(Dst, 11791); + dasm_put(Dst, 11793); } break; } - dasm_put(Dst, 11799); + dasm_put(Dst, 11801); if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } dasm_put(Dst, 10102); break; case BC_MODNV: case BC_MODVV: - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11733); + dasm_put(Dst, 11735); } else { - dasm_put(Dst, 11747); + dasm_put(Dst, 11749); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11755); + dasm_put(Dst, 11757); } else { - dasm_put(Dst, 11769); + dasm_put(Dst, 11771); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11777); + dasm_put(Dst, 11779); } else { - dasm_put(Dst, 11791); + dasm_put(Dst, 11793); } break; } - dasm_put(Dst, 11805); + dasm_put(Dst, 11807); break; case BC_POW: - dasm_put(Dst, 11087); + dasm_put(Dst, 11089); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 11200, LJ_TISNUM); + dasm_put(Dst, 11202, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11212, LJ_TISNUM); + dasm_put(Dst, 11214, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11733); + dasm_put(Dst, 11735); } else { - dasm_put(Dst, 11747); + dasm_put(Dst, 11749); } break; case 1: - dasm_put(Dst, 11245, LJ_TISNUM); + dasm_put(Dst, 11247, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 11257, LJ_TISNUM); + dasm_put(Dst, 11259, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 11755); + dasm_put(Dst, 11757); } else { - dasm_put(Dst, 11769); + dasm_put(Dst, 11771); } break; default: - dasm_put(Dst, 11290, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11292, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 11777); + dasm_put(Dst, 11779); } else { - dasm_put(Dst, 11791); + dasm_put(Dst, 11793); } break; } - dasm_put(Dst, 11810); + dasm_put(Dst, 11812); if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } dasm_put(Dst, 10102); break; case BC_CAT: - dasm_put(Dst, 11814, Dt1(->base), Dt1(->base)); + dasm_put(Dst, 11816, Dt1(->base), Dt1(->base)); break; /* -- Constant ops ------------------------------------------------------ */ case BC_KSTR: - dasm_put(Dst, 11897, LJ_TSTR); + dasm_put(Dst, 11899, LJ_TSTR); break; case BC_KCDATA: #if LJ_HASFFI - dasm_put(Dst, 11897, LJ_TCDATA); + dasm_put(Dst, 11899, LJ_TCDATA); #endif break; case BC_KSHORT: if (LJ_DUALNUM) { - dasm_put(Dst, 11932, LJ_TISNUM); + dasm_put(Dst, 11934, LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 11944); + dasm_put(Dst, 11946); } else { - dasm_put(Dst, 11959); + dasm_put(Dst, 11961); } dasm_put(Dst, 10102); break; case BC_KNUM: if (sse) { - dasm_put(Dst, 11967); + dasm_put(Dst, 11969); } else { - dasm_put(Dst, 11980); + dasm_put(Dst, 11982); } dasm_put(Dst, 10102); break; case BC_KPRI: - dasm_put(Dst, 11987); + dasm_put(Dst, 11989); break; case BC_KNIL: - dasm_put(Dst, 12015, LJ_TNIL); + dasm_put(Dst, 12017, LJ_TNIL); break; /* -- Upvalue and function ops ------------------------------------------ */ case BC_UGET: - dasm_put(Dst, 12062, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 12064, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_USETV: #define TV2MARKOFS \ ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) - dasm_put(Dst, 12102, 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); - dasm_put(Dst, 12193); + dasm_put(Dst, 12104, 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); + dasm_put(Dst, 12195); break; #undef TV2MARKOFS case BC_USETS: - dasm_put(Dst, 12205, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); + dasm_put(Dst, 12207, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); break; case BC_USETN: - dasm_put(Dst, 12298); + dasm_put(Dst, 12300); if (sse) { - dasm_put(Dst, 12303); + dasm_put(Dst, 12305); } else { - dasm_put(Dst, 11751); + dasm_put(Dst, 10613); } - dasm_put(Dst, 12310, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 12312, offsetof(GCfuncL, uvptr), DtA(->v)); if (sse) { - dasm_put(Dst, 12319); + dasm_put(Dst, 12321); } else { - dasm_put(Dst, 12325); + dasm_put(Dst, 12327); } dasm_put(Dst, 10102); break; case BC_USETP: - dasm_put(Dst, 12328, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 12330, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_UCLO: - dasm_put(Dst, 12367, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 12369, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); break; case BC_FNEW: - dasm_put(Dst, 12422, Dt1(->base), Dt1(->base), LJ_TFUNC); + dasm_put(Dst, 12424, Dt1(->base), Dt1(->base), LJ_TFUNC); break; /* -- Table ops --------------------------------------------------------- */ case BC_TNEW: - dasm_put(Dst, 12488, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); + dasm_put(Dst, 12490, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); break; case BC_TDUP: - dasm_put(Dst, 12610, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); + dasm_put(Dst, 12612, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); break; case BC_GGET: - dasm_put(Dst, 12705, Dt7(->env)); + dasm_put(Dst, 12707, Dt7(->env)); break; case BC_GSET: - dasm_put(Dst, 12724, Dt7(->env)); + dasm_put(Dst, 12726, Dt7(->env)); break; case BC_TGETV: - dasm_put(Dst, 12743, LJ_TTAB); + dasm_put(Dst, 12745, LJ_TTAB); if (LJ_DUALNUM) { - dasm_put(Dst, 12766, LJ_TISNUM); + dasm_put(Dst, 12768, LJ_TISNUM); } else { - dasm_put(Dst, 12780, LJ_TISNUM); + dasm_put(Dst, 12782, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12791); + dasm_put(Dst, 12793); } else { } - dasm_put(Dst, 12812); + dasm_put(Dst, 12814); } - dasm_put(Dst, 12817, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); - dasm_put(Dst, 13010, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); + dasm_put(Dst, 13012, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13223, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETS: - dasm_put(Dst, 13358, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); - dasm_put(Dst, 13434, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<next)); - dasm_put(Dst, 13522, Dt6(->metatable), Dt6(->nomm), 1<base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13360, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); + dasm_put(Dst, 13436, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<next)); + dasm_put(Dst, 13524, Dt6(->metatable), Dt6(->nomm), 1<base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETB: - dasm_put(Dst, 13613, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); - dasm_put(Dst, 13707, Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13615, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); + dasm_put(Dst, 13709, Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETM: - dasm_put(Dst, 13753, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); - dasm_put(Dst, 13896, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 13755, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 13898, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; /* -- Calls and vararg handling ----------------------------------------- */ case BC_CALL: case BC_CALLM: - dasm_put(Dst, 11091); + dasm_put(Dst, 11093); if (op == BC_CALLM) { - dasm_put(Dst, 13914); + dasm_put(Dst, 13916); } - dasm_put(Dst, 13919, LJ_TFUNC, Dt7(->pc)); + dasm_put(Dst, 13921, LJ_TFUNC, Dt7(->pc)); break; case BC_CALLMT: - dasm_put(Dst, 13914); + dasm_put(Dst, 13916); break; case BC_CALLT: - dasm_put(Dst, 13961, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); - dasm_put(Dst, 14076, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); + dasm_put(Dst, 13963, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); + dasm_put(Dst, 14078, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); break; case BC_ITERC: - dasm_put(Dst, 14147, LJ_TFUNC, 2+1, Dt7(->pc)); + dasm_put(Dst, 14149, LJ_TFUNC, 2+1, Dt7(->pc)); break; case BC_ITERN: #if LJ_HASJIT #endif - dasm_put(Dst, 14218, Dt6(->asize), Dt6(->array), LJ_TNIL); + dasm_put(Dst, 14220, Dt6(->asize), Dt6(->array), LJ_TNIL); if (LJ_DUALNUM) { - dasm_put(Dst, 10991, LJ_TISNUM); + dasm_put(Dst, 10993, LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 11068); + dasm_put(Dst, 11070); } else { - dasm_put(Dst, 14264); + dasm_put(Dst, 14266); } - dasm_put(Dst, 14270); + dasm_put(Dst, 14272); if (LJ_DUALNUM) { } else if (sse) { - dasm_put(Dst, 10956); + dasm_put(Dst, 10958); } else { - dasm_put(Dst, 10968); + dasm_put(Dst, 10970); } - dasm_put(Dst, 14283, -BCBIAS_J*4); + dasm_put(Dst, 14285, -BCBIAS_J*4); if (!LJ_DUALNUM && !sse) { - dasm_put(Dst, 14335); + dasm_put(Dst, 14337); } - dasm_put(Dst, 14341, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key), DtB(->val)); + dasm_put(Dst, 14343, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key), DtB(->val)); break; case BC_ISNEXT: - dasm_put(Dst, 14413, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); + dasm_put(Dst, 14415, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); break; case BC_VARG: - dasm_put(Dst, 14513, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); - dasm_put(Dst, 14673, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); + dasm_put(Dst, 14515, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); + dasm_put(Dst, 14675, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); break; /* -- Returns ----------------------------------------------------------- */ case BC_RETM: - dasm_put(Dst, 13914); + dasm_put(Dst, 13916); break; case BC_RET: case BC_RET0: case BC_RET1: if (op != BC_RET0) { - dasm_put(Dst, 14739); + dasm_put(Dst, 14741); } - dasm_put(Dst, 14743, FRAME_TYPE); + dasm_put(Dst, 14745, FRAME_TYPE); switch (op) { case BC_RET: - dasm_put(Dst, 14762); + dasm_put(Dst, 14764); break; case BC_RET1: - dasm_put(Dst, 14814); + dasm_put(Dst, 14816); /* fallthrough */ case BC_RET0: - dasm_put(Dst, 14824); + dasm_put(Dst, 14826); default: break; } - dasm_put(Dst, 14835, Dt7(->pc), PC2PROTO(k)); + dasm_put(Dst, 14837, Dt7(->pc), PC2PROTO(k)); if (op == BC_RET) { - dasm_put(Dst, 14879, LJ_TNIL); + dasm_put(Dst, 14881, LJ_TNIL); } else { - dasm_put(Dst, 14888, LJ_TNIL); + dasm_put(Dst, 14890, LJ_TNIL); } - dasm_put(Dst, 14895, -FRAME_VARG, FRAME_TYPEP); + dasm_put(Dst, 14897, -FRAME_VARG, FRAME_TYPEP); if (op != BC_RET0) { - dasm_put(Dst, 14919); + dasm_put(Dst, 14921); } dasm_put(Dst, 4646); break; @@ -2738,7 +2737,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FORL: #if LJ_HASJIT - dasm_put(Dst, 14923, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 14925, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2750,104 +2749,104 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FORI: case BC_IFORL: vk = (op == BC_IFORL || op == BC_JFORL); - dasm_put(Dst, 14944); + dasm_put(Dst, 14946); if (LJ_DUALNUM) { - dasm_put(Dst, 14948, LJ_TISNUM); + dasm_put(Dst, 14950, LJ_TISNUM); if (!vk) { - dasm_put(Dst, 14958, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 14960, LJ_TISNUM, LJ_TISNUM); } else { - dasm_put(Dst, 14987); + dasm_put(Dst, 14989); } - dasm_put(Dst, 15006, LJ_TISNUM); + dasm_put(Dst, 15008, LJ_TISNUM); if (op == BC_FORI) { - dasm_put(Dst, 15017, -BCBIAS_J*4); + dasm_put(Dst, 15019, -BCBIAS_J*4); } else if (op == BC_JFORI) { - dasm_put(Dst, 15031, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 15033, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { - dasm_put(Dst, 15049, -BCBIAS_J*4); + dasm_put(Dst, 15051, -BCBIAS_J*4); } else { - dasm_put(Dst, 15041, BC_JLOOP); + dasm_put(Dst, 15043, BC_JLOOP); } - dasm_put(Dst, 15063); + dasm_put(Dst, 15065); if (vk) { - dasm_put(Dst, 15087); + dasm_put(Dst, 15089); } - dasm_put(Dst, 15006, LJ_TISNUM); + dasm_put(Dst, 15008, LJ_TISNUM); if (op == BC_FORI) { - dasm_put(Dst, 15096); + dasm_put(Dst, 15098); } else if (op == BC_JFORI) { - dasm_put(Dst, 15101, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 15103, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { - dasm_put(Dst, 15115); + dasm_put(Dst, 15117); } else { - dasm_put(Dst, 15111, BC_JLOOP); + dasm_put(Dst, 15113, BC_JLOOP); } - dasm_put(Dst, 15120); + dasm_put(Dst, 15122); } else if (!vk) { - dasm_put(Dst, 15127, LJ_TISNUM); + dasm_put(Dst, 15129, LJ_TISNUM); } if (!vk) { - dasm_put(Dst, 15133, LJ_TISNUM); + dasm_put(Dst, 15135, LJ_TISNUM); } - dasm_put(Dst, 15147); + dasm_put(Dst, 15149); if (!vk) { - dasm_put(Dst, 15151, LJ_TISNUM); + dasm_put(Dst, 15153, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 15160); + dasm_put(Dst, 15162); if (vk) { - dasm_put(Dst, 15172); + dasm_put(Dst, 15174); } else { - dasm_put(Dst, 15191); + dasm_put(Dst, 15193); } - dasm_put(Dst, 15196); + dasm_put(Dst, 15198); } else { - dasm_put(Dst, 15209); + dasm_put(Dst, 15211); if (vk) { - dasm_put(Dst, 15215); + dasm_put(Dst, 15217); } else { - dasm_put(Dst, 15231); + dasm_put(Dst, 15233); } - dasm_put(Dst, 15239); + dasm_put(Dst, 15241); if (cmov) { dasm_put(Dst, 10057); } else { dasm_put(Dst, 10063); } if (!cmov) { - dasm_put(Dst, 15244); + dasm_put(Dst, 15246); } } if (op == BC_FORI) { if (LJ_DUALNUM) { - dasm_put(Dst, 15250); + dasm_put(Dst, 15252); } else { - dasm_put(Dst, 15255, -BCBIAS_J*4); + dasm_put(Dst, 15257, -BCBIAS_J*4); } } else if (op == BC_JFORI) { - dasm_put(Dst, 15265, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 15267, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { if (LJ_DUALNUM) { - dasm_put(Dst, 15279); + dasm_put(Dst, 15281); } else { - dasm_put(Dst, 15284, -BCBIAS_J*4); + dasm_put(Dst, 15286, -BCBIAS_J*4); } } else { - dasm_put(Dst, 15275, BC_JLOOP); + dasm_put(Dst, 15277, BC_JLOOP); } if (LJ_DUALNUM) { dasm_put(Dst, 9986); } else { - dasm_put(Dst, 10741); + dasm_put(Dst, 10743); } if (sse) { - dasm_put(Dst, 15294); + dasm_put(Dst, 15296); } break; case BC_ITERL: #if LJ_HASJIT - dasm_put(Dst, 14923, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 14925, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2856,18 +2855,18 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; #endif case BC_IITERL: - dasm_put(Dst, 15305, LJ_TNIL); + dasm_put(Dst, 15307, LJ_TNIL); if (op == BC_JITERL) { - dasm_put(Dst, 15320, BC_JLOOP); + dasm_put(Dst, 15322, BC_JLOOP); } else { - dasm_put(Dst, 15334, -BCBIAS_J*4); + dasm_put(Dst, 15336, -BCBIAS_J*4); } dasm_put(Dst, 10100); break; case BC_LOOP: #if LJ_HASJIT - dasm_put(Dst, 14923, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 14925, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2877,12 +2876,12 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_JLOOP: #if LJ_HASJIT - dasm_put(Dst, 15350, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L), 9*16+4*8, -1*16, -2*16, -3*16, -4*16, -5*16, -6*16, -7*16, -8*16, -9*16); + dasm_put(Dst, 15352, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L), 9*16+4*8, -1*16, -2*16, -3*16, -4*16, -5*16, -6*16, -7*16, -8*16, -9*16); #endif break; case BC_JMP: - dasm_put(Dst, 15459, -BCBIAS_J*4); + dasm_put(Dst, 15461, -BCBIAS_J*4); break; /* -- Function headers -------------------------------------------------- */ @@ -2896,7 +2895,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FUNCF: #if LJ_HASJIT - dasm_put(Dst, 15484, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 15486, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif case BC_FUNCV: /* NYI: compiled vararg functions. */ break; @@ -2906,13 +2905,13 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; #endif case BC_IFUNCF: - dasm_put(Dst, 15505, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); + dasm_put(Dst, 15507, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); if (op == BC_JFUNCF) { - dasm_put(Dst, 15535, BC_JLOOP); + dasm_put(Dst, 15537, BC_JLOOP); } else { dasm_put(Dst, 10102); } - dasm_put(Dst, 15544, LJ_TNIL); + dasm_put(Dst, 15546, LJ_TNIL); break; case BC_JFUNCV: @@ -2923,30 +2922,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; /* NYI: compiled vararg functions. */ case BC_IFUNCV: - dasm_put(Dst, 15566, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); + dasm_put(Dst, 15568, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); if (op == BC_JFUNCV) { - dasm_put(Dst, 15535, BC_JLOOP); + dasm_put(Dst, 15537, BC_JLOOP); } else { - dasm_put(Dst, 15657, -4+PC2PROTO(k)); + dasm_put(Dst, 15659, -4+PC2PROTO(k)); } - dasm_put(Dst, 15680, LJ_TNIL); + dasm_put(Dst, 15682, LJ_TNIL); break; case BC_FUNCC: case BC_FUNCCW: - dasm_put(Dst, 15702, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); + dasm_put(Dst, 15704, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); if (op == BC_FUNCC) { dasm_put(Dst, 2310); } else { - dasm_put(Dst, 15732); + dasm_put(Dst, 15734); } - dasm_put(Dst, 15740, DISPATCH_GL(vmstate), ~LJ_VMST_C); + dasm_put(Dst, 15742, DISPATCH_GL(vmstate), ~LJ_VMST_C); if (op == BC_FUNCC) { - dasm_put(Dst, 15749); + dasm_put(Dst, 15751); } else { - dasm_put(Dst, 15753, DISPATCH_GL(wrapf)); + dasm_put(Dst, 15755, DISPATCH_GL(wrapf)); } - dasm_put(Dst, 15758, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); + dasm_put(Dst, 15760, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); break; /* ---------------------------------------------------------------------- */ @@ -2974,7 +2973,7 @@ static int build_backend(BuildCtx *ctx) build_subroutines(ctx, cmov, sse); - dasm_put(Dst, 15783); + dasm_put(Dst, 15785); for (op = 0; op < BC__MAX; op++) build_ins(ctx, (BCOp)op, op, cmov, sse); diff --git a/src/buildvm_x86.dasc b/src/buildvm_x86.dasc index 4d96423c..f7631d62 100644 --- a/src/buildvm_x86.dasc +++ b/src/buildvm_x86.dasc @@ -4055,10 +4055,9 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) | ucomisd xmm0, qword [KBASE+RD*8] } else { | fild dword [BASE+RA*8] - | fld qword [BASE+RD*8] + | fld qword [KBASE+RD*8] } | jmp >4 - | } else { | cmp RB, LJ_TISNUM; jae >3 } @@ -4073,8 +4072,8 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) | fld qword [KBASE+RD*8] |2: | fld qword [BASE+RA*8] - | fcomparepp // eax (RD) modified! |4: + | fcomparepp // eax (RD) modified! } goto iseqne_fp; case BC_ISEQP: case BC_ISNEP: diff --git a/src/buildvm_x86.h b/src/buildvm_x86.h index 75627697..0ce64f41 100644 --- a/src/buildvm_x86.h +++ b/src/buildvm_x86.h @@ -12,7 +12,7 @@ #define DASM_SECTION_CODE_OP 0 #define DASM_SECTION_CODE_SUB 1 #define DASM_MAXSECTION 2 -static const unsigned char build_actionlist[16902] = { +static const unsigned char build_actionlist[16904] = { 254,1,248,10,252,247,198,237,15,132,244,11,131,230,252,248,41,252,242,141, 76,49,252,248,139,114,252,252,199,68,10,4,237,248,12,131,192,1,137,68,36, 20,252,247,198,237,15,132,244,13,248,14,129,252,246,239,252,247,198,237,15, @@ -577,257 +577,257 @@ static const unsigned char build_actionlist[16902] = { 15,182,232,131,198,4,193,232,16,252,255,36,171,248,7,15,135,244,249,129,124, 253,199,4,239,15,130,244,247,255,252,242,15,42,4,199,255,219,4,199,255,252, 233,244,248,248,8,255,252,242,15,42,4,202,102,15,46,4,199,255,219,4,202,221, - 4,194,255,129,252,253,239,15,131,244,249,255,248,1,252,242,15,16,4,199,248, - 2,102,15,46,4,202,248,4,255,248,1,221,4,199,248,2,221,4,202,255,252,247,208, - 139,108,202,4,131,198,4,57,197,255,15,133,244,249,15,183,70,252,254,141,180, - 253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, - 36,171,248,3,129,252,253,239,15,133,244,2,252,233,244,46,255,15,132,244,248, - 129,252,253,239,15,132,244,46,15,183,70,252,254,141,180,253,134,233,248,2, - 139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,139,108, - 194,4,131,198,4,129,252,253,239,255,137,108,202,4,139,44,194,137,44,202,255, - 139,108,194,4,139,4,194,137,108,202,4,137,4,202,139,6,15,182,204,15,182,232, - 131,198,4,193,232,16,252,255,36,171,255,49,252,237,129,124,253,194,4,239, - 129,213,239,137,108,202,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16, - 252,255,36,171,255,129,124,253,194,4,239,15,133,244,251,139,44,194,252,247, - 221,15,128,244,250,199,68,202,4,237,137,44,202,248,9,139,6,15,182,204,15, - 182,232,131,198,4,193,232,16,252,255,36,171,248,4,199,68,202,4,0,0,224,65, - 199,4,202,0,0,0,0,252,233,244,9,248,5,15,135,244,51,255,129,124,253,194,4, - 239,15,131,244,51,255,252,242,15,16,4,194,184,0,0,0,128,102,15,110,200,102, - 15,112,201,81,15,87,193,252,242,15,17,4,202,255,221,4,194,217,224,221,28, - 202,255,129,124,253,194,4,239,15,133,244,248,139,4,194,255,139,128,233,248, - 1,199,68,202,4,237,137,4,202,255,15,87,192,252,242,15,42,128,233,248,1,252, - 242,15,17,4,202,255,219,128,233,248,1,221,28,202,255,139,6,15,182,204,15, - 182,232,131,198,4,193,232,16,252,255,36,171,248,2,129,124,253,194,4,239,15, - 133,244,54,139,12,194,137,213,232,251,1,20,255,252,242,15,42,192,255,137, - 4,36,219,4,36,255,137,252,234,15,182,78,252,253,252,233,244,1,255,15,182, - 252,236,15,182,192,255,129,124,253,252,234,4,239,15,133,244,48,129,124,253, - 199,4,239,15,133,244,48,139,44,252,234,3,44,199,15,128,244,47,255,129,124, - 253,252,234,4,239,15,133,244,50,129,124,253,199,4,239,15,133,244,50,139,4, - 199,3,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239,15,133,244,53, - 129,124,253,194,4,239,15,133,244,53,139,44,252,234,3,44,194,15,128,244,52, - 255,199,68,202,4,237,255,129,124,253,252,234,4,239,15,131,244,48,255,129, - 124,253,199,4,239,15,131,244,48,255,252,242,15,16,4,252,234,252,242,15,88, - 4,199,255,221,4,252,234,220,4,199,255,129,124,253,252,234,4,239,15,131,244, - 50,255,129,124,253,199,4,239,15,131,244,50,255,252,242,15,16,4,199,252,242, - 15,88,4,252,234,255,221,4,199,220,4,252,234,255,129,124,253,252,234,4,239, - 15,131,244,53,129,124,253,194,4,239,15,131,244,53,255,252,242,15,16,4,252, - 234,252,242,15,88,4,194,255,221,4,252,234,220,4,194,255,129,124,253,252,234, - 4,239,15,133,244,48,129,124,253,199,4,239,15,133,244,48,139,44,252,234,43, - 44,199,15,128,244,47,255,129,124,253,252,234,4,239,15,133,244,50,129,124, - 253,199,4,239,15,133,244,50,139,4,199,43,4,252,234,15,128,244,49,255,129, - 124,253,252,234,4,239,15,133,244,53,129,124,253,194,4,239,15,133,244,53,139, - 44,252,234,43,44,194,15,128,244,52,255,252,242,15,16,4,252,234,252,242,15, - 92,4,199,255,221,4,252,234,220,36,199,255,252,242,15,16,4,199,252,242,15, - 92,4,252,234,255,221,4,199,220,36,252,234,255,252,242,15,16,4,252,234,252, - 242,15,92,4,194,255,221,4,252,234,220,36,194,255,129,124,253,252,234,4,239, - 15,133,244,48,129,124,253,199,4,239,15,133,244,48,139,44,252,234,15,175,44, - 199,15,128,244,47,255,129,124,253,252,234,4,239,15,133,244,50,129,124,253, - 199,4,239,15,133,244,50,139,4,199,15,175,4,252,234,15,128,244,49,255,129, - 124,253,252,234,4,239,15,133,244,53,129,124,253,194,4,239,15,133,244,53,139, - 44,252,234,15,175,44,194,15,128,244,52,255,252,242,15,16,4,252,234,252,242, - 15,89,4,199,255,221,4,252,234,220,12,199,255,252,242,15,16,4,199,252,242, - 15,89,4,252,234,255,221,4,199,220,12,252,234,255,252,242,15,16,4,252,234, - 252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,252,242,15,16,4,252, - 234,252,242,15,94,4,199,255,221,4,252,234,220,52,199,255,252,242,15,16,4, - 199,252,242,15,94,4,252,234,255,221,4,199,220,52,252,234,255,252,242,15,16, - 4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,52,194,255,252,242,15, - 16,4,252,234,252,242,15,16,12,199,255,221,4,252,234,221,4,199,255,252,242, - 15,16,4,199,252,242,15,16,12,252,234,255,221,4,199,221,4,252,234,255,252, - 242,15,16,4,252,234,252,242,15,16,12,194,255,221,4,252,234,221,4,194,255, - 248,162,232,244,153,255,252,233,244,162,255,232,244,113,255,15,182,252,236, - 15,182,192,141,12,194,41,232,137,76,36,4,137,68,36,8,248,33,139,108,36,48, - 137,44,36,137,149,233,137,116,36,24,232,251,1,27,139,149,233,133,192,15,133, - 244,42,15,182,110,252,255,15,182,78,252,253,139,68,252,234,4,139,44,252,234, - 137,68,202,4,137,44,202,139,6,15,182,204,15,182,232,131,198,4,193,232,16, - 252,255,36,171,255,252,247,208,139,4,135,199,68,202,4,237,137,4,202,139,6, - 15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,15,191,192, - 199,68,202,4,237,137,4,202,255,15,191,192,252,242,15,42,192,252,242,15,17, - 4,202,255,223,70,252,254,221,28,202,255,252,242,15,16,4,199,252,242,15,17, - 4,202,255,221,4,199,221,28,202,255,252,247,208,137,68,202,4,139,6,15,182, - 204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,141,76,202,12,141, - 68,194,4,189,237,137,105,252,248,248,1,137,41,131,193,8,57,193,15,134,244, - 1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,139, - 106,252,248,139,172,253,133,233,139,173,233,139,69,4,139,109,0,137,68,202, - 4,137,44,202,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36, - 171,255,139,106,252,248,139,172,253,141,233,128,189,233,0,139,173,233,139, - 12,194,139,68,194,4,137,77,0,137,69,4,15,132,244,247,252,246,133,233,235, - 15,133,244,248,248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252, - 255,36,171,248,2,129,232,239,129,252,248,239,15,134,244,1,252,246,129,233, - 235,15,132,244,1,135,213,141,139,233,255,232,251,1,28,137,252,234,252,233, - 244,1,255,252,247,208,139,106,252,248,139,172,253,141,233,139,12,135,139, - 133,233,137,8,199,64,4,237,252,246,133,233,235,15,133,244,248,248,1,139,6, - 15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,2,252,246,129, - 233,235,15,132,244,1,128,189,233,0,15,132,244,1,137,213,137,194,141,139,233, - 232,251,1,28,137,252,234,252,233,244,1,255,139,106,252,248,255,252,242,15, - 16,4,199,255,139,172,253,141,233,139,141,233,255,252,242,15,17,1,255,221, - 25,255,252,247,208,139,106,252,248,139,172,253,141,233,139,141,233,137,65, - 4,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,141, - 180,253,134,233,139,108,36,48,131,189,233,0,15,132,244,247,137,149,233,141, - 20,202,137,252,233,232,251,1,29,139,149,233,248,1,139,6,15,182,204,15,182, - 232,131,198,4,193,232,16,252,255,36,171,255,252,247,208,139,74,252,248,139, - 4,135,139,108,36,48,137,76,36,8,137,68,36,4,137,44,36,137,149,233,137,116, - 36,24,232,251,1,30,139,149,233,15,182,78,252,253,137,4,202,199,68,202,4,237, - 139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,139,108, - 36,48,137,149,233,139,139,233,59,139,233,137,116,36,24,15,131,244,251,248, - 1,137,193,37,252,255,7,0,0,193,252,233,11,137,76,36,8,61,252,255,7,0,0,15, - 132,244,249,248,2,137,44,36,137,68,36,4,232,251,1,31,139,149,233,15,182,78, - 252,253,137,4,202,199,68,202,4,237,139,6,15,182,204,15,182,232,131,198,4, - 193,232,16,252,255,36,171,248,3,184,1,8,0,0,252,233,244,2,248,5,137,252,233, - 232,251,1,32,15,183,70,252,254,252,233,244,1,255,252,247,208,139,108,36,48, - 139,139,233,137,116,36,24,59,139,233,137,149,233,15,131,244,249,248,2,139, - 20,135,137,252,233,232,251,1,33,139,149,233,15,182,78,252,253,137,4,202,199, + 4,199,255,129,252,253,239,15,131,244,249,255,248,1,252,242,15,16,4,199,248, + 2,102,15,46,4,202,248,4,255,248,1,221,4,199,248,2,221,4,202,248,4,255,252, + 247,208,139,108,202,4,131,198,4,57,197,255,15,133,244,249,15,183,70,252,254, + 141,180,253,134,233,248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16, + 252,255,36,171,248,3,129,252,253,239,15,133,244,2,252,233,244,46,255,15,132, + 244,248,129,252,253,239,15,132,244,46,15,183,70,252,254,141,180,253,134,233, + 248,2,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255, + 139,108,194,4,131,198,4,129,252,253,239,255,137,108,202,4,139,44,194,137, + 44,202,255,139,108,194,4,139,4,194,137,108,202,4,137,4,202,139,6,15,182,204, + 15,182,232,131,198,4,193,232,16,252,255,36,171,255,49,252,237,129,124,253, + 194,4,239,129,213,239,137,108,202,4,139,6,15,182,204,15,182,232,131,198,4, + 193,232,16,252,255,36,171,255,129,124,253,194,4,239,15,133,244,251,139,44, + 194,252,247,221,15,128,244,250,199,68,202,4,237,137,44,202,248,9,139,6,15, + 182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,4,199,68,202,4, + 0,0,224,65,199,4,202,0,0,0,0,252,233,244,9,248,5,15,135,244,51,255,129,124, + 253,194,4,239,15,131,244,51,255,252,242,15,16,4,194,184,0,0,0,128,102,15, + 110,200,102,15,112,201,81,15,87,193,252,242,15,17,4,202,255,221,4,194,217, + 224,221,28,202,255,129,124,253,194,4,239,15,133,244,248,139,4,194,255,139, + 128,233,248,1,199,68,202,4,237,137,4,202,255,15,87,192,252,242,15,42,128, + 233,248,1,252,242,15,17,4,202,255,219,128,233,248,1,221,28,202,255,139,6, + 15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,2,129,124,253, + 194,4,239,15,133,244,54,139,12,194,137,213,232,251,1,20,255,252,242,15,42, + 192,255,137,4,36,219,4,36,255,137,252,234,15,182,78,252,253,252,233,244,1, + 255,15,182,252,236,15,182,192,255,129,124,253,252,234,4,239,15,133,244,48, + 129,124,253,199,4,239,15,133,244,48,139,44,252,234,3,44,199,15,128,244,47, + 255,129,124,253,252,234,4,239,15,133,244,50,129,124,253,199,4,239,15,133, + 244,50,139,4,199,3,4,252,234,15,128,244,49,255,129,124,253,252,234,4,239, + 15,133,244,53,129,124,253,194,4,239,15,133,244,53,139,44,252,234,3,44,194, + 15,128,244,52,255,199,68,202,4,237,255,129,124,253,252,234,4,239,15,131,244, + 48,255,129,124,253,199,4,239,15,131,244,48,255,252,242,15,16,4,252,234,252, + 242,15,88,4,199,255,221,4,252,234,220,4,199,255,129,124,253,252,234,4,239, + 15,131,244,50,255,129,124,253,199,4,239,15,131,244,50,255,252,242,15,16,4, + 199,252,242,15,88,4,252,234,255,221,4,199,220,4,252,234,255,129,124,253,252, + 234,4,239,15,131,244,53,129,124,253,194,4,239,15,131,244,53,255,252,242,15, + 16,4,252,234,252,242,15,88,4,194,255,221,4,252,234,220,4,194,255,129,124, + 253,252,234,4,239,15,133,244,48,129,124,253,199,4,239,15,133,244,48,139,44, + 252,234,43,44,199,15,128,244,47,255,129,124,253,252,234,4,239,15,133,244, + 50,129,124,253,199,4,239,15,133,244,50,139,4,199,43,4,252,234,15,128,244, + 49,255,129,124,253,252,234,4,239,15,133,244,53,129,124,253,194,4,239,15,133, + 244,53,139,44,252,234,43,44,194,15,128,244,52,255,252,242,15,16,4,252,234, + 252,242,15,92,4,199,255,221,4,252,234,220,36,199,255,252,242,15,16,4,199, + 252,242,15,92,4,252,234,255,221,4,199,220,36,252,234,255,252,242,15,16,4, + 252,234,252,242,15,92,4,194,255,221,4,252,234,220,36,194,255,129,124,253, + 252,234,4,239,15,133,244,48,129,124,253,199,4,239,15,133,244,48,139,44,252, + 234,15,175,44,199,15,128,244,47,255,129,124,253,252,234,4,239,15,133,244, + 50,129,124,253,199,4,239,15,133,244,50,139,4,199,15,175,4,252,234,15,128, + 244,49,255,129,124,253,252,234,4,239,15,133,244,53,129,124,253,194,4,239, + 15,133,244,53,139,44,252,234,15,175,44,194,15,128,244,52,255,252,242,15,16, + 4,252,234,252,242,15,89,4,199,255,221,4,252,234,220,12,199,255,252,242,15, + 16,4,199,252,242,15,89,4,252,234,255,221,4,199,220,12,252,234,255,252,242, + 15,16,4,252,234,252,242,15,89,4,194,255,221,4,252,234,220,12,194,255,252, + 242,15,16,4,252,234,252,242,15,94,4,199,255,221,4,252,234,220,52,199,255, + 252,242,15,16,4,199,252,242,15,94,4,252,234,255,221,4,199,220,52,252,234, + 255,252,242,15,16,4,252,234,252,242,15,94,4,194,255,221,4,252,234,220,52, + 194,255,252,242,15,16,4,252,234,252,242,15,16,12,199,255,221,4,252,234,221, + 4,199,255,252,242,15,16,4,199,252,242,15,16,12,252,234,255,221,4,199,221, + 4,252,234,255,252,242,15,16,4,252,234,252,242,15,16,12,194,255,221,4,252, + 234,221,4,194,255,248,162,232,244,153,255,252,233,244,162,255,232,244,113, + 255,15,182,252,236,15,182,192,141,12,194,41,232,137,76,36,4,137,68,36,8,248, + 33,139,108,36,48,137,44,36,137,149,233,137,116,36,24,232,251,1,27,139,149, + 233,133,192,15,133,244,42,15,182,110,252,255,15,182,78,252,253,139,68,252, + 234,4,139,44,252,234,137,68,202,4,137,44,202,139,6,15,182,204,15,182,232, + 131,198,4,193,232,16,252,255,36,171,255,252,247,208,139,4,135,199,68,202, + 4,237,137,4,202,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, + 36,171,255,15,191,192,199,68,202,4,237,137,4,202,255,15,191,192,252,242,15, + 42,192,252,242,15,17,4,202,255,223,70,252,254,221,28,202,255,252,242,15,16, + 4,199,252,242,15,17,4,202,255,221,4,199,221,28,202,255,252,247,208,137,68, + 202,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,255, + 141,76,202,12,141,68,194,4,189,237,137,105,252,248,248,1,137,41,131,193,8, + 57,193,15,134,244,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252, + 255,36,171,255,139,106,252,248,139,172,253,133,233,139,173,233,139,69,4,139, + 109,0,137,68,202,4,137,44,202,139,6,15,182,204,15,182,232,131,198,4,193,232, + 16,252,255,36,171,255,139,106,252,248,139,172,253,141,233,128,189,233,0,139, + 173,233,139,12,194,139,68,194,4,137,77,0,137,69,4,15,132,244,247,252,246, + 133,233,235,15,133,244,248,248,1,139,6,15,182,204,15,182,232,131,198,4,193, + 232,16,252,255,36,171,248,2,129,232,239,129,252,248,239,15,134,244,1,252, + 246,129,233,235,15,132,244,1,135,213,141,139,233,255,232,251,1,28,137,252, + 234,252,233,244,1,255,252,247,208,139,106,252,248,139,172,253,141,233,139, + 12,135,139,133,233,137,8,199,64,4,237,252,246,133,233,235,15,133,244,248, + 248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248, + 2,252,246,129,233,235,15,132,244,1,128,189,233,0,15,132,244,1,137,213,137, + 194,141,139,233,232,251,1,28,137,252,234,252,233,244,1,255,139,106,252,248, + 255,252,242,15,16,4,199,255,139,172,253,141,233,139,141,233,255,252,242,15, + 17,1,255,221,25,255,252,247,208,139,106,252,248,139,172,253,141,233,139,141, + 233,137,65,4,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36, + 171,255,141,180,253,134,233,139,108,36,48,131,189,233,0,15,132,244,247,137, + 149,233,141,20,202,137,252,233,232,251,1,29,139,149,233,248,1,139,6,15,182, + 204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,252,247,208,139,74, + 252,248,139,4,135,139,108,36,48,137,76,36,8,137,68,36,4,137,44,36,137,149, + 233,137,116,36,24,232,251,1,30,139,149,233,15,182,78,252,253,137,4,202,199, 68,202,4,237,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36, - 171,248,3,137,252,233,232,251,1,32,15,183,70,252,254,252,247,208,252,233, - 244,2,255,252,247,208,139,106,252,248,139,173,233,139,4,135,252,233,244,163, - 255,252,247,208,139,106,252,248,139,173,233,139,4,135,252,233,244,164,255, - 15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,36,139,44, - 252,234,255,129,124,253,194,4,239,15,133,244,251,139,4,194,255,129,124,253, - 194,4,239,15,131,244,251,255,252,242,15,16,4,194,252,242,15,45,192,252,242, - 15,42,200,102,15,46,193,255,221,4,194,219,20,36,219,4,36,255,15,133,244,36, - 255,59,133,233,15,131,244,36,193,224,3,3,133,233,129,120,253,4,239,15,132, - 244,248,139,40,139,64,4,137,44,202,137,68,202,4,248,1,139,6,15,182,204,15, - 182,232,131,198,4,193,232,16,252,255,36,171,248,2,131,189,233,0,15,132,244, - 249,139,141,233,252,246,129,233,235,15,132,244,36,15,182,78,252,253,248,3, - 199,68,202,4,237,252,233,244,1,248,5,255,129,124,253,194,4,239,15,133,244, - 36,139,4,194,252,233,244,163,255,15,182,252,236,15,182,192,252,247,208,139, - 4,135,129,124,253,252,234,4,239,15,133,244,34,139,44,252,234,248,163,139, - 141,233,35,136,233,105,201,239,3,141,233,248,1,129,185,233,239,15,133,244, - 250,57,129,233,15,133,244,250,129,121,253,4,239,15,132,244,251,15,182,70, - 252,253,139,41,139,73,4,137,44,194,137,76,194,4,248,2,255,139,6,15,182,204, - 15,182,232,131,198,4,193,232,16,252,255,36,171,248,3,15,182,70,252,253,199, - 68,194,4,237,252,233,244,2,248,4,139,137,233,133,201,15,133,244,1,248,5,139, - 141,233,133,201,15,132,244,3,252,246,129,233,235,15,133,244,3,252,233,244, - 34,255,15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,35, - 139,44,252,234,59,133,233,15,131,244,35,193,224,3,3,133,233,129,120,253,4, - 239,15,132,244,248,139,40,139,64,4,137,44,202,137,68,202,4,248,1,139,6,15, - 182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,2,131,189,233, - 0,15,132,244,249,139,141,233,252,246,129,233,235,15,132,244,35,255,15,182, - 78,252,253,248,3,199,68,202,4,237,252,233,244,1,255,15,182,252,236,15,182, - 192,129,124,253,252,234,4,239,15,133,244,39,139,44,252,234,255,15,133,244, - 39,255,59,133,233,15,131,244,39,193,224,3,3,133,233,129,120,253,4,239,15, - 132,244,249,248,1,252,246,133,233,235,15,133,244,253,248,2,139,108,202,4, - 139,12,202,137,104,4,137,8,139,6,15,182,204,15,182,232,131,198,4,193,232, - 16,252,255,36,171,248,3,131,189,233,0,15,132,244,1,139,141,233,252,246,129, - 233,235,255,15,132,244,39,15,182,78,252,253,252,233,244,1,248,5,129,124,253, - 194,4,239,15,133,244,39,139,4,194,252,233,244,164,248,7,128,165,233,235,139, - 139,233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,2,255,15,182, - 252,236,15,182,192,252,247,208,139,4,135,129,124,253,252,234,4,239,15,133, - 244,37,139,44,252,234,248,164,139,141,233,35,136,233,105,201,239,198,133, - 233,0,3,141,233,248,1,129,185,233,239,15,133,244,251,57,129,233,15,133,244, - 251,129,121,253,4,239,15,132,244,250,248,2,255,252,246,133,233,235,15,133, - 244,253,248,3,15,182,70,252,253,139,108,194,4,139,4,194,137,105,4,137,1,139, - 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,4,131,189, - 233,0,15,132,244,2,137,76,36,16,139,141,233,252,246,129,233,235,15,132,244, - 37,139,76,36,16,252,233,244,2,248,5,139,137,233,133,201,15,133,244,1,255, - 139,141,233,133,201,15,132,244,252,252,246,129,233,235,15,132,244,37,248, - 6,137,68,36,16,199,68,36,20,237,137,108,36,12,141,68,36,16,137,108,36,4,139, - 108,36,48,137,68,36,8,137,44,36,137,149,233,137,116,36,24,232,251,1,34,139, - 149,233,139,108,36,12,137,193,252,233,244,2,248,7,128,165,233,235,139,131, - 233,137,171,233,137,133,233,252,233,244,3,255,15,182,252,236,15,182,192,129, - 124,253,252,234,4,239,15,133,244,38,139,44,252,234,59,133,233,15,131,244, - 38,193,224,3,3,133,233,129,120,253,4,239,15,132,244,249,248,1,252,246,133, - 233,235,15,133,244,253,248,2,139,108,202,4,139,12,202,137,104,4,137,8,139, - 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,3,131,189, - 233,0,15,132,244,1,255,139,141,233,252,246,129,233,235,15,132,244,38,15,182, - 78,252,253,252,233,244,1,248,7,128,165,233,235,139,139,233,137,171,233,137, - 141,233,15,182,78,252,253,252,233,244,2,255,137,124,36,16,139,60,199,248, - 1,141,12,202,139,105,252,248,252,246,133,233,235,15,133,244,253,248,2,139, - 68,36,20,131,232,1,15,132,244,250,1,252,248,59,133,233,15,135,244,251,41, - 252,248,193,231,3,3,189,233,248,3,139,41,137,47,139,105,4,131,193,8,137,111, - 4,131,199,8,131,232,1,15,133,244,3,248,4,139,124,36,16,139,6,15,182,204,15, - 182,232,131,198,4,193,232,16,252,255,36,171,248,5,137,108,36,4,139,108,36, - 48,137,149,233,137,68,36,8,137,44,36,137,116,36,24,232,251,1,35,139,149,233, - 15,182,78,252,253,252,233,244,1,248,7,255,128,165,233,235,139,131,233,137, - 171,233,137,133,233,252,233,244,2,255,3,68,36,20,255,129,124,253,202,4,239, - 139,44,202,15,133,244,55,141,84,202,8,137,114,252,252,139,181,233,139,14, - 15,182,252,233,15,182,205,131,198,4,252,255,36,171,255,141,76,202,8,137,215, - 139,105,252,248,129,121,253,252,252,239,15,133,244,28,248,56,139,114,252, - 252,252,247,198,237,15,133,244,253,248,1,137,106,252,248,137,68,36,20,131, - 232,1,15,132,244,249,248,2,139,41,137,47,139,105,4,131,193,8,137,111,4,131, - 199,8,131,232,1,15,133,244,2,139,106,252,248,248,3,139,68,36,20,128,189,233, - 1,15,135,244,251,248,4,139,181,233,139,14,15,182,252,233,15,182,205,131,198, - 4,252,255,36,171,248,5,255,252,247,198,237,15,133,244,4,15,182,78,252,253, - 252,247,209,141,12,202,139,121,252,248,139,191,233,139,191,233,252,233,244, - 4,248,7,129,252,238,239,252,247,198,237,15,133,244,254,41,252,242,137,215, - 139,114,252,252,252,233,244,1,248,8,129,198,239,252,233,244,1,255,141,76, - 202,8,139,105,232,139,65,252,236,137,41,137,65,4,139,105,252,240,139,65,252, - 244,137,105,8,137,65,12,139,105,224,139,65,228,137,105,252,248,137,65,252, - 252,129,252,248,239,184,237,15,133,244,28,137,202,137,114,252,252,139,181, - 233,139,14,15,182,252,233,15,182,205,131,198,4,252,255,36,171,255,137,124, - 36,16,137,92,36,20,139,108,202,252,240,139,68,202,252,248,139,157,233,131, - 198,4,139,189,233,248,1,57,216,15,131,244,251,129,124,253,199,4,239,15,132, - 244,250,255,219,68,202,252,248,255,139,108,199,4,137,108,202,12,139,44,199, - 137,108,202,8,131,192,1,255,137,68,202,252,248,248,2,15,183,70,252,254,141, - 180,253,134,233,248,3,139,92,36,20,139,124,36,16,139,6,15,182,204,15,182, - 232,131,198,4,193,232,16,252,255,36,171,248,4,131,192,1,255,137,68,202,252, - 248,255,252,233,244,1,248,5,41,216,248,6,59,133,233,15,135,244,3,105,252, - 248,239,3,189,233,129,191,233,239,15,132,244,253,141,92,24,1,139,175,233, - 139,135,233,137,44,202,137,68,202,4,139,175,233,139,135,233,137,108,202,8, - 137,68,202,12,137,92,202,252,248,252,233,244,2,248,7,255,131,192,1,252,233, - 244,6,255,129,124,253,202,252,236,239,15,133,244,251,139,108,202,232,129, - 124,253,202,252,244,239,15,133,244,251,129,124,253,202,252,252,239,15,133, - 244,251,128,189,233,235,15,133,244,251,141,180,253,134,233,199,68,202,252, - 248,0,0,0,0,248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, - 36,171,248,5,198,70,252,252,235,141,180,253,134,233,198,6,235,252,233,244, - 1,255,15,182,252,236,15,182,192,137,124,36,16,141,188,253,194,233,141,12, - 202,43,122,252,252,133,252,237,15,132,244,251,141,108,252,233,252,248,57, - 215,15,131,244,248,248,1,139,71,252,248,137,1,139,71,252,252,131,199,8,137, - 65,4,131,193,8,57,252,233,15,131,244,249,57,215,15,130,244,1,248,2,199,65, - 4,237,131,193,8,57,252,233,15,130,244,2,248,3,139,124,36,16,139,6,15,182, - 204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,5,199,68,36,20,1,0, - 0,0,137,208,41,252,248,15,134,244,3,137,197,193,252,237,3,131,197,1,137,108, - 36,20,139,108,36,48,1,200,59,133,233,15,135,244,253,248,6,255,139,71,252, - 248,137,1,139,71,252,252,131,199,8,137,65,4,131,193,8,57,215,15,130,244,6, - 252,233,244,3,248,7,137,149,233,137,141,233,137,116,36,24,41,215,139,84,36, - 20,131,252,234,1,137,252,233,232,251,1,0,139,149,233,139,141,233,1,215,252, - 233,244,6,255,193,225,3,255,248,1,139,114,252,252,137,68,36,20,252,247,198, - 237,15,133,244,253,255,248,13,137,215,131,232,1,15,132,244,249,248,2,139, - 44,15,137,111,252,248,139,108,15,4,137,111,252,252,131,199,8,131,232,1,15, - 133,244,2,248,3,139,68,36,20,15,182,110,252,255,248,5,57,197,15,135,244,252, - 255,139,108,10,4,137,106,252,252,139,44,10,137,106,252,248,255,248,5,56,70, - 252,255,15,135,244,252,255,15,182,78,252,253,252,247,209,141,20,202,139,122, - 252,248,139,191,233,139,191,233,139,6,15,182,204,15,182,232,131,198,4,193, - 232,16,252,255,36,171,248,6,255,199,71,252,252,237,131,199,8,255,199,68,194, - 252,244,237,255,131,192,1,252,233,244,5,248,7,141,174,233,252,247,197,237, - 15,133,244,14,41,252,234,255,1,252,233,255,137,252,245,209,252,237,129,229, - 239,102,131,172,253,43,233,1,15,132,244,145,255,141,12,202,255,129,121,253, - 4,239,15,133,244,255,255,129,121,253,12,239,15,133,244,57,129,121,253,20, - 239,15,133,244,57,139,41,131,121,16,0,15,140,244,251,255,139,105,16,133,252, - 237,15,136,244,251,3,41,15,128,244,247,137,41,255,59,105,8,199,65,28,237, - 137,105,24,255,15,142,244,253,248,1,248,6,141,180,253,134,233,255,141,180, - 253,134,233,15,183,70,252,254,15,142,245,248,1,248,6,255,15,143,244,253,248, - 6,141,180,253,134,233,248,1,255,248,7,139,6,15,182,204,15,182,232,131,198, - 4,193,232,16,252,255,36,171,248,5,255,3,41,15,128,244,1,137,41,255,15,141, - 244,7,255,141,180,253,134,233,15,183,70,252,254,15,141,245,255,15,140,244, - 7,255,252,233,244,6,248,9,255,129,121,253,4,239,255,15,131,244,57,129,121, - 253,12,239,15,131,244,57,255,139,105,20,255,129,252,253,239,15,131,244,57, - 255,252,242,15,16,1,252,242,15,16,73,8,255,252,242,15,88,65,16,252,242,15, - 17,1,133,252,237,15,136,244,249,255,15,140,244,249,255,102,15,46,200,248, - 1,252,242,15,17,65,24,255,221,65,8,221,1,255,220,65,16,221,17,221,81,24,133, - 252,237,15,136,244,247,255,221,81,24,15,140,244,247,255,217,201,248,1,255, - 15,183,70,252,254,255,15,131,244,7,255,15,131,244,248,141,180,253,134,233, - 255,141,180,253,134,233,15,183,70,252,254,15,131,245,255,15,130,244,7,255, - 15,130,244,248,141,180,253,134,233,255,248,3,102,15,46,193,252,233,244,1, - 255,141,12,202,139,105,4,129,252,253,239,15,132,244,247,255,137,105,252,252, - 139,41,137,105,252,248,252,233,245,255,141,180,253,134,233,139,1,137,105, - 252,252,137,65,252,248,255,139,139,233,139,4,129,139,128,233,139,108,36,48, - 137,147,233,137,171,233,252,255,224,255,141,180,253,134,233,139,6,15,182, - 204,15,182,232,131,198,4,193,232,16,252,255,36,171,255,137,252,245,209,252, - 237,129,229,239,102,131,172,253,43,233,1,15,132,244,147,255,139,190,233,139, - 108,36,48,141,12,202,59,141,233,15,135,244,23,15,182,142,233,57,200,15,134, - 244,249,248,2,255,15,183,70,252,254,252,233,245,255,248,3,199,68,194,252, - 252,237,131,192,1,57,200,15,134,244,3,252,233,244,2,255,141,44,197,237,141, - 4,194,139,122,252,248,137,104,252,252,137,120,252,248,139,108,36,48,141,12, - 200,59,141,233,15,135,244,22,137,209,137,194,15,182,174,233,133,252,237,15, - 132,244,248,248,1,131,193,8,57,209,15,131,244,249,139,121,252,248,137,56, - 139,121,252,252,137,120,4,131,192,8,199,65,252,252,237,131,252,237,1,15,133, - 244,1,248,2,255,139,190,233,139,6,15,182,204,15,182,232,131,198,4,193,232, - 16,252,255,36,171,255,248,3,199,64,4,237,131,192,8,131,252,237,1,15,133,244, - 3,252,233,244,2,255,139,106,252,248,139,189,233,139,108,36,48,141,68,194, - 252,248,137,149,233,141,136,233,59,141,233,137,133,233,255,137,44,36,255, - 137,124,36,4,137,44,36,255,15,135,244,21,199,131,233,237,255,252,255,215, - 255,252,255,147,233,255,199,131,233,237,139,149,233,141,12,194,252,247,217, - 3,141,233,139,114,252,252,252,233,244,12,255,254,0 + 171,255,139,108,36,48,137,149,233,139,139,233,59,139,233,137,116,36,24,15, + 131,244,251,248,1,137,193,37,252,255,7,0,0,193,252,233,11,137,76,36,8,61, + 252,255,7,0,0,15,132,244,249,248,2,137,44,36,137,68,36,4,232,251,1,31,139, + 149,233,15,182,78,252,253,137,4,202,199,68,202,4,237,139,6,15,182,204,15, + 182,232,131,198,4,193,232,16,252,255,36,171,248,3,184,1,8,0,0,252,233,244, + 2,248,5,137,252,233,232,251,1,32,15,183,70,252,254,252,233,244,1,255,252, + 247,208,139,108,36,48,139,139,233,137,116,36,24,59,139,233,137,149,233,15, + 131,244,249,248,2,139,20,135,137,252,233,232,251,1,33,139,149,233,15,182, + 78,252,253,137,4,202,199,68,202,4,237,139,6,15,182,204,15,182,232,131,198, + 4,193,232,16,252,255,36,171,248,3,137,252,233,232,251,1,32,15,183,70,252, + 254,252,247,208,252,233,244,2,255,252,247,208,139,106,252,248,139,173,233, + 139,4,135,252,233,244,163,255,252,247,208,139,106,252,248,139,173,233,139, + 4,135,252,233,244,164,255,15,182,252,236,15,182,192,129,124,253,252,234,4, + 239,15,133,244,36,139,44,252,234,255,129,124,253,194,4,239,15,133,244,251, + 139,4,194,255,129,124,253,194,4,239,15,131,244,251,255,252,242,15,16,4,194, + 252,242,15,45,192,252,242,15,42,200,102,15,46,193,255,221,4,194,219,20,36, + 219,4,36,255,15,133,244,36,255,59,133,233,15,131,244,36,193,224,3,3,133,233, + 129,120,253,4,239,15,132,244,248,139,40,139,64,4,137,44,202,137,68,202,4, + 248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248, + 2,131,189,233,0,15,132,244,249,139,141,233,252,246,129,233,235,15,132,244, + 36,15,182,78,252,253,248,3,199,68,202,4,237,252,233,244,1,248,5,255,129,124, + 253,194,4,239,15,133,244,36,139,4,194,252,233,244,163,255,15,182,252,236, + 15,182,192,252,247,208,139,4,135,129,124,253,252,234,4,239,15,133,244,34, + 139,44,252,234,248,163,139,141,233,35,136,233,105,201,239,3,141,233,248,1, + 129,185,233,239,15,133,244,250,57,129,233,15,133,244,250,129,121,253,4,239, + 15,132,244,251,15,182,70,252,253,139,41,139,73,4,137,44,194,137,76,194,4, + 248,2,255,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171, + 248,3,15,182,70,252,253,199,68,194,4,237,252,233,244,2,248,4,139,137,233, + 133,201,15,133,244,1,248,5,139,141,233,133,201,15,132,244,3,252,246,129,233, + 235,15,133,244,3,252,233,244,34,255,15,182,252,236,15,182,192,129,124,253, + 252,234,4,239,15,133,244,35,139,44,252,234,59,133,233,15,131,244,35,193,224, + 3,3,133,233,129,120,253,4,239,15,132,244,248,139,40,139,64,4,137,44,202,137, + 68,202,4,248,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36, + 171,248,2,131,189,233,0,15,132,244,249,139,141,233,252,246,129,233,235,15, + 132,244,35,255,15,182,78,252,253,248,3,199,68,202,4,237,252,233,244,1,255, + 15,182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,39,139,44, + 252,234,255,15,133,244,39,255,59,133,233,15,131,244,39,193,224,3,3,133,233, + 129,120,253,4,239,15,132,244,249,248,1,252,246,133,233,235,15,133,244,253, + 248,2,139,108,202,4,139,12,202,137,104,4,137,8,139,6,15,182,204,15,182,232, + 131,198,4,193,232,16,252,255,36,171,248,3,131,189,233,0,15,132,244,1,139, + 141,233,252,246,129,233,235,255,15,132,244,39,15,182,78,252,253,252,233,244, + 1,248,5,129,124,253,194,4,239,15,133,244,39,139,4,194,252,233,244,164,248, + 7,128,165,233,235,139,139,233,137,171,233,137,141,233,15,182,78,252,253,252, + 233,244,2,255,15,182,252,236,15,182,192,252,247,208,139,4,135,129,124,253, + 252,234,4,239,15,133,244,37,139,44,252,234,248,164,139,141,233,35,136,233, + 105,201,239,198,133,233,0,3,141,233,248,1,129,185,233,239,15,133,244,251, + 57,129,233,15,133,244,251,129,121,253,4,239,15,132,244,250,248,2,255,252, + 246,133,233,235,15,133,244,253,248,3,15,182,70,252,253,139,108,194,4,139, + 4,194,137,105,4,137,1,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252, + 255,36,171,248,4,131,189,233,0,15,132,244,2,137,76,36,16,139,141,233,252, + 246,129,233,235,15,132,244,37,139,76,36,16,252,233,244,2,248,5,139,137,233, + 133,201,15,133,244,1,255,139,141,233,133,201,15,132,244,252,252,246,129,233, + 235,15,132,244,37,248,6,137,68,36,16,199,68,36,20,237,137,108,36,12,141,68, + 36,16,137,108,36,4,139,108,36,48,137,68,36,8,137,44,36,137,149,233,137,116, + 36,24,232,251,1,34,139,149,233,139,108,36,12,137,193,252,233,244,2,248,7, + 128,165,233,235,139,131,233,137,171,233,137,133,233,252,233,244,3,255,15, + 182,252,236,15,182,192,129,124,253,252,234,4,239,15,133,244,38,139,44,252, + 234,59,133,233,15,131,244,38,193,224,3,3,133,233,129,120,253,4,239,15,132, + 244,249,248,1,252,246,133,233,235,15,133,244,253,248,2,139,108,202,4,139, + 12,202,137,104,4,137,8,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252, + 255,36,171,248,3,131,189,233,0,15,132,244,1,255,139,141,233,252,246,129,233, + 235,15,132,244,38,15,182,78,252,253,252,233,244,1,248,7,128,165,233,235,139, + 139,233,137,171,233,137,141,233,15,182,78,252,253,252,233,244,2,255,137,124, + 36,16,139,60,199,248,1,141,12,202,139,105,252,248,252,246,133,233,235,15, + 133,244,253,248,2,139,68,36,20,131,232,1,15,132,244,250,1,252,248,59,133, + 233,15,135,244,251,41,252,248,193,231,3,3,189,233,248,3,139,41,137,47,139, + 105,4,131,193,8,137,111,4,131,199,8,131,232,1,15,133,244,3,248,4,139,124, + 36,16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248, + 5,137,108,36,4,139,108,36,48,137,149,233,137,68,36,8,137,44,36,137,116,36, + 24,232,251,1,35,139,149,233,15,182,78,252,253,252,233,244,1,248,7,255,128, + 165,233,235,139,131,233,137,171,233,137,133,233,252,233,244,2,255,3,68,36, + 20,255,129,124,253,202,4,239,139,44,202,15,133,244,55,141,84,202,8,137,114, + 252,252,139,181,233,139,14,15,182,252,233,15,182,205,131,198,4,252,255,36, + 171,255,141,76,202,8,137,215,139,105,252,248,129,121,253,252,252,239,15,133, + 244,28,248,56,139,114,252,252,252,247,198,237,15,133,244,253,248,1,137,106, + 252,248,137,68,36,20,131,232,1,15,132,244,249,248,2,139,41,137,47,139,105, + 4,131,193,8,137,111,4,131,199,8,131,232,1,15,133,244,2,139,106,252,248,248, + 3,139,68,36,20,128,189,233,1,15,135,244,251,248,4,139,181,233,139,14,15,182, + 252,233,15,182,205,131,198,4,252,255,36,171,248,5,255,252,247,198,237,15, + 133,244,4,15,182,78,252,253,252,247,209,141,12,202,139,121,252,248,139,191, + 233,139,191,233,252,233,244,4,248,7,129,252,238,239,252,247,198,237,15,133, + 244,254,41,252,242,137,215,139,114,252,252,252,233,244,1,248,8,129,198,239, + 252,233,244,1,255,141,76,202,8,139,105,232,139,65,252,236,137,41,137,65,4, + 139,105,252,240,139,65,252,244,137,105,8,137,65,12,139,105,224,139,65,228, + 137,105,252,248,137,65,252,252,129,252,248,239,184,237,15,133,244,28,137, + 202,137,114,252,252,139,181,233,139,14,15,182,252,233,15,182,205,131,198, + 4,252,255,36,171,255,137,124,36,16,137,92,36,20,139,108,202,252,240,139,68, + 202,252,248,139,157,233,131,198,4,139,189,233,248,1,57,216,15,131,244,251, + 129,124,253,199,4,239,15,132,244,250,255,219,68,202,252,248,255,139,108,199, + 4,137,108,202,12,139,44,199,137,108,202,8,131,192,1,255,137,68,202,252,248, + 248,2,15,183,70,252,254,141,180,253,134,233,248,3,139,92,36,20,139,124,36, + 16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,4, + 131,192,1,255,137,68,202,252,248,255,252,233,244,1,248,5,41,216,248,6,59, + 133,233,15,135,244,3,105,252,248,239,3,189,233,129,191,233,239,15,132,244, + 253,141,92,24,1,139,175,233,139,135,233,137,44,202,137,68,202,4,139,175,233, + 139,135,233,137,108,202,8,137,68,202,12,137,92,202,252,248,252,233,244,2, + 248,7,255,131,192,1,252,233,244,6,255,129,124,253,202,252,236,239,15,133, + 244,251,139,108,202,232,129,124,253,202,252,244,239,15,133,244,251,129,124, + 253,202,252,252,239,15,133,244,251,128,189,233,235,15,133,244,251,141,180, + 253,134,233,199,68,202,252,248,0,0,0,0,248,1,139,6,15,182,204,15,182,232, + 131,198,4,193,232,16,252,255,36,171,248,5,198,70,252,252,235,141,180,253, + 134,233,198,6,235,252,233,244,1,255,15,182,252,236,15,182,192,137,124,36, + 16,141,188,253,194,233,141,12,202,43,122,252,252,133,252,237,15,132,244,251, + 141,108,252,233,252,248,57,215,15,131,244,248,248,1,139,71,252,248,137,1, + 139,71,252,252,131,199,8,137,65,4,131,193,8,57,252,233,15,131,244,249,57, + 215,15,130,244,1,248,2,199,65,4,237,131,193,8,57,252,233,15,130,244,2,248, + 3,139,124,36,16,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255, + 36,171,248,5,199,68,36,20,1,0,0,0,137,208,41,252,248,15,134,244,3,137,197, + 193,252,237,3,131,197,1,137,108,36,20,139,108,36,48,1,200,59,133,233,15,135, + 244,253,248,6,255,139,71,252,248,137,1,139,71,252,252,131,199,8,137,65,4, + 131,193,8,57,215,15,130,244,6,252,233,244,3,248,7,137,149,233,137,141,233, + 137,116,36,24,41,215,139,84,36,20,131,252,234,1,137,252,233,232,251,1,0,139, + 149,233,139,141,233,1,215,252,233,244,6,255,193,225,3,255,248,1,139,114,252, + 252,137,68,36,20,252,247,198,237,15,133,244,253,255,248,13,137,215,131,232, + 1,15,132,244,249,248,2,139,44,15,137,111,252,248,139,108,15,4,137,111,252, + 252,131,199,8,131,232,1,15,133,244,2,248,3,139,68,36,20,15,182,110,252,255, + 248,5,57,197,15,135,244,252,255,139,108,10,4,137,106,252,252,139,44,10,137, + 106,252,248,255,248,5,56,70,252,255,15,135,244,252,255,15,182,78,252,253, + 252,247,209,141,20,202,139,122,252,248,139,191,233,139,191,233,139,6,15,182, + 204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,6,255,199,71,252,252, + 237,131,199,8,255,199,68,194,252,244,237,255,131,192,1,252,233,244,5,248, + 7,141,174,233,252,247,197,237,15,133,244,14,41,252,234,255,1,252,233,255, + 137,252,245,209,252,237,129,229,239,102,131,172,253,43,233,1,15,132,244,145, + 255,141,12,202,255,129,121,253,4,239,15,133,244,255,255,129,121,253,12,239, + 15,133,244,57,129,121,253,20,239,15,133,244,57,139,41,131,121,16,0,15,140, + 244,251,255,139,105,16,133,252,237,15,136,244,251,3,41,15,128,244,247,137, + 41,255,59,105,8,199,65,28,237,137,105,24,255,15,142,244,253,248,1,248,6,141, + 180,253,134,233,255,141,180,253,134,233,15,183,70,252,254,15,142,245,248, + 1,248,6,255,15,143,244,253,248,6,141,180,253,134,233,248,1,255,248,7,139, + 6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171,248,5,255,3,41, + 15,128,244,1,137,41,255,15,141,244,7,255,141,180,253,134,233,15,183,70,252, + 254,15,141,245,255,15,140,244,7,255,252,233,244,6,248,9,255,129,121,253,4, + 239,255,15,131,244,57,129,121,253,12,239,15,131,244,57,255,139,105,20,255, + 129,252,253,239,15,131,244,57,255,252,242,15,16,1,252,242,15,16,73,8,255, + 252,242,15,88,65,16,252,242,15,17,1,133,252,237,15,136,244,249,255,15,140, + 244,249,255,102,15,46,200,248,1,252,242,15,17,65,24,255,221,65,8,221,1,255, + 220,65,16,221,17,221,81,24,133,252,237,15,136,244,247,255,221,81,24,15,140, + 244,247,255,217,201,248,1,255,15,183,70,252,254,255,15,131,244,7,255,15,131, + 244,248,141,180,253,134,233,255,141,180,253,134,233,15,183,70,252,254,15, + 131,245,255,15,130,244,7,255,15,130,244,248,141,180,253,134,233,255,248,3, + 102,15,46,193,252,233,244,1,255,141,12,202,139,105,4,129,252,253,239,15,132, + 244,247,255,137,105,252,252,139,41,137,105,252,248,252,233,245,255,141,180, + 253,134,233,139,1,137,105,252,252,137,65,252,248,255,139,139,233,139,4,129, + 139,128,233,139,108,36,48,137,147,233,137,171,233,252,255,224,255,141,180, + 253,134,233,139,6,15,182,204,15,182,232,131,198,4,193,232,16,252,255,36,171, + 255,137,252,245,209,252,237,129,229,239,102,131,172,253,43,233,1,15,132,244, + 147,255,139,190,233,139,108,36,48,141,12,202,59,141,233,15,135,244,23,15, + 182,142,233,57,200,15,134,244,249,248,2,255,15,183,70,252,254,252,233,245, + 255,248,3,199,68,194,252,252,237,131,192,1,57,200,15,134,244,3,252,233,244, + 2,255,141,44,197,237,141,4,194,139,122,252,248,137,104,252,252,137,120,252, + 248,139,108,36,48,141,12,200,59,141,233,15,135,244,22,137,209,137,194,15, + 182,174,233,133,252,237,15,132,244,248,248,1,131,193,8,57,209,15,131,244, + 249,139,121,252,248,137,56,139,121,252,252,137,120,4,131,192,8,199,65,252, + 252,237,131,252,237,1,15,133,244,1,248,2,255,139,190,233,139,6,15,182,204, + 15,182,232,131,198,4,193,232,16,252,255,36,171,255,248,3,199,64,4,237,131, + 192,8,131,252,237,1,15,133,244,3,252,233,244,2,255,139,106,252,248,139,189, + 233,139,108,36,48,141,68,194,252,248,137,149,233,141,136,233,59,141,233,137, + 133,233,255,137,44,36,255,137,124,36,4,137,44,36,255,15,135,244,21,199,131, + 233,237,255,252,255,215,255,252,255,147,233,255,199,131,233,237,139,149,233, + 141,12,194,252,247,217,3,141,233,139,114,252,252,252,233,244,12,255,254,0 }; enum { @@ -2199,31 +2199,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } else { dasm_put(Dst, 3905); } - dasm_put(Dst, 4818); } goto iseqne_fp; case BC_ISEQP: case BC_ISNEP: vk = op == BC_ISEQP; - dasm_put(Dst, 11752); + dasm_put(Dst, 11754); if (!LJ_HASFFI) goto iseqne_test; if (vk) { - dasm_put(Dst, 11765, -BCBIAS_J*4, LJ_TCDATA); + dasm_put(Dst, 11767, -BCBIAS_J*4, LJ_TCDATA); } else { - dasm_put(Dst, 11814, LJ_TCDATA, -BCBIAS_J*4); + dasm_put(Dst, 11816, LJ_TCDATA, -BCBIAS_J*4); } break; /* -- Unary test and copy ops ------------------------------------------- */ case BC_ISTC: case BC_ISFC: case BC_IST: case BC_ISF: - dasm_put(Dst, 11857, LJ_TISTRUECOND); + dasm_put(Dst, 11859, LJ_TISTRUECOND); if (op == BC_IST || op == BC_ISTC) { dasm_put(Dst, 11183); } else { dasm_put(Dst, 11178); } if (op == BC_ISTC || op == BC_ISFC) { - dasm_put(Dst, 11869); + dasm_put(Dst, 11871); } dasm_put(Dst, 11188, -BCBIAS_J*4); break; @@ -2231,21 +2230,21 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) /* -- Unary ops --------------------------------------------------------- */ case BC_MOV: - dasm_put(Dst, 11880); + dasm_put(Dst, 11882); break; case BC_NOT: - dasm_put(Dst, 11913, LJ_TISTRUECOND, LJ_TTRUE); + dasm_put(Dst, 11915, LJ_TISTRUECOND, LJ_TTRUE); break; case BC_UNM: if (LJ_DUALNUM) { - dasm_put(Dst, 11948, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 11950, LJ_TISNUM, LJ_TISNUM); } else { - dasm_put(Dst, 12024, LJ_TISNUM); + dasm_put(Dst, 12026, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12035); + dasm_put(Dst, 12037); } else { - dasm_put(Dst, 12065); + dasm_put(Dst, 12067); } if (LJ_DUALNUM) { dasm_put(Dst, 11457); @@ -2254,22 +2253,22 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } break; case BC_LEN: - dasm_put(Dst, 12074, LJ_TSTR); + dasm_put(Dst, 12076, LJ_TSTR); if (LJ_DUALNUM) { - dasm_put(Dst, 12088, Dt5(->len), LJ_TISNUM); + dasm_put(Dst, 12090, Dt5(->len), LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 12102, Dt5(->len)); + dasm_put(Dst, 12104, Dt5(->len)); } else { - dasm_put(Dst, 12120, Dt5(->len)); + dasm_put(Dst, 12122, Dt5(->len)); } - dasm_put(Dst, 12129, LJ_TTAB); + dasm_put(Dst, 12131, LJ_TTAB); if (LJ_DUALNUM) { } else if (sse) { - dasm_put(Dst, 12169); + dasm_put(Dst, 12171); } else { - dasm_put(Dst, 12175); + dasm_put(Dst, 12177); } - dasm_put(Dst, 12182); + dasm_put(Dst, 12184); break; /* -- Binary ops -------------------------------------------------------- */ @@ -2277,471 +2276,471 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_ADDVN: case BC_ADDNV: case BC_ADDVV: if (LJ_DUALNUM) { - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12203, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12205, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 12236, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12238, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 12269, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12271, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 12302, LJ_TISNUM); + dasm_put(Dst, 12304, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 12098); + dasm_put(Dst, 12100); } else { - dasm_put(Dst, 11876); + dasm_put(Dst, 11878); } dasm_put(Dst, 11200); } else { - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12331); + dasm_put(Dst, 12333); } else { - dasm_put(Dst, 12345); + dasm_put(Dst, 12347); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12376); + dasm_put(Dst, 12378); } else { - dasm_put(Dst, 12390); + dasm_put(Dst, 12392); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12420); + dasm_put(Dst, 12422); } else { - dasm_put(Dst, 12434); + dasm_put(Dst, 12436); } break; } if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } dasm_put(Dst, 11200); } break; case BC_SUBVN: case BC_SUBNV: case BC_SUBVV: if (LJ_DUALNUM) { - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12442, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12444, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 12475, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12477, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 12508, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12510, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 12302, LJ_TISNUM); + dasm_put(Dst, 12304, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 12098); + dasm_put(Dst, 12100); } else { - dasm_put(Dst, 11876); + dasm_put(Dst, 11878); } dasm_put(Dst, 11200); } else { - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12541); + dasm_put(Dst, 12543); } else { - dasm_put(Dst, 12555); + dasm_put(Dst, 12557); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12563); + dasm_put(Dst, 12565); } else { - dasm_put(Dst, 12577); + dasm_put(Dst, 12579); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12585); + dasm_put(Dst, 12587); } else { - dasm_put(Dst, 12599); + dasm_put(Dst, 12601); } break; } if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } dasm_put(Dst, 11200); } break; case BC_MULVN: case BC_MULNV: case BC_MULVV: if (LJ_DUALNUM) { - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12607, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12609, LJ_TISNUM, LJ_TISNUM); break; case 1: - dasm_put(Dst, 12641, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12643, LJ_TISNUM, LJ_TISNUM); break; default: - dasm_put(Dst, 12675, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12677, LJ_TISNUM, LJ_TISNUM); break; } - dasm_put(Dst, 12302, LJ_TISNUM); + dasm_put(Dst, 12304, LJ_TISNUM); if (vk == 1) { - dasm_put(Dst, 12098); + dasm_put(Dst, 12100); } else { - dasm_put(Dst, 11876); + dasm_put(Dst, 11878); } dasm_put(Dst, 11200); } else { - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12709); + dasm_put(Dst, 12711); } else { - dasm_put(Dst, 12723); + dasm_put(Dst, 12725); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12731); + dasm_put(Dst, 12733); } else { - dasm_put(Dst, 12745); + dasm_put(Dst, 12747); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12753); + dasm_put(Dst, 12755); } else { - dasm_put(Dst, 12767); + dasm_put(Dst, 12769); } break; } if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } dasm_put(Dst, 11200); } break; case BC_DIVVN: case BC_DIVNV: case BC_DIVVV: - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12775); + dasm_put(Dst, 12777); } else { - dasm_put(Dst, 12789); + dasm_put(Dst, 12791); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12797); + dasm_put(Dst, 12799); } else { - dasm_put(Dst, 12811); + dasm_put(Dst, 12813); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12819); + dasm_put(Dst, 12821); } else { - dasm_put(Dst, 12833); + dasm_put(Dst, 12835); } break; } if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } dasm_put(Dst, 11200); break; case BC_MODVN: - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12841); + dasm_put(Dst, 12843); } else { - dasm_put(Dst, 12855); + dasm_put(Dst, 12857); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12863); + dasm_put(Dst, 12865); } else { - dasm_put(Dst, 12877); + dasm_put(Dst, 12879); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12885); + dasm_put(Dst, 12887); } else { - dasm_put(Dst, 12899); + dasm_put(Dst, 12901); } break; } - dasm_put(Dst, 12907); + dasm_put(Dst, 12909); if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } dasm_put(Dst, 11200); break; case BC_MODNV: case BC_MODVV: - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12841); + dasm_put(Dst, 12843); } else { - dasm_put(Dst, 12855); + dasm_put(Dst, 12857); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12863); + dasm_put(Dst, 12865); } else { - dasm_put(Dst, 12877); + dasm_put(Dst, 12879); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12885); + dasm_put(Dst, 12887); } else { - dasm_put(Dst, 12899); + dasm_put(Dst, 12901); } break; } - dasm_put(Dst, 12913); + dasm_put(Dst, 12915); break; case BC_POW: - dasm_put(Dst, 12195); + dasm_put(Dst, 12197); vk = ((int)op - BC_ADDVN) / (BC_ADDNV-BC_ADDVN); switch (vk) { case 0: - dasm_put(Dst, 12308, LJ_TISNUM); + dasm_put(Dst, 12310, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12320, LJ_TISNUM); + dasm_put(Dst, 12322, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12841); + dasm_put(Dst, 12843); } else { - dasm_put(Dst, 12855); + dasm_put(Dst, 12857); } break; case 1: - dasm_put(Dst, 12353, LJ_TISNUM); + dasm_put(Dst, 12355, LJ_TISNUM); if (LJ_DUALNUM) { - dasm_put(Dst, 12365, LJ_TISNUM); + dasm_put(Dst, 12367, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 12863); + dasm_put(Dst, 12865); } else { - dasm_put(Dst, 12877); + dasm_put(Dst, 12879); } break; default: - dasm_put(Dst, 12398, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 12400, LJ_TISNUM, LJ_TISNUM); if (sse) { - dasm_put(Dst, 12885); + dasm_put(Dst, 12887); } else { - dasm_put(Dst, 12899); + dasm_put(Dst, 12901); } break; } - dasm_put(Dst, 12918); + dasm_put(Dst, 12920); if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } dasm_put(Dst, 11200); break; case BC_CAT: - dasm_put(Dst, 12922, Dt1(->base), Dt1(->base)); + dasm_put(Dst, 12924, Dt1(->base), Dt1(->base)); break; /* -- Constant ops ------------------------------------------------------ */ case BC_KSTR: - dasm_put(Dst, 13016, LJ_TSTR); + dasm_put(Dst, 13018, LJ_TSTR); break; case BC_KCDATA: #if LJ_HASFFI - dasm_put(Dst, 13016, LJ_TCDATA); + dasm_put(Dst, 13018, LJ_TCDATA); #endif break; case BC_KSHORT: if (LJ_DUALNUM) { - dasm_put(Dst, 13049, LJ_TISNUM); + dasm_put(Dst, 13051, LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 13061); + dasm_put(Dst, 13063); } else { - dasm_put(Dst, 13076); + dasm_put(Dst, 13078); } dasm_put(Dst, 11200); break; case BC_KNUM: if (sse) { - dasm_put(Dst, 13084); + dasm_put(Dst, 13086); } else { - dasm_put(Dst, 13097); + dasm_put(Dst, 13099); } dasm_put(Dst, 11200); break; case BC_KPRI: - dasm_put(Dst, 13104); + dasm_put(Dst, 13106); break; case BC_KNIL: - dasm_put(Dst, 13130, LJ_TNIL); + dasm_put(Dst, 13132, LJ_TNIL); break; /* -- Upvalue and function ops ------------------------------------------ */ case BC_UGET: - dasm_put(Dst, 13176, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 13178, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_USETV: #define TV2MARKOFS \ ((int32_t)offsetof(GCupval, marked)-(int32_t)offsetof(GCupval, tv)) - dasm_put(Dst, 13220, 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); - dasm_put(Dst, 13310); + dasm_put(Dst, 13222, 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); + dasm_put(Dst, 13312); break; #undef TV2MARKOFS case BC_USETS: - dasm_put(Dst, 13322, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); + dasm_put(Dst, 13324, offsetof(GCfuncL, uvptr), DtA(->v), LJ_TSTR, DtA(->marked), LJ_GC_BLACK, Dt4(->gch.marked), LJ_GC_WHITES, DtA(->closed), GG_DISP2G); break; case BC_USETN: - dasm_put(Dst, 13413); + dasm_put(Dst, 13415); if (sse) { - dasm_put(Dst, 13418); + dasm_put(Dst, 13420); } else { - dasm_put(Dst, 12859); + dasm_put(Dst, 11710); } - dasm_put(Dst, 13425, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 13427, offsetof(GCfuncL, uvptr), DtA(->v)); if (sse) { - dasm_put(Dst, 13434); + dasm_put(Dst, 13436); } else { - dasm_put(Dst, 13440); + dasm_put(Dst, 13442); } dasm_put(Dst, 11200); break; case BC_USETP: - dasm_put(Dst, 13443, offsetof(GCfuncL, uvptr), DtA(->v)); + dasm_put(Dst, 13445, offsetof(GCfuncL, uvptr), DtA(->v)); break; case BC_UCLO: - dasm_put(Dst, 13480, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 13482, -BCBIAS_J*4, Dt1(->openupval), Dt1(->base), Dt1(->base)); break; case BC_FNEW: - dasm_put(Dst, 13534, Dt1(->base), Dt1(->base), LJ_TFUNC); + dasm_put(Dst, 13536, Dt1(->base), Dt1(->base), LJ_TFUNC); break; /* -- Table ops --------------------------------------------------------- */ case BC_TNEW: - dasm_put(Dst, 13605, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); + dasm_put(Dst, 13607, Dt1(->base), DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), LJ_TTAB); break; case BC_TDUP: - dasm_put(Dst, 13731, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); + dasm_put(Dst, 13733, DISPATCH_GL(gc.total), DISPATCH_GL(gc.threshold), Dt1(->base), Dt1(->base), LJ_TTAB); break; case BC_GGET: - dasm_put(Dst, 13823, Dt7(->env)); + dasm_put(Dst, 13825, Dt7(->env)); break; case BC_GSET: - dasm_put(Dst, 13841, Dt7(->env)); + dasm_put(Dst, 13843, Dt7(->env)); break; case BC_TGETV: - dasm_put(Dst, 13859, LJ_TTAB); + dasm_put(Dst, 13861, LJ_TTAB); if (LJ_DUALNUM) { - dasm_put(Dst, 13882, LJ_TISNUM); + dasm_put(Dst, 13884, LJ_TISNUM); } else { - dasm_put(Dst, 13896, LJ_TISNUM); + dasm_put(Dst, 13898, LJ_TISNUM); if (sse) { - dasm_put(Dst, 13907); + dasm_put(Dst, 13909); } else { - dasm_put(Dst, 13928); + dasm_put(Dst, 13930); if (cmov) { dasm_put(Dst, 3899); } else { @@ -2749,30 +2748,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) } dasm_put(Dst, 2635); } - dasm_put(Dst, 13938); + dasm_put(Dst, 13940); } - dasm_put(Dst, 13943, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); - dasm_put(Dst, 14144, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<hmask), Dt5(->hash), sizeof(Node), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); + dasm_put(Dst, 14146, LJ_TNIL, DtB(->next), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 14360, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETS: - dasm_put(Dst, 14499, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); - dasm_put(Dst, 14574, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<next)); - dasm_put(Dst, 14666, Dt6(->metatable), Dt6(->nomm), 1<base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 14501, LJ_TTAB, Dt6(->hmask), Dt5(->hash), sizeof(Node), Dt6(->nomm), Dt6(->node), DtB(->key.it), LJ_TSTR, DtB(->key.gcr), LJ_TNIL); + dasm_put(Dst, 14576, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable), Dt6(->metatable), Dt6(->nomm), 1<next)); + dasm_put(Dst, 14668, Dt6(->metatable), Dt6(->nomm), 1<base), Dt1(->base), Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETB: - dasm_put(Dst, 14762, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); - dasm_put(Dst, 14860, Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 14764, LJ_TTAB, Dt6(->asize), Dt6(->array), LJ_TNIL, Dt6(->marked), LJ_GC_BLACK, Dt6(->metatable)); + dasm_put(Dst, 14862, Dt6(->metatable), Dt6(->nomm), 1<marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; case BC_TSETM: - dasm_put(Dst, 14906, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); - dasm_put(Dst, 15055, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); + dasm_put(Dst, 14908, Dt6(->marked), LJ_GC_BLACK, Dt6(->asize), Dt6(->array), Dt1(->base), Dt1(->base)); + dasm_put(Dst, 15057, Dt6(->marked), cast_byte(~LJ_GC_BLACK), DISPATCH_GL(gc.grayagain), DISPATCH_GL(gc.grayagain), Dt6(->gclist)); break; /* -- Calls and vararg handling ----------------------------------------- */ case BC_CALL: case BC_CALLM: - dasm_put(Dst, 12199); + dasm_put(Dst, 12201); if (op == BC_CALLM) { - dasm_put(Dst, 15073); + dasm_put(Dst, 15075); } - dasm_put(Dst, 15078, LJ_TFUNC, Dt7(->pc)); + dasm_put(Dst, 15080, LJ_TFUNC, Dt7(->pc)); break; case BC_CALLMT: - dasm_put(Dst, 15073); + dasm_put(Dst, 15075); break; case BC_CALLT: - dasm_put(Dst, 15119, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); - dasm_put(Dst, 15237, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); + dasm_put(Dst, 15121, LJ_TFUNC, FRAME_TYPE, Dt7(->ffid), Dt7(->pc)); + dasm_put(Dst, 15239, FRAME_TYPE, Dt7(->pc), PC2PROTO(k), FRAME_VARG, FRAME_TYPEP, FRAME_VARG); break; case BC_ITERC: - dasm_put(Dst, 15307, LJ_TFUNC, 2+1, Dt7(->pc)); + dasm_put(Dst, 15309, LJ_TFUNC, 2+1, Dt7(->pc)); break; case BC_ITERN: #if LJ_HASJIT #endif - dasm_put(Dst, 15387, Dt6(->asize), Dt6(->array), LJ_TNIL); + dasm_put(Dst, 15389, Dt6(->asize), Dt6(->array), LJ_TNIL); if (LJ_DUALNUM) { - dasm_put(Dst, 12093, LJ_TISNUM); + dasm_put(Dst, 12095, LJ_TISNUM); } else if (sse) { - dasm_put(Dst, 12169); + dasm_put(Dst, 12171); } else { - dasm_put(Dst, 15433); + dasm_put(Dst, 15435); } - dasm_put(Dst, 15439); + dasm_put(Dst, 15441); if (LJ_DUALNUM) { } else if (sse) { - dasm_put(Dst, 12058); + dasm_put(Dst, 12060); } else { - dasm_put(Dst, 12070); + dasm_put(Dst, 12072); } - dasm_put(Dst, 15458, -BCBIAS_J*4); + dasm_put(Dst, 15460, -BCBIAS_J*4); if (!LJ_DUALNUM && !sse) { - dasm_put(Dst, 15509); + dasm_put(Dst, 15511); } - dasm_put(Dst, 15515, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key.gcr), DtB(->key.it), DtB(->val.gcr), DtB(->val.it)); - dasm_put(Dst, 15590); + dasm_put(Dst, 15517, Dt6(->hmask), sizeof(Node), Dt6(->node), DtB(->val.it), LJ_TNIL, DtB(->key.gcr), DtB(->key.it), DtB(->val.gcr), DtB(->val.it)); + dasm_put(Dst, 15592); break; case BC_ISNEXT: - dasm_put(Dst, 15598, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); + dasm_put(Dst, 15600, LJ_TFUNC, LJ_TTAB, LJ_TNIL, Dt8(->ffid), FF_next_N, -BCBIAS_J*4, BC_JMP, -BCBIAS_J*4, BC_ITERC); break; case BC_VARG: - dasm_put(Dst, 15697, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); - dasm_put(Dst, 15861, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); + dasm_put(Dst, 15699, (8+FRAME_VARG), LJ_TNIL, Dt1(->maxstack)); + dasm_put(Dst, 15863, Dt1(->base), Dt1(->top), Dt1(->base), Dt1(->top)); break; /* -- Returns ----------------------------------------------------------- */ case BC_RETM: - dasm_put(Dst, 15073); + dasm_put(Dst, 15075); break; case BC_RET: case BC_RET0: case BC_RET1: if (op != BC_RET0) { - dasm_put(Dst, 15932); + dasm_put(Dst, 15934); } - dasm_put(Dst, 15936, FRAME_TYPE); + dasm_put(Dst, 15938, FRAME_TYPE); switch (op) { case BC_RET: - dasm_put(Dst, 15955); + dasm_put(Dst, 15957); break; case BC_RET1: - dasm_put(Dst, 16013); + dasm_put(Dst, 16015); /* fallthrough */ case BC_RET0: - dasm_put(Dst, 16029); + dasm_put(Dst, 16031); default: break; } - dasm_put(Dst, 16040, Dt7(->pc), PC2PROTO(k)); + dasm_put(Dst, 16042, Dt7(->pc), PC2PROTO(k)); if (op == BC_RET) { - dasm_put(Dst, 16082, LJ_TNIL); + dasm_put(Dst, 16084, LJ_TNIL); } else { - dasm_put(Dst, 16091, LJ_TNIL); + dasm_put(Dst, 16093, LJ_TNIL); } - dasm_put(Dst, 16098, -FRAME_VARG, FRAME_TYPEP); + dasm_put(Dst, 16100, -FRAME_VARG, FRAME_TYPEP); if (op != BC_RET0) { - dasm_put(Dst, 16122); + dasm_put(Dst, 16124); } dasm_put(Dst, 4883); break; @@ -2898,7 +2897,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FORL: #if LJ_HASJIT - dasm_put(Dst, 16126, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 16128, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -2910,104 +2909,104 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FORI: case BC_IFORL: vk = (op == BC_IFORL || op == BC_JFORL); - dasm_put(Dst, 16147); + dasm_put(Dst, 16149); if (LJ_DUALNUM) { - dasm_put(Dst, 16151, LJ_TISNUM); + dasm_put(Dst, 16153, LJ_TISNUM); if (!vk) { - dasm_put(Dst, 16161, LJ_TISNUM, LJ_TISNUM); + dasm_put(Dst, 16163, LJ_TISNUM, LJ_TISNUM); } else { - dasm_put(Dst, 16190); + dasm_put(Dst, 16192); } - dasm_put(Dst, 16209, LJ_TISNUM); + dasm_put(Dst, 16211, LJ_TISNUM); if (op == BC_FORI) { - dasm_put(Dst, 16220, -BCBIAS_J*4); + dasm_put(Dst, 16222, -BCBIAS_J*4); } else if (op == BC_JFORI) { - dasm_put(Dst, 16234, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 16236, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { - dasm_put(Dst, 16252, -BCBIAS_J*4); + dasm_put(Dst, 16254, -BCBIAS_J*4); } else { - dasm_put(Dst, 16244, BC_JLOOP); + dasm_put(Dst, 16246, BC_JLOOP); } - dasm_put(Dst, 16266); + dasm_put(Dst, 16268); if (vk) { - dasm_put(Dst, 16289); + dasm_put(Dst, 16291); } - dasm_put(Dst, 16209, LJ_TISNUM); + dasm_put(Dst, 16211, LJ_TISNUM); if (op == BC_FORI) { - dasm_put(Dst, 16298); + dasm_put(Dst, 16300); } else if (op == BC_JFORI) { - dasm_put(Dst, 16303, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 16305, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { - dasm_put(Dst, 16317); + dasm_put(Dst, 16319); } else { - dasm_put(Dst, 16313, BC_JLOOP); + dasm_put(Dst, 16315, BC_JLOOP); } - dasm_put(Dst, 16322); + dasm_put(Dst, 16324); } else if (!vk) { - dasm_put(Dst, 16329, LJ_TISNUM); + dasm_put(Dst, 16331, LJ_TISNUM); } if (!vk) { - dasm_put(Dst, 16335, LJ_TISNUM); + dasm_put(Dst, 16337, LJ_TISNUM); } - dasm_put(Dst, 16349); + dasm_put(Dst, 16351); if (!vk) { - dasm_put(Dst, 16353, LJ_TISNUM); + dasm_put(Dst, 16355, LJ_TISNUM); } if (sse) { - dasm_put(Dst, 16362); + dasm_put(Dst, 16364); if (vk) { - dasm_put(Dst, 16374); + dasm_put(Dst, 16376); } else { - dasm_put(Dst, 16393); + dasm_put(Dst, 16395); } - dasm_put(Dst, 16398); + dasm_put(Dst, 16400); } else { - dasm_put(Dst, 16411); + dasm_put(Dst, 16413); if (vk) { - dasm_put(Dst, 16417); + dasm_put(Dst, 16419); } else { - dasm_put(Dst, 16433); + dasm_put(Dst, 16435); } - dasm_put(Dst, 16441); + dasm_put(Dst, 16443); if (cmov) { dasm_put(Dst, 3899); } else { dasm_put(Dst, 3905); } if (!cmov) { - dasm_put(Dst, 16446); + dasm_put(Dst, 16448); } } if (op == BC_FORI) { if (LJ_DUALNUM) { - dasm_put(Dst, 16452); + dasm_put(Dst, 16454); } else { - dasm_put(Dst, 16457, -BCBIAS_J*4); + dasm_put(Dst, 16459, -BCBIAS_J*4); } } else if (op == BC_JFORI) { - dasm_put(Dst, 16467, -BCBIAS_J*4, BC_JLOOP); + dasm_put(Dst, 16469, -BCBIAS_J*4, BC_JLOOP); } else if (op == BC_IFORL) { if (LJ_DUALNUM) { - dasm_put(Dst, 16481); + dasm_put(Dst, 16483); } else { - dasm_put(Dst, 16486, -BCBIAS_J*4); + dasm_put(Dst, 16488, -BCBIAS_J*4); } } else { - dasm_put(Dst, 16477, BC_JLOOP); + dasm_put(Dst, 16479, BC_JLOOP); } if (LJ_DUALNUM) { dasm_put(Dst, 11097); } else { - dasm_put(Dst, 11836); + dasm_put(Dst, 11838); } if (sse) { - dasm_put(Dst, 16496); + dasm_put(Dst, 16498); } break; case BC_ITERL: #if LJ_HASJIT - dasm_put(Dst, 16126, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 16128, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -3016,18 +3015,18 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; #endif case BC_IITERL: - dasm_put(Dst, 16507, LJ_TNIL); + dasm_put(Dst, 16509, LJ_TNIL); if (op == BC_JITERL) { - dasm_put(Dst, 16522, BC_JLOOP); + dasm_put(Dst, 16524, BC_JLOOP); } else { - dasm_put(Dst, 16536, -BCBIAS_J*4); + dasm_put(Dst, 16538, -BCBIAS_J*4); } dasm_put(Dst, 11198); break; case BC_LOOP: #if LJ_HASJIT - dasm_put(Dst, 16126, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 16128, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif break; @@ -3037,12 +3036,12 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_JLOOP: #if LJ_HASJIT - dasm_put(Dst, 16552, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); + dasm_put(Dst, 16554, DISPATCH_J(trace), DtD(->mcode), DISPATCH_GL(jit_base), DISPATCH_GL(jit_L)); #endif break; case BC_JMP: - dasm_put(Dst, 16575, -BCBIAS_J*4); + dasm_put(Dst, 16577, -BCBIAS_J*4); break; /* -- Function headers -------------------------------------------------- */ @@ -3056,7 +3055,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) case BC_FUNCF: #if LJ_HASJIT - dasm_put(Dst, 16599, HOTCOUNT_PCMASK, GG_DISP2HOT); + dasm_put(Dst, 16601, HOTCOUNT_PCMASK, GG_DISP2HOT); #endif case BC_FUNCV: /* NYI: compiled vararg functions. */ break; @@ -3066,13 +3065,13 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; #endif case BC_IFUNCF: - dasm_put(Dst, 16620, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); + dasm_put(Dst, 16622, -4+PC2PROTO(k), Dt1(->maxstack), -4+PC2PROTO(numparams)); if (op == BC_JFUNCF) { - dasm_put(Dst, 16650, BC_JLOOP); + dasm_put(Dst, 16652, BC_JLOOP); } else { dasm_put(Dst, 11200); } - dasm_put(Dst, 16659, LJ_TNIL); + dasm_put(Dst, 16661, LJ_TNIL); break; case BC_JFUNCV: @@ -3083,30 +3082,30 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse) break; /* NYI: compiled vararg functions. */ case BC_IFUNCV: - dasm_put(Dst, 16681, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); + dasm_put(Dst, 16683, FRAME_VARG, Dt1(->maxstack), -4+PC2PROTO(numparams), LJ_TNIL); if (op == BC_JFUNCV) { - dasm_put(Dst, 16650, BC_JLOOP); + dasm_put(Dst, 16652, BC_JLOOP); } else { - dasm_put(Dst, 16772, -4+PC2PROTO(k)); + dasm_put(Dst, 16774, -4+PC2PROTO(k)); } - dasm_put(Dst, 16794, LJ_TNIL); + dasm_put(Dst, 16796, LJ_TNIL); break; case BC_FUNCC: case BC_FUNCCW: - dasm_put(Dst, 16816, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); + dasm_put(Dst, 16818, Dt8(->f), Dt1(->base), 8*LUA_MINSTACK, Dt1(->maxstack), Dt1(->top)); if (op == BC_FUNCC) { - dasm_put(Dst, 16845); + dasm_put(Dst, 16847); } else { - dasm_put(Dst, 16849); + dasm_put(Dst, 16851); } - dasm_put(Dst, 16857, DISPATCH_GL(vmstate), ~LJ_VMST_C); + dasm_put(Dst, 16859, DISPATCH_GL(vmstate), ~LJ_VMST_C); if (op == BC_FUNCC) { - dasm_put(Dst, 16866); + dasm_put(Dst, 16868); } else { - dasm_put(Dst, 16870, DISPATCH_GL(wrapf)); + dasm_put(Dst, 16872, DISPATCH_GL(wrapf)); } - dasm_put(Dst, 16875, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); + dasm_put(Dst, 16877, DISPATCH_GL(vmstate), ~LJ_VMST_INTERP, Dt1(->base), Dt1(->top)); break; /* ---------------------------------------------------------------------- */ @@ -3134,7 +3133,7 @@ static int build_backend(BuildCtx *ctx) build_subroutines(ctx, cmov, sse); - dasm_put(Dst, 16900); + dasm_put(Dst, 16902); for (op = 0; op < BC__MAX; op++) build_ins(ctx, (BCOp)op, op, cmov, sse); -- cgit v1.2.3-55-g6feb