| /* generated by gpc_gen.rb */ |
| int32_t gpc_instruction_stack_effects(gpc_cell_t inst) { |
| switch (inst) { |
| case GPC_I_NOP: return 0; |
| case GPC_I_LABEL: return 0; |
| case GPC_I_COPY_HTONC_INCDST: return 0; |
| case GPC_I_COPY_HTONS_INCDST: return 0; |
| case GPC_I_COPY_HTONL_INCDST: return 0; |
| case GPC_I_COPY_HTONLL_INCDST: return 0; |
| case GPC_I_COPY_HTONF_INCDST: return 0; |
| case GPC_I_COPY_HTOND_INCDST: return 0; |
| case GPC_I_COPY_HTONCHOICE_TO_UI8_INCDST: return 0; |
| case GPC_I_COPY_NTOHC_TO_BIT_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_S_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_S_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_L_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_L_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_LL_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_LL_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_F_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_F_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_D_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHC_TO_D_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_BIT_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_C_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_L_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_L_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_LL_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_LL_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_F_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_F_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_D_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHS_TO_D_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_BIT_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_C_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_S_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_LL_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_LL_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_F_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_F_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_D_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHL_TO_D_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_BIT_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_C_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_S_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_L_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_F_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_F_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_D_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHLL_TO_D_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_BIT_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_C_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_C_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_S_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_S_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_L_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_L_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_LL_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_LL_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_INCSRC: return 0; |
| case GPC_I_COPY_NTOHF_TO_D_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_BIT_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_C_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_C_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_S_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_S_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_L_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_L_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_LL_Z_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_LL_E_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_TO_F_INCSRC: return 0; |
| case GPC_I_COPY_NTOHD_INCSRC: return 0; |
| case GPC_I_COPY_BIT: return 0; |
| case GPC_I_COPY_BIT_TO_S: return 0; |
| case GPC_I_COPY_BIT_TO_L: return 0; |
| case GPC_I_COPY_BIT_TO_LL: return 0; |
| case GPC_I_COPY_BIT_TO_F: return 0; |
| case GPC_I_COPY_BIT_TO_D: return 0; |
| case GPC_I_COPY_C: return 0; |
| case GPC_I_COPY_C_TO_S_Z: return 0; |
| case GPC_I_COPY_C_TO_S_E: return 0; |
| case GPC_I_COPY_C_TO_L_Z: return 0; |
| case GPC_I_COPY_C_TO_L_E: return 0; |
| case GPC_I_COPY_C_TO_LL_Z: return 0; |
| case GPC_I_COPY_C_TO_LL_E: return 0; |
| case GPC_I_COPY_C_TO_F_Z: return 0; |
| case GPC_I_COPY_C_TO_F_E: return 0; |
| case GPC_I_COPY_C_TO_D_Z: return 0; |
| case GPC_I_COPY_C_TO_D_E: return 0; |
| case GPC_I_COPY_S_TO_BIT: return 0; |
| case GPC_I_COPY_S_TO_C: return 0; |
| case GPC_I_COPY_S: return 0; |
| case GPC_I_COPY_S_TO_L_Z: return 0; |
| case GPC_I_COPY_S_TO_L_E: return 0; |
| case GPC_I_COPY_S_TO_LL_Z: return 0; |
| case GPC_I_COPY_S_TO_LL_E: return 0; |
| case GPC_I_COPY_S_TO_F_Z: return 0; |
| case GPC_I_COPY_S_TO_F_E: return 0; |
| case GPC_I_COPY_S_TO_D_Z: return 0; |
| case GPC_I_COPY_S_TO_D_E: return 0; |
| case GPC_I_COPY_L_TO_BIT: return 0; |
| case GPC_I_COPY_L_TO_C: return 0; |
| case GPC_I_COPY_L_TO_S: return 0; |
| case GPC_I_COPY_L: return 0; |
| case GPC_I_COPY_L_TO_LL_Z: return 0; |
| case GPC_I_COPY_L_TO_LL_E: return 0; |
| case GPC_I_COPY_L_TO_F_Z: return 0; |
| case GPC_I_COPY_L_TO_F_E: return 0; |
| case GPC_I_COPY_L_TO_D_Z: return 0; |
| case GPC_I_COPY_L_TO_D_E: return 0; |
| case GPC_I_COPY_LL_TO_BIT: return 0; |
| case GPC_I_COPY_LL_TO_C: return 0; |
| case GPC_I_COPY_LL_TO_S: return 0; |
| case GPC_I_COPY_LL_TO_L: return 0; |
| case GPC_I_COPY_LL: return 0; |
| case GPC_I_COPY_LL_TO_F_Z: return 0; |
| case GPC_I_COPY_LL_TO_F_E: return 0; |
| case GPC_I_COPY_LL_TO_D_Z: return 0; |
| case GPC_I_COPY_LL_TO_D_E: return 0; |
| case GPC_I_COPY_F_TO_BIT: return 0; |
| case GPC_I_COPY_F_TO_C_Z: return 0; |
| case GPC_I_COPY_F_TO_C_E: return 0; |
| case GPC_I_COPY_F_TO_S_Z: return 0; |
| case GPC_I_COPY_F_TO_S_E: return 0; |
| case GPC_I_COPY_F_TO_L_Z: return 0; |
| case GPC_I_COPY_F_TO_L_E: return 0; |
| case GPC_I_COPY_F_TO_LL_Z: return 0; |
| case GPC_I_COPY_F_TO_LL_E: return 0; |
| case GPC_I_COPY_F: return 0; |
| case GPC_I_COPY_F_TO_D: return 0; |
| case GPC_I_COPY_D_TO_BIT: return 0; |
| case GPC_I_COPY_D_TO_C_Z: return 0; |
| case GPC_I_COPY_D_TO_C_E: return 0; |
| case GPC_I_COPY_D_TO_S_Z: return 0; |
| case GPC_I_COPY_D_TO_S_E: return 0; |
| case GPC_I_COPY_D_TO_L_Z: return 0; |
| case GPC_I_COPY_D_TO_L_E: return 0; |
| case GPC_I_COPY_D_TO_LL_Z: return 0; |
| case GPC_I_COPY_D_TO_LL_E: return 0; |
| case GPC_I_COPY_D_TO_F: return 0; |
| case GPC_I_COPY_D: return 0; |
| case GPC_I_SET_C: return 0; |
| case GPC_I_SET_S: return 0; |
| case GPC_I_SET_L: return 0; |
| case GPC_I_SET_2ND_C: return 0; |
| case GPC_I_SET_2ND_S: return 0; |
| case GPC_I_SET_2ND_L: return 0; |
| case GPC_I_BITVECTOR_READ: return 0; |
| case GPC_I_BITVECTOR_READ_TO_C: return 0; |
| case GPC_I_BITVECTOR_READ_TO_S: return 0; |
| case GPC_I_BITVECTOR_READ_TO_L: return 0; |
| case GPC_I_BITVECTOR_READ_TO_LL: return 0; |
| case GPC_I_BITVECTOR_READ_TO_F: return 0; |
| case GPC_I_BITVECTOR_READ_TO_D: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_C: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_S: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_L: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_LL: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_F: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_D: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_TSF_INTEGER_ARRAY: return 0; |
| case GPC_I_BITVECTOR_READ_FROM_TSF_LONG_ARRAY: return 0; |
| case GPC_I_BITVECTOR_WRITE: return 0; |
| case GPC_I_BYTE_ARRAY_READ: return 0; |
| case GPC_I_BYTE_ARRAY_WRITE: return 0; |
| case GPC_I_TSF_INTEGER_SKIP: return 0; |
| case GPC_I_TSF_UNSIGNED_SKIP: return 0; |
| case GPC_I_TSF_LONG_SKIP: return 0; |
| case GPC_I_TSF_INTEGER_READ_TO_BIT: return 0; |
| case GPC_I_TSF_INTEGER_READ_TO_C: return 0; |
| case GPC_I_TSF_INTEGER_READ_TO_S: return 0; |
| case GPC_I_TSF_INTEGER_READ: return 0; |
| case GPC_I_TSF_INTEGER_READ_TO_LL: return 0; |
| case GPC_I_TSF_INTEGER_READ_TO_F: return 0; |
| case GPC_I_TSF_INTEGER_READ_TO_D: return 0; |
| case GPC_I_TSF_UNSIGNED_READ_SUB1: return 1; |
| case GPC_I_TSF_LONG_READ_TO_BIT: return 0; |
| case GPC_I_TSF_LONG_READ_TO_C: return 0; |
| case GPC_I_TSF_LONG_READ_TO_S: return 0; |
| case GPC_I_TSF_LONG_READ_TO_L: return 0; |
| case GPC_I_TSF_LONG_READ: return 0; |
| case GPC_I_TSF_LONG_READ_TO_F: return 0; |
| case GPC_I_TSF_LONG_READ_TO_D: return 0; |
| case GPC_I_TSF_INTEGER_SIZE: return 0; |
| case GPC_I_TSF_UNSIGNED_PLUS1_SIZE: return 0; |
| case GPC_I_TSF_LONG_SIZE: return 0; |
| case GPC_I_TSF_INTEGER_WRITE: return 0; |
| case GPC_I_TSF_UNSIGNED_PLUS1_WRITE: return 0; |
| case GPC_I_TSF_LONG_WRITE: return 0; |
| case GPC_I_STRING_SETEMPTY: return 0; |
| case GPC_I_STRING_READ: return 0; |
| case GPC_I_STRING_SKIP: return 0; |
| case GPC_I_STRING_SIZE: return 0; |
| case GPC_I_STRING_WRITE: return 0; |
| case GPC_I_STRING_COPY: return 0; |
| case GPC_I_ANY_SETEMPTY: return 0; |
| case GPC_I_ANY_READ: return 0; |
| case GPC_I_ANY_SKIP: return 0; |
| case GPC_I_ANY_SIZE: return 0; |
| case GPC_I_ANY_WRITE: return 0; |
| case GPC_I_ANY_COPY: return 0; |
| case GPC_I_MEMCPY: return 0; |
| case GPC_I_COPY_ARRAY: return 0; |
| case GPC_I_COPY_BITVECTOR: return 0; |
| case GPC_I_COPY_BITVECTOR_FROM_C: return 0; |
| case GPC_I_COPY_BITVECTOR_FROM_S: return 0; |
| case GPC_I_COPY_BITVECTOR_FROM_L: return 0; |
| case GPC_I_COPY_BITVECTOR_FROM_LL: return 0; |
| case GPC_I_COPY_BITVECTOR_FROM_F: return 0; |
| case GPC_I_COPY_BITVECTOR_FROM_D: return 0; |
| case GPC_I_COPY_BITVECTOR_TO_C: return 0; |
| case GPC_I_COPY_BITVECTOR_TO_S: return 0; |
| case GPC_I_COPY_BITVECTOR_TO_L: return 0; |
| case GPC_I_COPY_BITVECTOR_TO_LL: return 0; |
| case GPC_I_COPY_BITVECTOR_TO_F: return 0; |
| case GPC_I_COPY_BITVECTOR_TO_D: return 0; |
| case GPC_I_READC_TO_CHOICE: return 1; |
| case GPC_I_READL: return 1; |
| case GPC_I_ARRAY_LEN_WRITE_FIELD: return 0; |
| case GPC_I_ARRAY_LEN_READ_FIELD: return 0; |
| case GPC_I_ARRAY_LEN_READ_LOCAL: return 1; |
| case GPC_I_ARRAY_LEN_SKIP: return 0; |
| case GPC_I_BIT_MASK_WRITE: return 0; |
| case GPC_I_BIT_MASK_READ: return 0; |
| case GPC_I_BIT_MASK_READ_TO_S: return 0; |
| case GPC_I_BIT_MASK_READ_TO_L: return 0; |
| case GPC_I_BIT_MASK_READ_TO_LL: return 0; |
| case GPC_I_BIT_MASK_READ_TO_F: return 0; |
| case GPC_I_BIT_MASK_READ_TO_D: return 0; |
| case GPC_I_BIT_WRITE: return 0; |
| case GPC_I_BIT_READ: return 0; |
| case GPC_I_BIT_READ_TO_S: return 0; |
| case GPC_I_BIT_READ_TO_L: return 0; |
| case GPC_I_BIT_READ_TO_LL: return 0; |
| case GPC_I_BIT_READ_TO_F: return 0; |
| case GPC_I_BIT_READ_TO_D: return 0; |
| case GPC_I_SKIP: return 0; |
| case GPC_I_ARRAY_BC_AND_SKIP_FIELD: return 0; |
| case GPC_I_ARRAY_SKIP: return 0; |
| case GPC_I_BITVECTOR_BC_AND_SKIP_FIELD: return 0; |
| case GPC_I_BITVECTOR_SKIP: return 0; |
| case GPC_I_INC_SIZE: return 0; |
| case GPC_I_INC_SIZE_ARRAY_LEN: return 0; |
| case GPC_I_INC_SIZE_ARRAY: return 0; |
| case GPC_I_INC_SIZE_BITVECTOR: return 0; |
| case GPC_I_BC: return 0; |
| case GPC_I_ARRAY_BC_FIELD: return 0; |
| case GPC_I_ARRAY_BC_LOCAL: return 0; |
| case GPC_I_BITVECTOR_BC_FIELD: return 0; |
| case GPC_I_BITVECTOR_BC_LOCAL: return 0; |
| case GPC_I_MALLOC_BUF: return 0; |
| case GPC_I_POP_BUF: return -1; |
| case GPC_I_DESTROY_BUFFER: return 1; |
| case GPC_I_MAKE_OUT_MAP: return 0; |
| case GPC_I_ALLOC_ROOT_MAYBE_2ND: return 0; |
| case GPC_I_ALLOC: return 1; |
| case GPC_I_ALLOC_ARRAY: return 1; |
| case GPC_I_ALLOC_ARRAY_2ND: return 1; |
| case GPC_I_CALL: return 0; |
| case GPC_I_ADD_CBACK: return 0; |
| case GPC_I_FREE_IMMEDIATE: return 0; |
| case GPC_I_FREE: return 0; |
| case GPC_I_STORE_PTR: return 0; |
| case GPC_I_STORE_PTR_2ND: return 0; |
| case GPC_I_STORE_VAL: return 0; |
| case GPC_I_PUSH_PTR: return 1; |
| case GPC_I_PUSH_PTR_2ND: return 1; |
| case GPC_I_PUSH_PTR_3RD: return 1; |
| case GPC_I_PUSH_VAL: return 1; |
| case GPC_I_DUP_PTR_2ND: return 1; |
| case GPC_I_POP: return -1; |
| case GPC_I_TWO_POP: return -2; |
| case GPC_I_THREE_POP: return -3; |
| case GPC_I_REPUSH_MULADD_PTR: return 1; |
| case GPC_I_REPUSH_MULADD_PTR_2ND: return 1; |
| case GPC_I_COMPFAILJUMP: return 0; |
| case GPC_I_COMPFAILJUMP_2ND: return 0; |
| case GPC_I_ADDCOMPJUMP: return 0; |
| case GPC_I_TWO_ADDCOMPJUMP: return 0; |
| case GPC_I_ZEROJUMP: return 0; |
| case GPC_I_DECCOMPJUMP: return 0; |
| case GPC_I_CHECKCHOICE: return 0; |
| case GPC_I_TABLESET_LOCAL_TO_FIELD: return -1; |
| case GPC_I_TABLESET_FIELD_TO_FIELD: return 0; |
| case GPC_I_TABLEJUMP_FIELD: return 0; |
| case GPC_I_TABLEJUMP_LOCAL: return -1; |
| case GPC_I_JUMP: return 0; |
| case GPC_I_RETURN_ONE: return 0; |
| case GPC_I_RETURN_TOP_WITH_REGION: return 0; |
| case GPC_I_RETURN_ONE_INIT_BUF_WITH_EMPTY_TYPES: return 0; |
| case GPC_I_RETURN_ONE_INIT_BUF_WITH_TYPES_FROM_OUT_MAP: return 0; |
| default: break; |
| } |
| tsf_abort("Invalid instruction"); |
| } |