Browse code

OP_BC_COPY again.

Török Edvin authored on 2010/03/24 17:51:05
Showing 2 changed files
... ...
@@ -1156,7 +1156,7 @@ static int parseBB(struct cli_bc *bc, unsigned func, unsigned bb, unsigned char
1156 1156
 		}
1157 1157
 	}
1158 1158
 	if (inst.opcode == OP_BC_COPY)
1159
-	    inst.type = bcfunc->types[inst.u.binop[0]];
1159
+	    inst.type = bcfunc->types[inst.u.binop[0]]&0x7fff;
1160 1160
 	if (!ok) {
1161 1161
 	    cli_errmsg("Invalid instructions or operands\n");
1162 1162
 	    return CL_EMALFDB;
... ...
@@ -89,7 +89,7 @@ const struct cli_apiglobal cli_globals[] = {
89 89
 /* Bytecode globals END */
90 90
 };
91 91
 const unsigned cli_apicall_maxglobal = _LAST_GLOBAL-1;
92
-static uint16_t cli_tmp0[]={32, 32, 16, 74, 73, 72, 70, 32, 32, 32, 32};
92
+static uint16_t cli_tmp0[]={32, 32, 16, 16, 74, 73, 32, 72, 70, 32, 32, 32, 32};
93 93
 static uint16_t cli_tmp1[]={71};
94 94
 static uint16_t cli_tmp2[]={32, 32};
95 95
 static uint16_t cli_tmp3[]={16, 8, 8, 32, 32, 32, 32, 32, 64, 32, 32, 16, 16, 16, 16, 16, 16, 32, 32, 32, 32, 16, 16, 64, 64, 64, 64, 32, 32, 70};
... ...
@@ -116,7 +116,7 @@ static uint16_t cli_tmp23[]={93};
116 116
 static uint16_t cli_tmp24[]={8};
117 117
 
118 118
 const struct cli_bc_type cli_apicall_types[]={
119
-	{DStructType, cli_tmp0, 11, 0, 0},
119
+	{DStructType, cli_tmp0, 13, 0, 0},
120 120
 	{DArrayType, cli_tmp1, 16, 0, 0},
121 121
 	{DStructType, cli_tmp2, 2, 0, 0},
122 122
 	{DStructType, cli_tmp3, 30, 0, 0},