blob: bd8b21286e0beb4cc19e42bf97134f817411b5fb [file] [log] [blame]
/* generated by gpc_gen.rb */
#define INT_STREAM_GOTO(arg) INT_GOTO(INT_STREAM(arg))
INT_BEGIN(I_NOP)
{
#line 45 "gpc_spec.in"
#line 8 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_LABEL)
{
#line 49 "gpc_spec.in"
tsf_f_abort("Unconverted label.");
#line 16 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTONC_INCDST)
{
#line 54 "gpc_spec.in"
copy_htonc_incdst(cur,INT_STACK_PTR(0) + INT_STREAM(0));
#line 24 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTONS_INCDST)
{
#line 59 "gpc_spec.in"
copy_htons_incdst(cur,INT_STACK_PTR(0) + INT_STREAM(0));
#line 32 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTONL_INCDST)
{
#line 64 "gpc_spec.in"
copy_htonl_incdst(cur,INT_STACK_PTR(0) + INT_STREAM(0));
#line 40 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTONLL_INCDST)
{
#line 69 "gpc_spec.in"
copy_htonll_incdst(cur,INT_STACK_PTR(0) + INT_STREAM(0));
#line 48 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTONF_INCDST)
{
#line 74 "gpc_spec.in"
copy_htonf_incdst(cur,INT_STACK_PTR(0) + INT_STREAM(0));
#line 56 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTOND_INCDST)
{
#line 79 "gpc_spec.in"
copy_htond_incdst(cur,INT_STACK_PTR(0) + INT_STREAM(0));
#line 64 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_HTONCHOICE_TO_UI8_INCDST)
{
#line 84 "gpc_spec.in"
/* here, we're really just masking off the high-order 24 bits. */
ui32_tmp=*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)));
if (ui32_tmp==UINT32_MAX) {
ui8_tmp=255;
} else {
ui8_tmp=ui32_tmp;
}
copy_htonc_incdst(cur,&ui8_tmp);
#line 79 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_BIT_INCSRC)
{
#line 96 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0))=(ui8_tmp!=0);
#line 88 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_INCSRC)
{
#line 102 "gpc_spec.in"
copy_ntohc_incsrc(INT_STACK_PTR(0) + INT_STREAM(0),cur);
#line 96 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_S_Z_INCSRC)
{
#line 107 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&ui8_tmp,cur);
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui8_tmp;
#line 105 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_S_E_INCSRC)
{
#line 113 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&i8_tmp,cur);
*((int16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i8_tmp;
#line 114 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_L_Z_INCSRC)
{
#line 119 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&ui8_tmp,cur);
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui8_tmp;
#line 123 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_L_E_INCSRC)
{
#line 125 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&i8_tmp,cur);
*((int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i8_tmp;
#line 132 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_LL_Z_INCSRC)
{
#line 131 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&ui8_tmp,cur);
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui8_tmp;
#line 141 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_LL_E_INCSRC)
{
#line 137 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&i8_tmp,cur);
*((int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i8_tmp;
#line 150 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_F_Z_INCSRC)
{
#line 143 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&ui8_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui8_tmp;
#line 159 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_F_E_INCSRC)
{
#line 149 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&i8_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i8_tmp;
#line 168 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_D_Z_INCSRC)
{
#line 155 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&ui8_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui8_tmp;
#line 177 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHC_TO_D_E_INCSRC)
{
#line 161 "gpc_spec.in"
copy_ntohc_incsrc((uint8_t*)&i8_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i8_tmp;
#line 186 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_BIT_INCSRC)
{
#line 167 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&ui16_tmp,cur);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0))=(ui16_tmp!=0);
#line 195 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_C_INCSRC)
{
#line 173 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&ui16_tmp,cur);
*((uint8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(uint8_t)ui16_tmp;
#line 204 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_INCSRC)
{
#line 179 "gpc_spec.in"
copy_ntohs_incsrc(INT_STACK_PTR(0) + INT_STREAM(0),cur);
#line 212 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_L_Z_INCSRC)
{
#line 184 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&ui16_tmp,cur);
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui16_tmp;
#line 221 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_L_E_INCSRC)
{
#line 190 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&i16_tmp,cur);
*((int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i16_tmp;
#line 230 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_LL_Z_INCSRC)
{
#line 196 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&ui16_tmp,cur);
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui16_tmp;
#line 239 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_LL_E_INCSRC)
{
#line 202 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&i16_tmp,cur);
*((int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i16_tmp;
#line 248 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_F_Z_INCSRC)
{
#line 208 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&ui16_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui16_tmp;
#line 257 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_F_E_INCSRC)
{
#line 214 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&i16_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i16_tmp;
#line 266 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_D_Z_INCSRC)
{
#line 220 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&ui16_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui16_tmp;
#line 275 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHS_TO_D_E_INCSRC)
{
#line 226 "gpc_spec.in"
copy_ntohs_incsrc((uint8_t*)&i16_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i16_tmp;
#line 284 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_BIT_INCSRC)
{
#line 232 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0))=(ui32_tmp!=0);
#line 293 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_C_INCSRC)
{
#line 238 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
*((uint8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(uint8_t)ui32_tmp;
#line 302 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_S_INCSRC)
{
#line 244 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(uint16_t)ui32_tmp;
#line 311 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_INCSRC)
{
#line 250 "gpc_spec.in"
copy_ntohl_incsrc(INT_STACK_PTR(0) + INT_STREAM(0),cur);
#line 319 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_LL_Z_INCSRC)
{
#line 255 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui32_tmp;
#line 328 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_LL_E_INCSRC)
{
#line 261 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&i32_tmp,cur);
*((int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i32_tmp;
#line 337 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_F_Z_INCSRC)
{
#line 267 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui32_tmp;
#line 346 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_F_E_INCSRC)
{
#line 273 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&i32_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i32_tmp;
#line 355 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_D_Z_INCSRC)
{
#line 279 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui32_tmp;
#line 364 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHL_TO_D_E_INCSRC)
{
#line 285 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&i32_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i32_tmp;
#line 373 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_BIT_INCSRC)
{
#line 291 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&ui64_tmp,cur);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0))=(ui64_tmp!=0);
#line 382 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_C_INCSRC)
{
#line 297 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&ui64_tmp,cur);
*((uint8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(uint8_t)ui64_tmp;
#line 391 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_S_INCSRC)
{
#line 303 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&ui64_tmp,cur);
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(uint16_t)ui64_tmp;
#line 400 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_L_INCSRC)
{
#line 309 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&ui64_tmp,cur);
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(uint32_t)ui64_tmp;
#line 409 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_INCSRC)
{
#line 315 "gpc_spec.in"
copy_ntohll_incsrc(INT_STACK_PTR(0) + INT_STREAM(0),cur);
#line 417 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_F_Z_INCSRC)
{
#line 320 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&ui64_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui64_tmp;
#line 426 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_F_E_INCSRC)
{
#line 326 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&i64_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i64_tmp;
#line 435 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_D_Z_INCSRC)
{
#line 332 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&ui64_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=ui64_tmp;
#line 444 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHLL_TO_D_E_INCSRC)
{
#line 338 "gpc_spec.in"
copy_ntohll_incsrc((uint8_t*)&i64_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=i64_tmp;
#line 453 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_BIT_INCSRC)
{
#line 344 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0))=(f_tmp!=0);
#line 462 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_C_Z_INCSRC)
{
#line 350 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((uint8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 471 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_C_E_INCSRC)
{
#line 356 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((int8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 480 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_S_Z_INCSRC)
{
#line 362 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 489 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_S_E_INCSRC)
{
#line 368 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((int16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 498 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_L_Z_INCSRC)
{
#line 374 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 507 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_L_E_INCSRC)
{
#line 380 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 516 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_LL_Z_INCSRC)
{
#line 386 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 525 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_LL_E_INCSRC)
{
#line 392 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)f_tmp;
#line 534 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_INCSRC)
{
#line 398 "gpc_spec.in"
copy_ntohf_incsrc(INT_STACK_PTR(0) + INT_STREAM(0),cur);
#line 542 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHF_TO_D_INCSRC)
{
#line 403 "gpc_spec.in"
copy_ntohf_incsrc((uint8_t*)&f_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=f_tmp;
#line 551 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_BIT_INCSRC)
{
#line 409 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0))=(d_tmp!=0);
#line 560 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_C_Z_INCSRC)
{
#line 415 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((uint8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 569 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_C_E_INCSRC)
{
#line 421 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((int8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 578 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_S_Z_INCSRC)
{
#line 427 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 587 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_S_E_INCSRC)
{
#line 433 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((int16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 596 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_L_Z_INCSRC)
{
#line 439 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 605 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_L_E_INCSRC)
{
#line 445 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 614 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_LL_Z_INCSRC)
{
#line 451 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 623 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_LL_E_INCSRC)
{
#line 457 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=(int64_t)d_tmp;
#line 632 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_TO_F_INCSRC)
{
#line 463 "gpc_spec.in"
copy_ntohd_incsrc((uint8_t*)&d_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=d_tmp;
#line 641 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_NTOHD_INCSRC)
{
#line 469 "gpc_spec.in"
copy_ntohd_incsrc(INT_STACK_PTR(0) + INT_STREAM(0),cur);
#line 649 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COPY_BIT)
{
#line 474 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((tsf_bool_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((tsf_bool_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 660 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BIT_TO_S)
{
#line 482 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((tsf_bool_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 671 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BIT_TO_L)
{
#line 490 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((tsf_bool_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 682 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BIT_TO_LL)
{
#line 498 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((tsf_bool_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 693 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BIT_TO_F)
{
#line 506 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
(*((tsf_bool_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 704 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BIT_TO_D)
{
#line 514 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
(*((tsf_bool_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 715 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C)
{
#line 522 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint8_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint8_t*)(INT_STACK_PTR(0) + src_offset));
#line 726 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_S_Z)
{
#line 530 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint8_t*)(INT_STACK_PTR(0) + src_offset));
#line 737 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_S_E)
{
#line 538 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int16_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((int8_t*)(INT_STACK_PTR(0) + src_offset));
#line 748 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_L_Z)
{
#line 546 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint8_t*)(INT_STACK_PTR(0) + src_offset));
#line 759 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_L_E)
{
#line 554 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int32_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((int8_t*)(INT_STACK_PTR(0) + src_offset));
#line 770 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_LL_Z)
{
#line 562 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint8_t*)(INT_STACK_PTR(0) + src_offset));
#line 781 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_LL_E)
{
#line 570 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((int8_t*)(INT_STACK_PTR(0) + src_offset));
#line 792 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_F_Z)
{
#line 578 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint8_t*)(INT_STACK_PTR(0) + src_offset));
#line 803 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_F_E)
{
#line 586 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((int8_t*)(INT_STACK_PTR(0) + src_offset));
#line 814 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_D_Z)
{
#line 594 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint8_t*)(INT_STACK_PTR(0) + src_offset));
#line 825 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_C_TO_D_E)
{
#line 602 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((int8_t*)(INT_STACK_PTR(0) + src_offset));
#line 836 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_BIT)
{
#line 610 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((tsf_bool_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((uint16_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 847 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_C)
{
#line 618 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint8_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint16_t*)(INT_STACK_PTR(0) + src_offset));
#line 858 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S)
{
#line 626 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint16_t*)(INT_STACK_PTR(0) + src_offset));
#line 869 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_L_Z)
{
#line 634 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint16_t*)(INT_STACK_PTR(0) + src_offset));
#line 880 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_L_E)
{
#line 642 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int32_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((int16_t*)(INT_STACK_PTR(0) + src_offset));
#line 891 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_LL_Z)
{
#line 650 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint16_t*)(INT_STACK_PTR(0) + src_offset));
#line 902 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_LL_E)
{
#line 658 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((int16_t*)(INT_STACK_PTR(0) + src_offset));
#line 913 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_F_Z)
{
#line 666 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint16_t*)(INT_STACK_PTR(0) + src_offset));
#line 924 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_F_E)
{
#line 674 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((int16_t*)(INT_STACK_PTR(0) + src_offset));
#line 935 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_D_Z)
{
#line 682 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint16_t*)(INT_STACK_PTR(0) + src_offset));
#line 946 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_S_TO_D_E)
{
#line 690 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((int16_t*)(INT_STACK_PTR(0) + src_offset));
#line 957 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_BIT)
{
#line 698 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((tsf_bool_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((uint32_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 968 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_C)
{
#line 706 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint8_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
#line 979 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_S)
{
#line 714 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
#line 990 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L)
{
#line 722 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1001 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_LL_Z)
{
#line 730 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1012 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_LL_E)
{
#line 738 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((int32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1023 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_F_Z)
{
#line 746 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1034 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_F_E)
{
#line 754 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((int32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1045 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_D_Z)
{
#line 762 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1056 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_L_TO_D_E)
{
#line 770 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((int32_t*)(INT_STACK_PTR(0) + src_offset));
#line 1067 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_BIT)
{
#line 778 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((tsf_bool_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((uint64_t*)(INT_STACK_PTR(0) + src_offset))!=0);
#line 1078 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_C)
{
#line 786 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint8_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1089 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_S)
{
#line 794 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1100 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_L)
{
#line 802 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1111 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL)
{
#line 810 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1122 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_F_Z)
{
#line 818 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1133 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_F_E)
{
#line 826 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((int64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1144 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_D_Z)
{
#line 834 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((uint64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1155 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_LL_TO_D_E)
{
#line 842 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((int64_t*)(INT_STACK_PTR(0) + src_offset));
#line 1166 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_BIT)
{
#line 850 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((tsf_bool_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((float*)(INT_STACK_PTR(0) + src_offset))!=0.);
#line 1177 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_C_Z)
{
#line 858 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint8_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1188 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_C_E)
{
#line 866 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int8_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1199 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_S_Z)
{
#line 874 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1210 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_S_E)
{
#line 882 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int16_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1221 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_L_Z)
{
#line 890 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1232 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_L_E)
{
#line 898 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int32_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1243 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_LL_Z)
{
#line 906 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1254 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_LL_E)
{
#line 914 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int64_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1265 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F)
{
#line 922 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1276 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_F_TO_D)
{
#line 930 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((float*)(INT_STACK_PTR(0) + src_offset));
#line 1287 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_BIT)
{
#line 938 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((tsf_bool_t*)(INT_STACK_PTR(1) + dest_offset)) =
(*((double*)(INT_STACK_PTR(0) + src_offset))!=0.);
#line 1298 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_C_Z)
{
#line 946 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint8_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1309 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_C_E)
{
#line 954 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int8_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1320 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_S_Z)
{
#line 962 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint16_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1331 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_S_E)
{
#line 970 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int16_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1342 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_L_Z)
{
#line 978 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1353 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_L_E)
{
#line 986 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int32_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1364 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_LL_Z)
{
#line 994 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((uint64_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1375 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_LL_E)
{
#line 1002 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((int64_t*)(INT_STACK_PTR(1) + dest_offset)) =
(int64_t)*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1386 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D_TO_F)
{
#line 1010 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((float*)(INT_STACK_PTR(1) + dest_offset)) =
*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1397 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_D)
{
#line 1018 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
*((double*)(INT_STACK_PTR(1) + dest_offset)) =
*((double*)(INT_STACK_PTR(0) + src_offset));
#line 1408 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_SET_C)
{
#line 1026 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
*((uint8_t*)(INT_STACK_PTR(0) + offset))=INT_STREAM(1);
#line 1417 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_SET_S)
{
#line 1032 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
*((uint16_t*)(INT_STACK_PTR(0) + offset))=INT_STREAM(1);
#line 1426 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_SET_L)
{
#line 1038 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
*((uint32_t*)(INT_STACK_PTR(0) + offset))=INT_STREAM(1);
#line 1435 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_SET_2ND_C)
{
#line 1044 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
*((uint8_t*)(INT_STACK_PTR(1) + offset))=INT_STREAM(1);
#line 1444 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_SET_2ND_S)
{
#line 1050 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
*((uint16_t*)(INT_STACK_PTR(1) + offset))=INT_STREAM(1);
#line 1453 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_SET_2ND_L)
{
#line 1056 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
*((uint32_t*)(INT_STACK_PTR(1) + offset))=INT_STREAM(1);
#line 1462 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BITVECTOR_READ)
{
#line 1062 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
uint32_t size;
copy_ntohc_incsrc_bc(&ui8_tmp, cur, end, bounds_error);
if (ui8_tmp == 255) {
copy_ntohl_incsrc_bc((uint8_t*)&bitvector->num_bits, cur,
end, bounds_error);
} else {
bitvector->num_bits = ui8_tmp;
}
size = ((bitvector->num_bits + 7) >> 3);
if (cur + size > end) {
goto bounds_error;
}
bitvector->bits = tsf_cond_alloc(region, size);
if (bitvector->bits == NULL) {
tsf_set_errno("Could not tsf_cond_alloc()");
INT_FAILURE();
}
memcpy(bitvector->bits, cur, size);
cur += size;
#line 1496 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_TO_C)
{
#line 1093 "gpc_spec.in"
tsf_native_uint8_array_t *array=
(tsf_native_uint8_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_bitvector_to_array(1)
#line 1506 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_TO_S)
{
#line 1100 "gpc_spec.in"
tsf_native_uint16_array_t *array=
(tsf_native_uint16_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_bitvector_to_array(2)
#line 1516 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_TO_L)
{
#line 1107 "gpc_spec.in"
tsf_native_uint32_array_t *array=
(tsf_native_uint32_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_bitvector_to_array(4)
#line 1526 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_TO_LL)
{
#line 1114 "gpc_spec.in"
tsf_native_uint64_array_t *array=
(tsf_native_uint64_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_bitvector_to_array(8)
#line 1536 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_TO_F)
{
#line 1121 "gpc_spec.in"
tsf_native_float_array_t *array=
(tsf_native_float_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_bitvector_to_array(4)
#line 1546 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_TO_D)
{
#line 1128 "gpc_spec.in"
tsf_native_double_array_t *array=
(tsf_native_double_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_bitvector_to_array(8)
#line 1556 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_C)
{
#line 1135 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_array_to_bitvector(c,ui8_tmp,1)
#line 1566 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_S)
{
#line 1142 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_array_to_bitvector(s,ui16_tmp,2)
#line 1576 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_L)
{
#line 1149 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_array_to_bitvector(l,ui32_tmp,4)
#line 1586 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_LL)
{
#line 1156 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_array_to_bitvector(ll,ui64_tmp,8)
#line 1596 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_F)
{
#line 1163 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_array_to_bitvector(f,f_tmp,4)
#line 1606 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_D)
{
#line 1170 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_array_to_bitvector(d,d_tmp,1)
#line 1616 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_TSF_INTEGER_ARRAY)
{
#line 1177 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_integer_array_to_bitvector(integer)
#line 1626 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_READ_FROM_TSF_LONG_ARRAY)
{
#line 1184 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
gpc_read_integer_array_to_bitvector(long)
#line 1636 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_WRITE)
{
#line 1191 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
uint32_t size;
if (bitvector->num_bits>=255) {
ui8_tmp=255;
copy_htonc_incdst(cur,&ui8_tmp);
copy_htonl_incdst(cur,(uint8_t*)&bitvector->num_bits);
} else {
ui8_tmp=bitvector->num_bits;
copy_htonc_incdst(cur,&ui8_tmp);
}
size=((bitvector->num_bits+7)>>3);
memcpy(cur,bitvector->bits,size);
cur+=size;
#line 1660 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BYTE_ARRAY_READ)
{
#line 1212 "gpc_spec.in"
tsf_native_array_t *array=
(tsf_native_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
uint32_t size;
copy_ntohc_incsrc_bc(&ui8_tmp,cur,end,bounds_error);
if (ui8_tmp==255) {
copy_ntohl_incsrc_bc((uint8_t*)&array->len,cur,
end,bounds_error);
} else {
array->len = ui8_tmp;
}
size=array->len*INT_STREAM(1);
if (cur + size > end) {
goto bounds_error;
}
array->data=tsf_cond_alloc(region,size);
if (array->data==NULL) {
tsf_set_errno("Could not tsf_cond_alloc()");
INT_FAILURE();
}
memcpy(array->data,cur,size);
cur+=size;
#line 1694 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BYTE_ARRAY_WRITE)
{
#line 1243 "gpc_spec.in"
tsf_native_array_t *array=
(tsf_native_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
uint32_t size;
if (array->len>=255) {
ui8_tmp=255;
copy_htonc_incdst(cur,&ui8_tmp);
copy_htonl_incdst(cur,(uint8_t*)&array->len);
} else {
ui8_tmp=array->len;
copy_htonc_incdst(cur,&ui8_tmp);
}
size=array->len*INT_STREAM(1);
memcpy(cur,array->data,size);
cur+=size;
#line 1719 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_TSF_INTEGER_SKIP)
{
#line 1265 "gpc_spec.in"
uint8_t *new_cur = cur + size_of_encoded_tsf_integer(*cur);
if (new_cur > end) {
goto bounds_error;
}
cur = new_cur;
#line 1731 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_TSF_UNSIGNED_SKIP)
{
#line 1274 "gpc_spec.in"
uint8_t *new_cur = cur + size_of_encoded_tsf_unsigned(*cur);
if (new_cur > end) {
goto bounds_error;
}
cur = new_cur;
#line 1743 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_TSF_LONG_SKIP)
{
#line 1283 "gpc_spec.in"
uint8_t *new_cur = cur + size_of_encoded_tsf_long(*cur);
if (new_cur > end) {
goto bounds_error;
}
cur = new_cur;
#line 1755 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ_TO_BIT)
{
#line 1292 "gpc_spec.in"
int32_t integer;
read_tsf_integer_incsrc(&integer, cur, end, bounds_error);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = !!integer;
#line 1765 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ_TO_C)
{
#line 1299 "gpc_spec.in"
int32_t integer;
read_tsf_integer_incsrc(&integer, cur, end, bounds_error);
*(int8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1775 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ_TO_S)
{
#line 1306 "gpc_spec.in"
int32_t integer;
read_tsf_integer_incsrc(&integer, cur, end, bounds_error);
*(int16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1785 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ)
{
#line 1313 "gpc_spec.in"
int32_t *integer = (int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
read_tsf_integer_incsrc(integer, cur, end, bounds_error);
#line 1794 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ_TO_LL)
{
#line 1319 "gpc_spec.in"
int32_t integer;
read_tsf_integer_incsrc(&integer, cur, end, bounds_error);
*(int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1804 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ_TO_F)
{
#line 1326 "gpc_spec.in"
int32_t integer;
read_tsf_integer_incsrc(&integer, cur, end, bounds_error);
*(float*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1814 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_READ_TO_D)
{
#line 1333 "gpc_spec.in"
int32_t integer;
read_tsf_integer_incsrc(&integer, cur, end, bounds_error);
*(double*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1824 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_UNSIGNED_READ_SUB1)
INT_PUSH();
{
#line 1340 "gpc_spec.in"
tsf_unsigned_t value;
read_tsf_unsigned_incsrc(&value, cur, end, bounds_error);
INT_STACK_SET(0, value - 1);
#line 1835 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_TSF_LONG_READ_TO_BIT)
{
#line 1347 "gpc_spec.in"
int64_t integer;
read_tsf_long_incsrc(&integer, cur, end, bounds_error);
*(tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = !!integer;
#line 1845 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_READ_TO_C)
{
#line 1354 "gpc_spec.in"
int64_t integer;
read_tsf_long_incsrc(&integer, cur, end, bounds_error);
*(int8_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1855 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_READ_TO_S)
{
#line 1361 "gpc_spec.in"
int64_t integer;
read_tsf_long_incsrc(&integer, cur, end, bounds_error);
*(int16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1865 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_READ_TO_L)
{
#line 1368 "gpc_spec.in"
int64_t integer;
read_tsf_long_incsrc(&integer, cur, end, bounds_error);
*(int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1875 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_READ)
{
#line 1375 "gpc_spec.in"
int64_t *integer = (int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
read_tsf_long_incsrc(integer, cur, end, bounds_error);
#line 1884 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_READ_TO_F)
{
#line 1381 "gpc_spec.in"
int64_t integer;
read_tsf_long_incsrc(&integer, cur, end, bounds_error);
*(float*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1894 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_READ_TO_D)
{
#line 1388 "gpc_spec.in"
int64_t integer;
read_tsf_long_incsrc(&integer, cur, end, bounds_error);
*(double*)(INT_STACK_PTR(0) + INT_STREAM(0)) = integer;
#line 1904 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_SIZE)
{
#line 1395 "gpc_spec.in"
int32_t *integer = (int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
size += size_of_tsf_integer(*integer);
#line 1913 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_UNSIGNED_PLUS1_SIZE)
{
#line 1401 "gpc_spec.in"
tsf_unsigned_t *integer = (tsf_unsigned_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
size += size_of_tsf_integer(*integer + 1);
#line 1922 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_SIZE)
{
#line 1407 "gpc_spec.in"
int64_t *integer = (int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
size += size_of_tsf_long(*integer);
#line 1931 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_INTEGER_WRITE)
{
#line 1413 "gpc_spec.in"
int32_t *integer = (int32_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
cur += write_tsf_integer(cur, *integer);
#line 1940 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_UNSIGNED_PLUS1_WRITE)
{
#line 1419 "gpc_spec.in"
tsf_unsigned_t *integer = (tsf_unsigned_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
cur += write_tsf_unsigned(cur, *integer + 1);
#line 1949 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TSF_LONG_WRITE)
{
#line 1425 "gpc_spec.in"
int64_t *integer = (int64_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
cur += write_tsf_long(cur, *integer);
#line 1958 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STRING_SETEMPTY)
{
#line 1431 "gpc_spec.in"
char **str=(char**)(INT_STACK_PTR(0) + INT_STREAM(0));
if (region != NULL) {
/* If we're using regions then we can be sure that nobody will attempt to free
this. That means we can do the efficient thing and just use a string constant. */
*str = "";
} else {
/* Destructing a string means freeing it. That means we have to malloc the empty
string. */
*str = strdup("");
if (!*str) {
tsf_set_errno("Could not strdup the empty string");
INT_FAILURE();
}
}
#line 1979 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STRING_READ)
{
#line 1449 "gpc_spec.in"
char **str;
size_t size;
/* First figure out the size of the string. */
size = skip_string((const char*)cur, (const char *)end);
if (!size) {
goto bounds_error;
}
/* Now allocate the string and copy the contents. */
str = (char**)(INT_STACK_PTR(0) + INT_STREAM(0));
*str = tsf_cond_alloc(region, size);
if (*str == NULL) {
tsf_set_errno("Could not tsf_cond_alloc() string");
INT_FAILURE();
}
memcpy(*str, cur, size);
cur += size;
#line 2004 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STRING_SKIP)
{
#line 1471 "gpc_spec.in"
/* It would have been easier to inline the body of skip_string here, but we don't do
that because it revealed compiler bugs in some old GCC. */
size_t num_skipped = skip_string((const char*)cur, (const char*)end);
if (!num_skipped) {
goto bounds_error;
}
cur += num_skipped;
#line 2018 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_STRING_SIZE)
{
#line 1482 "gpc_spec.in"
char **str=(char**)(INT_STACK_PTR(0) + INT_STREAM(0));
size+=strlen(*str)+1;
#line 2027 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STRING_WRITE)
{
#line 1488 "gpc_spec.in"
char **str=(char**)(INT_STACK_PTR(0) + INT_STREAM(0));
#ifdef HAVE_STPCPY
cur=((uint8_t*)stpcpy((char*)cur,*str))+1;
#else
strcpy((char*)cur,*str);
cur+=strlen(*str)+1;
#endif
#line 2041 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STRING_COPY)
{
#line 1499 "gpc_spec.in"
char **dest = (char**)(INT_STACK_PTR(1) + INT_STREAM(0));
char **src = (char**)(INT_STACK_PTR(0) + INT_STREAM(1));
*dest = tsf_cond_alloc(region, strlen(*src) + 1);
if (*dest == NULL) {
tsf_set_errno("Could not tsf_cond_alloc() string");
INT_FAILURE();
}
strcpy(*dest, *src);
#line 2056 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_ANY_SETEMPTY)
{
#line 1511 "gpc_spec.in"
tsf_buffer_t **dest=(tsf_buffer_t**)
(INT_STACK_PTR(0) + INT_STREAM(0));
*dest=tsf_buffer_get_empty_singleton();
#line 2066 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ANY_READ)
{
#line 1518 "gpc_spec.in"
tsf_buffer_t **dest = (tsf_buffer_t**)
(INT_STACK_PTR(0) + INT_STREAM(0));
*dest = tsf_buffer_read_from_buf(types, &cur, end, region);
if (*dest == NULL) {
INT_FAILURE();
}
#line 2080 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ANY_SKIP)
{
#line 1529 "gpc_spec.in"
if (!tsf_buffer_skip_in_buf(types,&cur,end)) {
INT_FAILURE();
}
#line 2090 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_ANY_SIZE)
{
#line 1536 "gpc_spec.in"
tsf_buffer_t **src=(tsf_buffer_t**)
(INT_STACK_PTR(0) + INT_STREAM(0));
size+=tsf_buffer_calc_size(*src);
#line 2101 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ANY_WRITE)
{
#line 1544 "gpc_spec.in"
tsf_buffer_t **src=(tsf_buffer_t**)
(INT_STACK_PTR(0) + INT_STREAM(0));
if (!tsf_buffer_write_to_buf(*src,out_map,&cur)) {
INT_FAILURE();
}
#line 2114 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ANY_COPY)
{
#line 1554 "gpc_spec.in"
tsf_buffer_t **dest=(tsf_buffer_t**)
(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_buffer_t **src=(tsf_buffer_t**)
(INT_STACK_PTR(0) + INT_STREAM(1));
*dest=tsf_buffer_clone_in(*src,region);
if (*dest==NULL) {
INT_FAILURE();
}
#line 2130 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_MEMCPY)
{
#line 1567 "gpc_spec.in"
uintptr_t dest_offset=INT_STREAM(0);
uintptr_t src_offset=INT_STREAM(1);
memcpy(INT_STACK_PTR(1)+dest_offset,
INT_STACK_PTR(0)+src_offset,
INT_STREAM(2));
#line 2142 "gpc_interpreter.gen"
}
INT_ADVANCE(3);
INT_END()
INT_BEGIN(I_COPY_ARRAY)
{
#line 1576 "gpc_spec.in"
tsf_native_array_t *dest=
(tsf_native_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_array_t *src=
(tsf_native_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint32_t ele_size=INT_STREAM(2);
dest->len=src->len;
dest->data = tsf_cond_alloc(region, dest->len * ele_size);
if (dest->data == NULL) {
tsf_set_errno("Could not allocate array from region");
INT_FAILURE();
}
memcpy(dest->data, src->data, dest->len * ele_size);
#line 2164 "gpc_interpreter.gen"
}
INT_ADVANCE(3);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR)
{
#line 1595 "gpc_spec.in"
tsf_native_bitvector_t *dest =
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src =
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
dest->num_bits = src->num_bits;
dest->bits = tsf_cond_alloc(region, (dest->num_bits + 7) >> 3);
if (dest->bits == NULL) {
tsf_set_errno("Could not allocate bitvector from region");
INT_FAILURE();
}
memcpy(dest->bits, src->bits, (dest->num_bits + 7) >> 3);
#line 2185 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_FROM_C)
{
#line 1613 "gpc_spec.in"
tsf_native_bitvector_t *dest=
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_uint8_array_t *src=
(tsf_native_uint8_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint8_t *src_cur;
gpc_copy_array_to_bitvector()
#line 2198 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_FROM_S)
{
#line 1623 "gpc_spec.in"
tsf_native_bitvector_t *dest=
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_uint16_array_t *src=
(tsf_native_uint16_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint16_t *src_cur;
gpc_copy_array_to_bitvector()
#line 2211 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_FROM_L)
{
#line 1633 "gpc_spec.in"
tsf_native_bitvector_t *dest=
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_uint32_array_t *src=
(tsf_native_uint32_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint32_t *src_cur;
gpc_copy_array_to_bitvector()
#line 2224 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_FROM_LL)
{
#line 1643 "gpc_spec.in"
tsf_native_bitvector_t *dest=
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_uint64_array_t *src=
(tsf_native_uint64_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint64_t *src_cur;
gpc_copy_array_to_bitvector()
#line 2237 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_FROM_F)
{
#line 1653 "gpc_spec.in"
tsf_native_bitvector_t *dest=
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_float_array_t *src=
(tsf_native_float_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
float *src_cur;
gpc_copy_array_to_bitvector()
#line 2250 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_FROM_D)
{
#line 1663 "gpc_spec.in"
tsf_native_bitvector_t *dest=
(tsf_native_bitvector_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_double_array_t *src=
(tsf_native_double_array_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
double *src_cur;
gpc_copy_array_to_bitvector()
#line 2263 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_TO_C)
{
#line 1673 "gpc_spec.in"
tsf_native_uint8_array_t *dest=
(tsf_native_uint8_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint8_t *dest_cur;
gpc_copy_bitvector_to_array(1)
#line 2276 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_TO_S)
{
#line 1683 "gpc_spec.in"
tsf_native_uint16_array_t *dest=
(tsf_native_uint16_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint16_t *dest_cur;
gpc_copy_bitvector_to_array(2)
#line 2289 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_TO_L)
{
#line 1693 "gpc_spec.in"
tsf_native_uint32_array_t *dest=
(tsf_native_uint32_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint32_t *dest_cur;
gpc_copy_bitvector_to_array(4)
#line 2302 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_TO_LL)
{
#line 1703 "gpc_spec.in"
tsf_native_uint64_array_t *dest=
(tsf_native_uint64_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
uint64_t *dest_cur;
gpc_copy_bitvector_to_array(8)
#line 2315 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_TO_F)
{
#line 1713 "gpc_spec.in"
tsf_native_float_array_t *dest=
(tsf_native_float_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
float *dest_cur;
gpc_copy_bitvector_to_array(4)
#line 2328 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COPY_BITVECTOR_TO_D)
{
#line 1723 "gpc_spec.in"
tsf_native_double_array_t *dest=
(tsf_native_double_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
tsf_native_bitvector_t *src=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(1));
double *dest_cur;
gpc_copy_bitvector_to_array(8)
#line 2341 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_READC_TO_CHOICE)
INT_PUSH();
{
#line 1733 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
if (ui8_tmp==255) {
INT_STACK_SET(0,UINT32_MAX);
} else {
INT_STACK_SET(0,ui8_tmp);
}
#line 2355 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_READL)
INT_PUSH();
{
#line 1743 "gpc_spec.in"
copy_ntohl_incsrc((uint8_t*)&ui32_tmp,cur);
INT_STACK_SET(0,ui32_tmp);
#line 2365 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_ARRAY_LEN_WRITE_FIELD)
{
#line 1749 "gpc_spec.in"
ui32_tmp=*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)));
if (ui32_tmp>=255) {
ui8_tmp=255;
copy_htonc_incdst(cur,&ui8_tmp);
copy_htonl_incdst(cur,(uint8_t*)&ui32_tmp);
} else {
ui8_tmp=ui32_tmp;
copy_htonc_incdst(cur,&ui8_tmp);
}
#line 2381 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ARRAY_LEN_READ_FIELD)
{
#line 1762 "gpc_spec.in"
copy_ntohc_incsrc_bc(&ui8_tmp,cur,end,bounds_error);
if (ui8_tmp==255) {
copy_ntohl_incsrc_bc(INT_STACK_PTR(0) + INT_STREAM(0),cur,
end,bounds_error);
} else {
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0))) = ui8_tmp;
}
#line 2395 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ARRAY_LEN_READ_LOCAL)
INT_PUSH();
{
#line 1773 "gpc_spec.in"
copy_ntohc_incsrc_bc(&ui8_tmp,cur,end,bounds_error);
if (ui8_tmp==255) {
copy_ntohl_incsrc_bc((uint8_t*)&ui32_tmp,cur,end,bounds_error);
INT_STACK_SET(0,ui32_tmp);
} else {
INT_STACK_SET(0,ui8_tmp);
}
#line 2410 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_ARRAY_LEN_SKIP)
{
#line 1784 "gpc_spec.in"
copy_ntohc_incsrc_bc(&ui8_tmp,cur,end,bounds_error);
if (ui8_tmp==255) {
if (cur+4>end) {
goto bounds_error;
}
cur+=4;
}
#line 2424 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_BIT_MASK_WRITE)
{
#line 1795 "gpc_spec.in"
ui32_tmp=INT_STREAM(0);
if (*((tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(1)))) {
*cur|=(1<<ui32_tmp);
} else {
*cur&=~(1<<ui32_tmp);
}
#line 2437 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_MASK_READ)
{
#line 1805 "gpc_spec.in"
if (*cur&(1<<INT_STREAM(0))) {
*((tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = tsf_true;
} else {
*((tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = tsf_false;
}
#line 2449 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_MASK_READ_TO_S)
{
#line 1814 "gpc_spec.in"
if (*cur&(1<<INT_STREAM(0))) {
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 1;
} else {
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 0;
}
#line 2461 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_MASK_READ_TO_L)
{
#line 1823 "gpc_spec.in"
if (*cur&(1<<INT_STREAM(0))) {
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 1;
} else {
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 0;
}
#line 2473 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_MASK_READ_TO_LL)
{
#line 1832 "gpc_spec.in"
if (*cur&(1<<INT_STREAM(0))) {
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 1;
} else {
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 0;
}
#line 2485 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_MASK_READ_TO_F)
{
#line 1841 "gpc_spec.in"
if (*cur&(1<<INT_STREAM(0))) {
*((float*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 1.;
} else {
*((float*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 0.;
}
#line 2497 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_MASK_READ_TO_D)
{
#line 1850 "gpc_spec.in"
if (*cur&(1<<INT_STREAM(0))) {
*((double*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 1.;
} else {
*((double*)(INT_STACK_PTR(0) + INT_STREAM(1))) = 0.;
}
#line 2509 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_BIT_WRITE)
{
#line 1859 "gpc_spec.in"
ui8_tmp=*((tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))?
tsf_true:tsf_false;
copy_htonc_incdst(cur,&ui8_tmp);
#line 2519 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BIT_READ)
{
#line 1866 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*((tsf_bool_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=
ui8_tmp?tsf_true:tsf_false;
#line 2529 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BIT_READ_TO_S)
{
#line 1873 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*((uint16_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=
ui8_tmp?1:0;
#line 2539 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BIT_READ_TO_L)
{
#line 1880 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=
ui8_tmp?1:0;
#line 2549 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BIT_READ_TO_LL)
{
#line 1887 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*((uint64_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))=
ui8_tmp?1:0;
#line 2559 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BIT_READ_TO_F)
{
#line 1894 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*((float*)(INT_STACK_PTR(0) + INT_STREAM(0)))=
ui8_tmp?1.:0.;
#line 2569 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BIT_READ_TO_D)
{
#line 1901 "gpc_spec.in"
copy_ntohc_incsrc(&ui8_tmp,cur);
*((double*)(INT_STACK_PTR(0) + INT_STREAM(0)))=
ui8_tmp?1.:0.;
#line 2579 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_SKIP)
{
#line 1908 "gpc_spec.in"
cur+=INT_STREAM(0);
#line 2587 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ARRAY_BC_AND_SKIP_FIELD)
{
#line 1913 "gpc_spec.in"
uintptr_t offset=INT_STREAM(0);
uint32_t ele_size=INT_STREAM(1);
uint32_t size=ele_size* *((uint32_t*)(INT_STACK_PTR(0) + offset));
if (cur + size > end) {
goto bounds_error;
}
cur+=size;
#line 2601 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_ARRAY_SKIP)
{
#line 1924 "gpc_spec.in"
uint32_t array_len;
uint32_t size;
copy_ntohc_incsrc_bc(&ui8_tmp,cur,end,bounds_error);
if (ui8_tmp==255) {
copy_ntohl_incsrc_bc((uint8_t*)&array_len,cur,
end,bounds_error);
} else {
array_len = ui8_tmp;
}
size=array_len*INT_STREAM(0);
if (cur + size > end) {
goto bounds_error;
}
cur+=size;
#line 2626 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_BC_AND_SKIP_FIELD)
{
#line 1946 "gpc_spec.in"
uint32_t size=(*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0))) + 7)>>3;
if (cur+size>end) {
goto bounds_error;
}
cur+=size;
#line 2638 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_SKIP)
{
#line 1955 "gpc_spec.in"
uint32_t num_bits;
uint32_t size;
copy_ntohc_incsrc_bc(&ui8_tmp,cur,end,bounds_error);
if (ui8_tmp==255) {
copy_ntohl_incsrc_bc((uint8_t*)&num_bits,cur,
end,bounds_error);
} else {
num_bits = ui8_tmp;
}
size=((num_bits + 7)>>3);
if (cur + size > end) {
goto bounds_error;
}
cur+=size;
#line 2663 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_INC_SIZE)
{
#line 1977 "gpc_spec.in"
size+=INT_STREAM(0);
#line 2671 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_INC_SIZE_ARRAY_LEN)
{
#line 1982 "gpc_spec.in"
if (*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0)))>=255) {
size+=5;
} else {
size+=1;
}
#line 2683 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_INC_SIZE_ARRAY)
{
#line 1991 "gpc_spec.in"
tsf_native_array_t *array=
(tsf_native_array_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
uint32_t ele_size=INT_STREAM(1);
if (array->len>=255) {
size+=5;
} else {
size+=1;
}
size+=ele_size*array->len;
#line 2701 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_INC_SIZE_BITVECTOR)
{
#line 2006 "gpc_spec.in"
tsf_native_bitvector_t *bitvector=
(tsf_native_bitvector_t*)(INT_STACK_PTR(0) + INT_STREAM(0));
if (bitvector->num_bits>=255) {
size+=5;
} else {
size+=1;
}
size+=((bitvector->num_bits+7)>>3);
#line 2718 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BC)
{
#line 2020 "gpc_spec.in"
if (cur+INT_STREAM(0) > end) {
goto bounds_error;
}
#line 2728 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ARRAY_BC_FIELD)
{
#line 2027 "gpc_spec.in"
uintptr_t offset=INT_STREAM(0);
uint32_t ele_size=INT_STREAM(1);
if (cur + ele_size* *((uint32_t*)(INT_STACK_PTR(0) + offset)) > end) {
goto bounds_error;
}
#line 2740 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_ARRAY_BC_LOCAL)
{
#line 2036 "gpc_spec.in"
if (cur + INT_STREAM(0) * INT_STACK(0) > end) {
goto bounds_error;
}
#line 2750 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_BC_FIELD)
{
#line 2043 "gpc_spec.in"
if (cur + ((*((uint32_t*)(INT_STACK_PTR(0) + INT_STREAM(0))) + 7)>>3) > end) {
goto bounds_error;
}
#line 2760 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_BITVECTOR_BC_LOCAL)
{
#line 2050 "gpc_spec.in"
if (cur + ((INT_STACK(0) + 7)>>3) > end) {
goto bounds_error;
}
#line 2770 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_MALLOC_BUF)
{
#line 2057 "gpc_spec.in"
tsf_buffer_t *buffer = (tsf_buffer_t*)INT_STACK_PTR(1);
if (size > buffer->size) {
buf = tsf_cond_alloc(region, size);
if (buf == NULL) {
tsf_set_errno("Could not tsf_cond_alloc buffer");
INT_FAILURE();
}
keep = tsf_true;
} else {
buf = buffer->data;
}
cur = buf;
end = buf + size;
#line 2790 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_POP_BUF)
{
#line 2074 "gpc_spec.in"
tsf_buffer_t *buffer=(tsf_buffer_t*)INT_STACK_PTR(0);
buf=buffer->data;
cur=buf;
end=buf+buffer->size;
keep=tsf_false;
types=buffer->types;
#line 2804 "gpc_interpreter.gen"
}
INT_POP();
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_DESTROY_BUFFER)
INT_PUSH();
{
#line 2085 "gpc_spec.in"
tsf_buffer_t **arg = (tsf_buffer_t**)(INT_STACK_PTR(0) + INT_STREAM(0));
tsf_buffer_destroy(*arg);
#line 2815 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_MAKE_OUT_MAP)
{
#line 2091 "gpc_spec.in"
out_map=tsf_type_out_map_create();
if (out_map==NULL) {
INT_FAILURE();
}
#line 2826 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_ALLOC_ROOT_MAYBE_2ND)
{
#line 2099 "gpc_spec.in"
if (INT_STACK_PTR(1)==NULL) {
if (region==NULL) {
region=tsf_region_create(INT_STREAM(0));
if (region==NULL) {
tsf_set_errno("Could not tsf_region_create()");
INT_FAILURE();
}
keep_region=tsf_true;
INT_STACK_PTR_SET(1,region);
} else {
void *data=tsf_region_alloc(region,INT_STREAM(0));
if (data==NULL) {
tsf_set_errno("Could not tsf_region_alloc()");
INT_FAILURE();
}
INT_STACK_PTR_SET(1,data);
}
}
#line 2851 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ALLOC)
INT_PUSH();
{
#line 2121 "gpc_spec.in"
void *tmp = tsf_cond_alloc(region, INT_STREAM(0));
INT_STACK_PTR_SET(0, tmp);
if (INT_STACK_PTR(0) == NULL) {
tsf_set_errno("Could not tsf_cond_alloc()");
INT_FAILURE();
}
#line 2865 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ALLOC_ARRAY)
INT_PUSH();
{
#line 2131 "gpc_spec.in"
tsf_native_array_t *array=
(tsf_native_array_t*)(INT_STACK_PTR(1) + INT_STREAM(0));
uint32_t ele_size = INT_STREAM(1);
array->data = tsf_cond_alloc(region, ele_size * array->len);
if (array->data == NULL) {
tsf_set_errno("Could not tsf_cond_alloc()");
INT_FAILURE();
}
INT_STACK_PTR_SET(0, array->data);
#line 2885 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_ALLOC_ARRAY_2ND)
INT_PUSH();
{
#line 2147 "gpc_spec.in"
tsf_native_array_t *array =
(tsf_native_array_t*)(INT_STACK_PTR(2) + INT_STREAM(0));
uint32_t ele_size = INT_STREAM(1);
array->data = tsf_cond_alloc(region,ele_size * array->len);
if (array->data == NULL) {
tsf_set_errno("Could not tsf_cond_alloc()");
INT_FAILURE();
}
INT_STACK_PTR_SET(0, array->data);
#line 2904 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_CALL)
{
#line 2162 "gpc_spec.in"
((void(*)(void*))INT_STREAM(1))(INT_STACK_PTR(0) + INT_STREAM(0));
#line 2912 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_ADD_CBACK)
{
#line 2167 "gpc_spec.in"
if (!tsf_region_add_cback(region,
(void*)INT_STREAM(1),
INT_STACK_PTR(0) + INT_STREAM(0))) {
tsf_set_errno("Could not tsf_region_add_cback()");
INT_FAILURE();
}
#line 2925 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_FREE_IMMEDIATE)
{
#line 2177 "gpc_spec.in"
free(INT_STACK_PTR(0));
#line 2933 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_FREE)
{
#line 2182 "gpc_spec.in"
void **arg = (void**)(INT_STACK_PTR(0) + INT_STREAM(0));
free(*arg);
#line 2942 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STORE_PTR)
{
#line 2188 "gpc_spec.in"
*((uintptr_t*)(INT_STACK_PTR(1) + INT_STREAM(0))) = INT_STACK(0);
#line 2950 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STORE_PTR_2ND)
{
#line 2193 "gpc_spec.in"
*((uintptr_t*)(INT_STACK_PTR(2) + INT_STREAM(0))) = INT_STACK(0);
#line 2958 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_STORE_VAL)
{
#line 2198 "gpc_spec.in"
*((uint32_t*)(INT_STACK_PTR(1) + INT_STREAM(0))) =
(uint32_t)INT_STACK(0);
#line 2967 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_PUSH_PTR)
INT_PUSH();
{
#line 2204 "gpc_spec.in"
uintptr_t tmp=*((uintptr_t*)(INT_STACK_PTR(1) + INT_STREAM(0)));
INT_STACK_SET(0,tmp);
#line 2977 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_PUSH_PTR_2ND)
INT_PUSH();
{
#line 2210 "gpc_spec.in"
uintptr_t tmp=*((uintptr_t*)(INT_STACK_PTR(2) + INT_STREAM(0)));
INT_STACK_SET(0,tmp);
#line 2987 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_PUSH_PTR_3RD)
INT_PUSH();
{
#line 2216 "gpc_spec.in"
uintptr_t tmp=*((uintptr_t*)(INT_STACK_PTR(3) + INT_STREAM(0)));
INT_STACK_SET(0,tmp);
#line 2997 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_PUSH_VAL)
INT_PUSH();
{
#line 2222 "gpc_spec.in"
uint32_t tmp=*((uint32_t*)(INT_STACK_PTR(1) + INT_STREAM(0)));
INT_STACK_SET(0,tmp);
#line 3007 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_DUP_PTR_2ND)
INT_PUSH();
{
#line 2228 "gpc_spec.in"
uintptr_t tmp=(uintptr_t)INT_STACK_PTR(2);
INT_STACK_SET(0,tmp);
#line 3017 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_POP)
{
#line 2234 "gpc_spec.in"
#line 3024 "gpc_interpreter.gen"
}
INT_POP();
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_TWO_POP)
{
#line 2238 "gpc_spec.in"
#line 3032 "gpc_interpreter.gen"
}
INT_POP();
INT_POP();
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_THREE_POP)
{
#line 2242 "gpc_spec.in"
#line 3041 "gpc_interpreter.gen"
}
INT_POP();
INT_POP();
INT_POP();
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_REPUSH_MULADD_PTR)
INT_PUSH();
{
#line 2246 "gpc_spec.in"
void *tmp=INT_STACK_PTR(1);
ui32_tmp=INT_STREAM(0);
INT_STACK_PTR_SET(1,INT_STACK_PTR(1)+
(*((uint32_t*)(INT_STACK_PTR(2) + ui32_tmp))
*INT_STREAM(1)));
INT_STACK_PTR_SET(0,tmp);
#line 3058 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_REPUSH_MULADD_PTR_2ND)
INT_PUSH();
{
#line 2256 "gpc_spec.in"
void *tmp=INT_STACK_PTR(1);
ui32_tmp=INT_STREAM(0);
INT_STACK_PTR_SET(1,INT_STACK_PTR(1)+
(*((uint32_t*)(INT_STACK_PTR(3) + ui32_tmp))
*INT_STREAM(1)));
INT_STACK_PTR_SET(0,tmp);
#line 3072 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_COMPFAILJUMP)
{
#line 2266 "gpc_spec.in"
if (INT_STACK_PTR(0) >= INT_STACK_PTR(1)) {
INT_STREAM_GOTO(0);
}
#line 3082 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_COMPFAILJUMP_2ND)
{
#line 2273 "gpc_spec.in"
if (INT_STACK_PTR(1) >= INT_STACK_PTR(2)) {
INT_STREAM_GOTO(0);
}
#line 3092 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_ADDCOMPJUMP)
{
#line 2280 "gpc_spec.in"
uint32_t constant=INT_STREAM(0);
INT_STACK_PTR_SET(0,INT_STACK_PTR(0)+constant);
if (INT_STACK_PTR(0) < INT_STACK_PTR(1)) {
INT_STREAM_GOTO(1);
}
#line 3106 "gpc_interpreter.gen"
}
INT_ADVANCE(2);
INT_END()
INT_BEGIN(I_TWO_ADDCOMPJUMP)
{
#line 2291 "gpc_spec.in"
uint32_t dest_const=INT_STREAM(0);
uint32_t src_const=INT_STREAM(1);
INT_STACK_PTR_SET(1,INT_STACK_PTR(1)+dest_const);
INT_STACK_PTR_SET(0,INT_STACK_PTR(0)+src_const);
if (INT_STACK_PTR(1) < INT_STACK_PTR(2)) {
INT_STREAM_GOTO(2);
}
#line 3122 "gpc_interpreter.gen"
}
INT_ADVANCE(3);
INT_END()
INT_BEGIN(I_ZEROJUMP)
{
#line 2304 "gpc_spec.in"
if (INT_STACK(0)==0) {
INT_STREAM_GOTO(0);
}
#line 3132 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_DECCOMPJUMP)
{
#line 2311 "gpc_spec.in"
if (--INT_STACK(0)!=0) {
INT_STREAM_GOTO(0);
}
#line 3142 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_CHECKCHOICE)
{
#line 2318 "gpc_spec.in"
uintptr_t num_choices=(tsf_choice_t)INT_STREAM(0);
if (INT_STACK(0)!=UINT32_MAX && INT_STACK(0)>=num_choices) {
tsf_set_error(TSF_E_PARSE_ERROR,
"Invalid choice value");
INT_FAILURE();
}
#line 3155 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_TABLESET_LOCAL_TO_FIELD)
{
#line 2328 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
uint32_t num=INT_STREAM(1);
if (INT_STACK(0)==UINT32_MAX) {
*((uint32_t*)(INT_STACK_PTR(1) + offset))=UINT32_MAX;
} else if (INT_STACK(0)>=num) {
tsf_set_error(TSF_E_PARSE_ERROR,
"TABLESET_LOCAL_TO_FIELD bounds error: got " fui32
" but had an upper bound of " fui32,
(uint32_t)INT_STACK(0),num);
INT_FAILURE();
} else {
*((uint32_t*)(INT_STACK_PTR(1) + offset))=
INT_STREAM(2+INT_STACK(0));
}
#line 3176 "gpc_interpreter.gen"
}
INT_POP();
INT_ADVANCE(2+INT_STREAM(1));
INT_END()
INT_BEGIN(I_TABLESET_FIELD_TO_FIELD)
{
#line 2346 "gpc_spec.in"
uint32_t dest_offset=INT_STREAM(0);
uint32_t src_offset=INT_STREAM(1);
uint32_t num=INT_STREAM(2);
uint32_t value=*((uint32_t*)(INT_STACK_PTR(0) + src_offset));
if (value==UINT32_MAX) {
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset))=UINT32_MAX;
} else if (value>=num) {
tsf_set_error(TSF_E_PARSE_ERROR,
"TABLESET_FIELD_TO_FIELD bounds error: got " fui32
" but had an upper bound of " fui32,value,num);
INT_FAILURE();
} else {
*((uint32_t*)(INT_STACK_PTR(1) + dest_offset))=
INT_STREAM(3+value);
}
#line 3201 "gpc_interpreter.gen"
}
INT_ADVANCE(3+INT_STREAM(2));
INT_END()
INT_BEGIN(I_TABLEJUMP_FIELD)
{
#line 2367 "gpc_spec.in"
uint32_t offset=INT_STREAM(0);
uint32_t num=INT_STREAM(1);
uint32_t value=*((uint32_t*)(INT_STACK_PTR(0) + offset));
if (value==UINT32_MAX) {
/* do nothing */
} else if (value>=num) {
tsf_set_error(TSF_E_PARSE_ERROR,
"TABLEJUMP bounds error: got " fui32 " but had an "
"upper bound of " fui32,value,num);
INT_FAILURE();
} else {
INT_STREAM_GOTO(2+value);
}
#line 3221 "gpc_interpreter.gen"
}
INT_ADVANCE(2+INT_STREAM(1));
INT_END()
#undef INT_STREAM_GOTO
#define INT_STREAM_GOTO(arg) do {\
INT_POP();\
INT_GOTO(INT_STREAM(arg));\
} while (0)
INT_BEGIN(I_TABLEJUMP_LOCAL)
{
#line 2384 "gpc_spec.in"
uint32_t num=INT_STREAM(0);
uintptr_t value=INT_STACK(0);
if (value==UINT32_MAX) {
/* do nothing */
} else if (value>=num) {
tsf_set_error(TSF_E_PARSE_ERROR,
"TABLEJUMP bounds error: got " fui32 " but had an "
"upper bound of " fui32,(uint32_t)INT_STACK(0),num);
INT_FAILURE();
} else {
INT_STREAM_GOTO(1+value);
}
#line 3245 "gpc_interpreter.gen"
}
INT_POP();
INT_ADVANCE(1+INT_STREAM(0));
INT_END()
#undef INT_STREAM_GOTO
#define INT_STREAM_GOTO(arg) INT_GOTO(INT_STREAM(arg))
INT_BEGIN(I_JUMP)
{
#line 2400 "gpc_spec.in"
INT_STREAM_GOTO(0);
#line 3256 "gpc_interpreter.gen"
}
INT_ADVANCE(1);
INT_END()
INT_BEGIN(I_RETURN_ONE)
{
#line 2405 "gpc_spec.in"
INT_CLEANUP();
return 1;
#line 3265 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_RETURN_TOP_WITH_REGION)
{
#line 2411 "gpc_spec.in"
uintptr_t result=INT_STACK(0);
INT_CLEANUP();
return result;
#line 3275 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_RETURN_ONE_INIT_BUF_WITH_EMPTY_TYPES)
{
#line 2418 "gpc_spec.in"
tsf_buffer_t *buffer = (tsf_buffer_t*)INT_STACK_PTR(1);
buffer->types = tsf_type_in_map_get_empty_singleton();
buffer->data = buf;
buffer->size = size;
buffer->keep = keep;
keep = tsf_false;
INT_CLEANUP();
return 1;
#line 3290 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
INT_BEGIN(I_RETURN_ONE_INIT_BUF_WITH_TYPES_FROM_OUT_MAP)
{
#line 2430 "gpc_spec.in"
tsf_buffer_t *buffer = (tsf_buffer_t*)INT_STACK_PTR(1);
if (region == NULL) {
buffer->types = tsf_type_in_map_from_type_out_map(out_map);
} else {
buffer->types = tsf_type_in_map_from_type_out_map_in(out_map, region);
}
if (buffer->types == NULL) {
INT_CLEANUP();
}
buffer->data = buf;
buffer->size = size;
buffer->keep = keep;
keep = tsf_false;
INT_CLEANUP();
return 1;
#line 3312 "gpc_interpreter.gen"
}
INT_ADVANCE(0);
INT_END()
#undef INT_STREAM_GOTO