Various opcode's refinements: obj[0,1, 2, n]->obj_decl, array[0, 1, 2, n]->array_decl, func_expr[0, 1, n]->removed, varg[1_end, 2_end, 3_end, 3]->varg_list.

This commit is contained in:
e.gavrin
2014-08-21 15:46:17 +04:00
parent a96705701d
commit 5b2b04f5f9
5 changed files with 73 additions and 184 deletions
+6 -18
View File
@@ -415,33 +415,21 @@ pp_opcode (opcode_counter_t oc, OPCODE opcode, bool is_rewrite)
CASE_VARG_0_NAME_LHS (call_0, lhs, "=", "", name_lit_idx, "(", ")")
CASE_VARG_1_NAME_LHS (call_1, lhs, "=", "", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_N_NAME_LHS (call_n, lhs, "=", "", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_0_NAME_LHS (construct_0, lhs, "=", "new", name_lit_idx, "(", ")")
CASE_VARG_1_NAME_LHS (construct_1, lhs, "=", "new", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_N_NAME_LHS (construct_n, lhs, "=", "new", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_N_NAME_LHS (construct_decl, lhs, "=", "new", name_lit_idx, "(", arg_list, ")")
CASE_VARG_0_NAME (func_decl_0, "function", name_lit_idx, "(", ")")
CASE_VARG_1_NAME (func_decl_1, "function", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_2_NAME (func_decl_2, "function", name_lit_idx, "(", arg1_lit_idx, arg2_lit_idx, ")")
CASE_VARG_N_NAME (func_decl_n, "function", name_lit_idx, "(", arg1_lit_idx, arg2_lit_idx, ")")
CASE_VARG_0_NAME_LHS (func_expr_0, lhs, "=", "function", name_lit_idx, "(", ")")
CASE_VARG_1_NAME_LHS (func_expr_1, lhs, "=", "function", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_N_NAME_LHS (func_expr_n, lhs, "=", "function", name_lit_idx, "(", arg1_lit_idx, ")")
CASE_VARG_1_END (varg_1_end, arg1_lit_idx)
CASE_VARG_2_END (varg_2_end, arg1_lit_idx, arg2_lit_idx)
CASE_VARG_3_END (varg_3_end, arg1_lit_idx, arg2_lit_idx, arg3_lit_idx)
CASE_VARG_3 (varg_3, arg1_lit_idx, arg2_lit_idx, arg3_lit_idx);
CASE_VARG_3 (varg_list, arg1_lit_idx, arg2_lit_idx, arg3_lit_idx);
CASE_EXIT (exitval, "exit", status_code)
CASE_SINGLE_ADDRESS (retval, "return", ret_value)
CASE_ZERO_ADDRESS (ret, "return")
CASE_ZERO_ADDRESS (end_with, "")
CASE_ZERO_ADDRESS (nop, "")
CASE_VARG_0_LHS (array_0, lhs, "=", "[", "]")
CASE_VARG_1_LHS (array_1, lhs, "=", "[", elem1, "]")
CASE_VARG_2_LHS (array_2, lhs, "=", "[", elem1, elem2, "]")
CASE_VARG_N_LHS (array_n, lhs, "=", "[", elem1, elem2, "]")
CASE_VARG_0_LHS (obj_0, lhs, "=", "{", "}")
CASE_VARG_1_LHS (obj_1, lhs, "=", "{", arg1, "}")
CASE_VARG_2_LHS (obj_2, lhs, "=", "{", arg1, arg2, "}")
CASE_VARG_N_LHS (obj_n, lhs, "=", "{", arg1, arg2, "}")
TODO (Refine to match new opcodes)
CASE_VARG_1_LHS (array_decl, lhs, "=", "[", list, "]")
TODO (Refine to match new opcodes)
CASE_VARG_0_LHS (obj_decl, lhs, "=", "{", "}")
CASE_TRIPLE_ADDRESS (prop, lhs, "=", name, ":", value)
CASE_VARG_1_NAME_LHS (prop_getter, lhs, "=", "", obj, "[", prop, "]")
CASE_VARG_0_NAME_LHS (prop_get_decl, lhs, "=", "get", prop, "[", "]")