mirror of
https://github.com/darlinghq/darling-JavaScriptCore.git
synced 2025-04-12 03:36:54 +00:00
1044 lines
42 KiB
C
1044 lines
42 KiB
C
// SHA1Hash: da39a3ee5e6b4b0d3255bfef95601890afd80709
|
|
/*
|
|
* Copyright (C) 2020 Apple Inc. All rights reserved.
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without
|
|
* modification, are permitted provided that the following conditions
|
|
* are met:
|
|
*
|
|
* 1. Redistributions of source code must retain the above copyright
|
|
* notice, this list of conditions and the following disclaimer.
|
|
* 2. Redistributions in binary form must reproduce the above copyright
|
|
* notice, this list of conditions and the following disclaimer in the
|
|
* documentation and/or other materials provided with the distribution.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
|
|
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
* DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
|
|
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
* Autogenerated from JavaScriptCore/bytecode/BytecodeList.rb, do not modify.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#define FOR_EACH_BYTECODE_ID(macro) \
|
|
macro(op_new_array, 6) \
|
|
macro(op_tail_call, 6) \
|
|
macro(op_call_eval, 6) \
|
|
macro(op_call_varargs, 8) \
|
|
macro(op_tail_call_varargs, 8) \
|
|
macro(op_tail_call_forward_arguments, 8) \
|
|
macro(op_construct, 6) \
|
|
macro(op_construct_varargs, 8) \
|
|
macro(op_new_array_with_size, 4) \
|
|
macro(op_new_array_buffer, 5) \
|
|
macro(op_jneq_ptr, 5) \
|
|
macro(op_resolve_scope, 7) \
|
|
macro(op_get_from_scope, 8) \
|
|
macro(op_put_to_scope, 8) \
|
|
macro(op_get_from_arguments, 5) \
|
|
macro(op_create_this, 5) \
|
|
macro(op_to_this, 3) \
|
|
macro(op_in_by_val, 5) \
|
|
macro(op_get_argument, 4) \
|
|
macro(op_get_by_id, 5) \
|
|
macro(op_catch, 4) \
|
|
macro(op_get_by_id_with_this, 6) \
|
|
macro(op_get_by_val_with_this, 6) \
|
|
macro(op_call, 6) \
|
|
macro(op_try_get_by_id, 5) \
|
|
macro(op_profile_type, 7) \
|
|
macro(op_profile_control_flow, 3) \
|
|
macro(op_put_by_id, 6) \
|
|
macro(op_has_indexed_property, 5) \
|
|
macro(op_new_object, 4) \
|
|
macro(op_add, 6) \
|
|
macro(op_get_direct_pname, 7) \
|
|
macro(op_get_by_val, 5) \
|
|
macro(op_put_by_val, 5) \
|
|
macro(op_mul, 6) \
|
|
macro(op_put_by_val_direct, 5) \
|
|
macro(op_div, 6) \
|
|
macro(op_sub, 6) \
|
|
macro(op_bitand, 5) \
|
|
macro(op_bitor, 5) \
|
|
macro(op_bitxor, 5) \
|
|
macro(op_to_object, 5) \
|
|
macro(op_to_number, 4) \
|
|
macro(op_negate, 5) \
|
|
macro(op_lshift, 5) \
|
|
macro(op_bitnot, 4) \
|
|
macro(op_get_by_id_direct, 5) \
|
|
macro(op_is_cell_with_type, 4) \
|
|
macro(op_in_by_id, 4) \
|
|
macro(op_put_by_id_with_this, 5) \
|
|
macro(op_del_by_id, 4) \
|
|
macro(op_put_by_val_with_this, 5) \
|
|
macro(op_del_by_val, 4) \
|
|
macro(op_put_getter_by_id, 5) \
|
|
macro(op_put_setter_by_id, 5) \
|
|
macro(op_put_getter_setter_by_id, 6) \
|
|
macro(op_put_getter_by_val, 5) \
|
|
macro(op_put_setter_by_val, 5) \
|
|
macro(op_define_data_property, 5) \
|
|
macro(op_define_accessor_property, 6) \
|
|
macro(op_jmp, 2) \
|
|
macro(op_jtrue, 3) \
|
|
macro(op_jfalse, 3) \
|
|
macro(op_jeq_null, 3) \
|
|
macro(op_jneq_null, 3) \
|
|
macro(op_jeq, 4) \
|
|
macro(op_jstricteq, 4) \
|
|
macro(op_jneq, 4) \
|
|
macro(op_jnstricteq, 4) \
|
|
macro(op_jless, 4) \
|
|
macro(op_jlesseq, 4) \
|
|
macro(op_jgreater, 4) \
|
|
macro(op_jgreatereq, 4) \
|
|
macro(op_jnless, 4) \
|
|
macro(op_jnlesseq, 4) \
|
|
macro(op_wide16, 1) \
|
|
macro(op_jngreatereq, 4) \
|
|
macro(op_jbelow, 4) \
|
|
macro(op_jbeloweq, 4) \
|
|
macro(op_loop_hint, 1) \
|
|
macro(op_switch_imm, 4) \
|
|
macro(op_switch_char, 4) \
|
|
macro(op_switch_string, 4) \
|
|
macro(op_new_func, 4) \
|
|
macro(op_new_func_exp, 4) \
|
|
macro(op_new_generator_func, 4) \
|
|
macro(op_new_generator_func_exp, 4) \
|
|
macro(op_new_async_func, 4) \
|
|
macro(op_new_async_func_exp, 4) \
|
|
macro(op_new_async_generator_func, 4) \
|
|
macro(op_new_async_generator_func_exp, 4) \
|
|
macro(op_set_function_name, 3) \
|
|
macro(op_ret, 2) \
|
|
macro(op_strcat, 4) \
|
|
macro(op_to_primitive, 3) \
|
|
macro(op_put_to_arguments, 4) \
|
|
macro(op_push_with_scope, 4) \
|
|
macro(op_create_lexical_environment, 5) \
|
|
macro(op_create_generator_frame_environment, 5) \
|
|
macro(op_get_parent_scope, 3) \
|
|
macro(op_throw, 2) \
|
|
macro(op_throw_static_error, 3) \
|
|
macro(op_debug, 3) \
|
|
macro(op_end, 2) \
|
|
macro(op_get_enumerable_length, 3) \
|
|
macro(op_has_structure_property, 5) \
|
|
macro(op_has_generic_property, 4) \
|
|
macro(op_get_property_enumerator, 3) \
|
|
macro(op_enumerator_structure_pname, 4) \
|
|
macro(op_enumerator_generic_pname, 4) \
|
|
macro(op_to_index_string, 3) \
|
|
macro(op_unreachable, 1) \
|
|
macro(op_create_rest, 4) \
|
|
macro(op_get_rest_length, 3) \
|
|
macro(op_yield, 4) \
|
|
macro(op_check_traps, 1) \
|
|
macro(op_log_shadow_chicken_prologue, 2) \
|
|
macro(op_log_shadow_chicken_tail, 3) \
|
|
macro(op_resolve_scope_for_hoisting_func_decl_in_eval, 4) \
|
|
macro(op_nop, 1) \
|
|
macro(op_super_sampler_begin, 1) \
|
|
macro(op_super_sampler_end, 1) \
|
|
macro(op_jngreater, 4) \
|
|
macro(op_wide32, 1) \
|
|
macro(op_enter, 1) \
|
|
macro(op_get_scope, 2) \
|
|
macro(op_create_direct_arguments, 2) \
|
|
macro(op_create_scoped_arguments, 3) \
|
|
macro(op_create_cloned_arguments, 2) \
|
|
macro(op_argument_count, 2) \
|
|
macro(op_check_tdz, 2) \
|
|
macro(op_new_array_with_spread, 5) \
|
|
macro(op_spread, 3) \
|
|
macro(op_new_regexp, 3) \
|
|
macro(op_mov, 3) \
|
|
macro(op_eq, 4) \
|
|
macro(op_neq, 4) \
|
|
macro(op_stricteq, 4) \
|
|
macro(op_nstricteq, 4) \
|
|
macro(op_less, 4) \
|
|
macro(op_lesseq, 4) \
|
|
macro(op_greater, 4) \
|
|
macro(op_greatereq, 4) \
|
|
macro(op_below, 4) \
|
|
macro(op_beloweq, 4) \
|
|
macro(op_mod, 4) \
|
|
macro(op_pow, 4) \
|
|
macro(op_rshift, 4) \
|
|
macro(op_urshift, 4) \
|
|
macro(op_eq_null, 3) \
|
|
macro(op_neq_null, 3) \
|
|
macro(op_to_string, 3) \
|
|
macro(op_unsigned, 3) \
|
|
macro(op_is_empty, 3) \
|
|
macro(op_is_undefined, 3) \
|
|
macro(op_is_undefined_or_null, 3) \
|
|
macro(op_is_boolean, 3) \
|
|
macro(op_is_number, 3) \
|
|
macro(op_is_object, 3) \
|
|
macro(op_is_object_or_null, 3) \
|
|
macro(op_is_function, 3) \
|
|
macro(op_inc, 2) \
|
|
macro(op_dec, 2) \
|
|
macro(op_not, 3) \
|
|
macro(op_identity_with_profile, 4) \
|
|
macro(op_overrides_has_instance, 4) \
|
|
macro(op_instanceof, 4) \
|
|
macro(op_instanceof_custom, 5) \
|
|
macro(op_typeof, 3) \
|
|
|
|
#define NUMBER_OF_BYTECODE_IDS 169
|
|
#define FOR_EACH_BYTECODE_METADATA_SIZE(macro) \
|
|
macro(sizeof(OpNewArray::Metadata))\
|
|
macro(sizeof(OpTailCall::Metadata))\
|
|
macro(sizeof(OpCallEval::Metadata))\
|
|
macro(sizeof(OpCallVarargs::Metadata))\
|
|
macro(sizeof(OpTailCallVarargs::Metadata))\
|
|
macro(sizeof(OpTailCallForwardArguments::Metadata))\
|
|
macro(sizeof(OpConstruct::Metadata))\
|
|
macro(sizeof(OpConstructVarargs::Metadata))\
|
|
macro(sizeof(OpNewArrayWithSize::Metadata))\
|
|
macro(sizeof(OpNewArrayBuffer::Metadata))\
|
|
macro(sizeof(OpJneqPtr::Metadata))\
|
|
macro(sizeof(OpResolveScope::Metadata))\
|
|
macro(sizeof(OpGetFromScope::Metadata))\
|
|
macro(sizeof(OpPutToScope::Metadata))\
|
|
macro(sizeof(OpGetFromArguments::Metadata))\
|
|
macro(sizeof(OpCreateThis::Metadata))\
|
|
macro(sizeof(OpToThis::Metadata))\
|
|
macro(sizeof(OpInByVal::Metadata))\
|
|
macro(sizeof(OpGetArgument::Metadata))\
|
|
macro(sizeof(OpGetById::Metadata))\
|
|
macro(sizeof(OpCatch::Metadata))\
|
|
macro(sizeof(OpGetByIdWithThis::Metadata))\
|
|
macro(sizeof(OpGetByValWithThis::Metadata))\
|
|
macro(sizeof(OpCall::Metadata))\
|
|
macro(sizeof(OpTryGetById::Metadata))\
|
|
macro(sizeof(OpProfileType::Metadata))\
|
|
macro(sizeof(OpProfileControlFlow::Metadata))\
|
|
macro(sizeof(OpPutById::Metadata))\
|
|
macro(sizeof(OpHasIndexedProperty::Metadata))\
|
|
macro(sizeof(OpNewObject::Metadata))\
|
|
macro(sizeof(OpAdd::Metadata))\
|
|
macro(sizeof(OpGetDirectPname::Metadata))\
|
|
macro(sizeof(OpGetByVal::Metadata))\
|
|
macro(sizeof(OpPutByVal::Metadata))\
|
|
macro(sizeof(OpMul::Metadata))\
|
|
macro(sizeof(OpPutByValDirect::Metadata))\
|
|
macro(sizeof(OpDiv::Metadata))\
|
|
macro(sizeof(OpSub::Metadata))\
|
|
macro(sizeof(OpBitand::Metadata))\
|
|
macro(sizeof(OpBitor::Metadata))\
|
|
macro(sizeof(OpBitxor::Metadata))\
|
|
macro(sizeof(OpToObject::Metadata))\
|
|
macro(sizeof(OpToNumber::Metadata))\
|
|
macro(sizeof(OpNegate::Metadata))\
|
|
macro(sizeof(OpLshift::Metadata))\
|
|
macro(sizeof(OpBitnot::Metadata))\
|
|
macro(sizeof(OpGetByIdDirect::Metadata))\
|
|
|
|
#define NUMBER_OF_BYTECODE_WITH_METADATA 47
|
|
|
|
#define FOR_EACH_BYTECODE_METADATA_ALIGNMENT(macro) \
|
|
macro(alignof(OpNewArray::Metadata))\
|
|
macro(alignof(OpTailCall::Metadata))\
|
|
macro(alignof(OpCallEval::Metadata))\
|
|
macro(alignof(OpCallVarargs::Metadata))\
|
|
macro(alignof(OpTailCallVarargs::Metadata))\
|
|
macro(alignof(OpTailCallForwardArguments::Metadata))\
|
|
macro(alignof(OpConstruct::Metadata))\
|
|
macro(alignof(OpConstructVarargs::Metadata))\
|
|
macro(alignof(OpNewArrayWithSize::Metadata))\
|
|
macro(alignof(OpNewArrayBuffer::Metadata))\
|
|
macro(alignof(OpJneqPtr::Metadata))\
|
|
macro(alignof(OpResolveScope::Metadata))\
|
|
macro(alignof(OpGetFromScope::Metadata))\
|
|
macro(alignof(OpPutToScope::Metadata))\
|
|
macro(alignof(OpGetFromArguments::Metadata))\
|
|
macro(alignof(OpCreateThis::Metadata))\
|
|
macro(alignof(OpToThis::Metadata))\
|
|
macro(alignof(OpInByVal::Metadata))\
|
|
macro(alignof(OpGetArgument::Metadata))\
|
|
macro(alignof(OpGetById::Metadata))\
|
|
macro(alignof(OpCatch::Metadata))\
|
|
macro(alignof(OpGetByIdWithThis::Metadata))\
|
|
macro(alignof(OpGetByValWithThis::Metadata))\
|
|
macro(alignof(OpCall::Metadata))\
|
|
macro(alignof(OpTryGetById::Metadata))\
|
|
macro(alignof(OpProfileType::Metadata))\
|
|
macro(alignof(OpProfileControlFlow::Metadata))\
|
|
macro(alignof(OpPutById::Metadata))\
|
|
macro(alignof(OpHasIndexedProperty::Metadata))\
|
|
macro(alignof(OpNewObject::Metadata))\
|
|
macro(alignof(OpAdd::Metadata))\
|
|
macro(alignof(OpGetDirectPname::Metadata))\
|
|
macro(alignof(OpGetByVal::Metadata))\
|
|
macro(alignof(OpPutByVal::Metadata))\
|
|
macro(alignof(OpMul::Metadata))\
|
|
macro(alignof(OpPutByValDirect::Metadata))\
|
|
macro(alignof(OpDiv::Metadata))\
|
|
macro(alignof(OpSub::Metadata))\
|
|
macro(alignof(OpBitand::Metadata))\
|
|
macro(alignof(OpBitor::Metadata))\
|
|
macro(alignof(OpBitxor::Metadata))\
|
|
macro(alignof(OpToObject::Metadata))\
|
|
macro(alignof(OpToNumber::Metadata))\
|
|
macro(alignof(OpNegate::Metadata))\
|
|
macro(alignof(OpLshift::Metadata))\
|
|
macro(alignof(OpBitnot::Metadata))\
|
|
macro(alignof(OpGetByIdDirect::Metadata))\
|
|
|
|
#define op_new_array_value_string "0"
|
|
#define op_tail_call_value_string "1"
|
|
#define op_call_eval_value_string "2"
|
|
#define op_call_varargs_value_string "3"
|
|
#define op_tail_call_varargs_value_string "4"
|
|
#define op_tail_call_forward_arguments_value_string "5"
|
|
#define op_construct_value_string "6"
|
|
#define op_construct_varargs_value_string "7"
|
|
#define op_new_array_with_size_value_string "8"
|
|
#define op_new_array_buffer_value_string "9"
|
|
#define op_jneq_ptr_value_string "10"
|
|
#define op_resolve_scope_value_string "11"
|
|
#define op_get_from_scope_value_string "12"
|
|
#define op_put_to_scope_value_string "13"
|
|
#define op_get_from_arguments_value_string "14"
|
|
#define op_create_this_value_string "15"
|
|
#define op_to_this_value_string "16"
|
|
#define op_in_by_val_value_string "17"
|
|
#define op_get_argument_value_string "18"
|
|
#define op_get_by_id_value_string "19"
|
|
#define op_catch_value_string "20"
|
|
#define op_get_by_id_with_this_value_string "21"
|
|
#define op_get_by_val_with_this_value_string "22"
|
|
#define op_call_value_string "23"
|
|
#define op_try_get_by_id_value_string "24"
|
|
#define op_profile_type_value_string "25"
|
|
#define op_profile_control_flow_value_string "26"
|
|
#define op_put_by_id_value_string "27"
|
|
#define op_has_indexed_property_value_string "28"
|
|
#define op_new_object_value_string "29"
|
|
#define op_add_value_string "30"
|
|
#define op_get_direct_pname_value_string "31"
|
|
#define op_get_by_val_value_string "32"
|
|
#define op_put_by_val_value_string "33"
|
|
#define op_mul_value_string "34"
|
|
#define op_put_by_val_direct_value_string "35"
|
|
#define op_div_value_string "36"
|
|
#define op_sub_value_string "37"
|
|
#define op_bitand_value_string "38"
|
|
#define op_bitor_value_string "39"
|
|
#define op_bitxor_value_string "40"
|
|
#define op_to_object_value_string "41"
|
|
#define op_to_number_value_string "42"
|
|
#define op_negate_value_string "43"
|
|
#define op_lshift_value_string "44"
|
|
#define op_bitnot_value_string "45"
|
|
#define op_get_by_id_direct_value_string "46"
|
|
#define op_is_cell_with_type_value_string "47"
|
|
#define op_in_by_id_value_string "48"
|
|
#define op_put_by_id_with_this_value_string "49"
|
|
#define op_del_by_id_value_string "50"
|
|
#define op_put_by_val_with_this_value_string "51"
|
|
#define op_del_by_val_value_string "52"
|
|
#define op_put_getter_by_id_value_string "53"
|
|
#define op_put_setter_by_id_value_string "54"
|
|
#define op_put_getter_setter_by_id_value_string "55"
|
|
#define op_put_getter_by_val_value_string "56"
|
|
#define op_put_setter_by_val_value_string "57"
|
|
#define op_define_data_property_value_string "58"
|
|
#define op_define_accessor_property_value_string "59"
|
|
#define op_jmp_value_string "60"
|
|
#define op_jtrue_value_string "61"
|
|
#define op_jfalse_value_string "62"
|
|
#define op_jeq_null_value_string "63"
|
|
#define op_jneq_null_value_string "64"
|
|
#define op_jeq_value_string "65"
|
|
#define op_jstricteq_value_string "66"
|
|
#define op_jneq_value_string "67"
|
|
#define op_jnstricteq_value_string "68"
|
|
#define op_jless_value_string "69"
|
|
#define op_jlesseq_value_string "70"
|
|
#define op_jgreater_value_string "71"
|
|
#define op_jgreatereq_value_string "72"
|
|
#define op_jnless_value_string "73"
|
|
#define op_jnlesseq_value_string "74"
|
|
#define op_wide16_value_string "75"
|
|
#define op_jngreatereq_value_string "76"
|
|
#define op_jbelow_value_string "77"
|
|
#define op_jbeloweq_value_string "78"
|
|
#define op_loop_hint_value_string "79"
|
|
#define op_switch_imm_value_string "80"
|
|
#define op_switch_char_value_string "81"
|
|
#define op_switch_string_value_string "82"
|
|
#define op_new_func_value_string "83"
|
|
#define op_new_func_exp_value_string "84"
|
|
#define op_new_generator_func_value_string "85"
|
|
#define op_new_generator_func_exp_value_string "86"
|
|
#define op_new_async_func_value_string "87"
|
|
#define op_new_async_func_exp_value_string "88"
|
|
#define op_new_async_generator_func_value_string "89"
|
|
#define op_new_async_generator_func_exp_value_string "90"
|
|
#define op_set_function_name_value_string "91"
|
|
#define op_ret_value_string "92"
|
|
#define op_strcat_value_string "93"
|
|
#define op_to_primitive_value_string "94"
|
|
#define op_put_to_arguments_value_string "95"
|
|
#define op_push_with_scope_value_string "96"
|
|
#define op_create_lexical_environment_value_string "97"
|
|
#define op_create_generator_frame_environment_value_string "98"
|
|
#define op_get_parent_scope_value_string "99"
|
|
#define op_throw_value_string "100"
|
|
#define op_throw_static_error_value_string "101"
|
|
#define op_debug_value_string "102"
|
|
#define op_end_value_string "103"
|
|
#define op_get_enumerable_length_value_string "104"
|
|
#define op_has_structure_property_value_string "105"
|
|
#define op_has_generic_property_value_string "106"
|
|
#define op_get_property_enumerator_value_string "107"
|
|
#define op_enumerator_structure_pname_value_string "108"
|
|
#define op_enumerator_generic_pname_value_string "109"
|
|
#define op_to_index_string_value_string "110"
|
|
#define op_unreachable_value_string "111"
|
|
#define op_create_rest_value_string "112"
|
|
#define op_get_rest_length_value_string "113"
|
|
#define op_yield_value_string "114"
|
|
#define op_check_traps_value_string "115"
|
|
#define op_log_shadow_chicken_prologue_value_string "116"
|
|
#define op_log_shadow_chicken_tail_value_string "117"
|
|
#define op_resolve_scope_for_hoisting_func_decl_in_eval_value_string "118"
|
|
#define op_nop_value_string "119"
|
|
#define op_super_sampler_begin_value_string "120"
|
|
#define op_super_sampler_end_value_string "121"
|
|
#define op_jngreater_value_string "122"
|
|
#define op_wide32_value_string "123"
|
|
#define op_enter_value_string "124"
|
|
#define op_get_scope_value_string "125"
|
|
#define op_create_direct_arguments_value_string "126"
|
|
#define op_create_scoped_arguments_value_string "127"
|
|
#define op_create_cloned_arguments_value_string "128"
|
|
#define op_argument_count_value_string "129"
|
|
#define op_check_tdz_value_string "130"
|
|
#define op_new_array_with_spread_value_string "131"
|
|
#define op_spread_value_string "132"
|
|
#define op_new_regexp_value_string "133"
|
|
#define op_mov_value_string "134"
|
|
#define op_eq_value_string "135"
|
|
#define op_neq_value_string "136"
|
|
#define op_stricteq_value_string "137"
|
|
#define op_nstricteq_value_string "138"
|
|
#define op_less_value_string "139"
|
|
#define op_lesseq_value_string "140"
|
|
#define op_greater_value_string "141"
|
|
#define op_greatereq_value_string "142"
|
|
#define op_below_value_string "143"
|
|
#define op_beloweq_value_string "144"
|
|
#define op_mod_value_string "145"
|
|
#define op_pow_value_string "146"
|
|
#define op_rshift_value_string "147"
|
|
#define op_urshift_value_string "148"
|
|
#define op_eq_null_value_string "149"
|
|
#define op_neq_null_value_string "150"
|
|
#define op_to_string_value_string "151"
|
|
#define op_unsigned_value_string "152"
|
|
#define op_is_empty_value_string "153"
|
|
#define op_is_undefined_value_string "154"
|
|
#define op_is_undefined_or_null_value_string "155"
|
|
#define op_is_boolean_value_string "156"
|
|
#define op_is_number_value_string "157"
|
|
#define op_is_object_value_string "158"
|
|
#define op_is_object_or_null_value_string "159"
|
|
#define op_is_function_value_string "160"
|
|
#define op_inc_value_string "161"
|
|
#define op_dec_value_string "162"
|
|
#define op_not_value_string "163"
|
|
#define op_identity_with_profile_value_string "164"
|
|
#define op_overrides_has_instance_value_string "165"
|
|
#define op_instanceof_value_string "166"
|
|
#define op_instanceof_custom_value_string "167"
|
|
#define op_typeof_value_string "168"
|
|
#define op_new_array_wide16_value_string "223"
|
|
#define op_tail_call_wide16_value_string "224"
|
|
#define op_call_eval_wide16_value_string "225"
|
|
#define op_call_varargs_wide16_value_string "226"
|
|
#define op_tail_call_varargs_wide16_value_string "227"
|
|
#define op_tail_call_forward_arguments_wide16_value_string "228"
|
|
#define op_construct_wide16_value_string "229"
|
|
#define op_construct_varargs_wide16_value_string "230"
|
|
#define op_new_array_with_size_wide16_value_string "231"
|
|
#define op_new_array_buffer_wide16_value_string "232"
|
|
#define op_jneq_ptr_wide16_value_string "233"
|
|
#define op_resolve_scope_wide16_value_string "234"
|
|
#define op_get_from_scope_wide16_value_string "235"
|
|
#define op_put_to_scope_wide16_value_string "236"
|
|
#define op_get_from_arguments_wide16_value_string "237"
|
|
#define op_create_this_wide16_value_string "238"
|
|
#define op_to_this_wide16_value_string "239"
|
|
#define op_in_by_val_wide16_value_string "240"
|
|
#define op_get_argument_wide16_value_string "241"
|
|
#define op_get_by_id_wide16_value_string "242"
|
|
#define op_catch_wide16_value_string "243"
|
|
#define op_get_by_id_with_this_wide16_value_string "244"
|
|
#define op_get_by_val_with_this_wide16_value_string "245"
|
|
#define op_call_wide16_value_string "246"
|
|
#define op_try_get_by_id_wide16_value_string "247"
|
|
#define op_profile_type_wide16_value_string "248"
|
|
#define op_profile_control_flow_wide16_value_string "249"
|
|
#define op_put_by_id_wide16_value_string "250"
|
|
#define op_has_indexed_property_wide16_value_string "251"
|
|
#define op_new_object_wide16_value_string "252"
|
|
#define op_add_wide16_value_string "253"
|
|
#define op_get_direct_pname_wide16_value_string "254"
|
|
#define op_get_by_val_wide16_value_string "255"
|
|
#define op_put_by_val_wide16_value_string "256"
|
|
#define op_mul_wide16_value_string "257"
|
|
#define op_put_by_val_direct_wide16_value_string "258"
|
|
#define op_div_wide16_value_string "259"
|
|
#define op_sub_wide16_value_string "260"
|
|
#define op_bitand_wide16_value_string "261"
|
|
#define op_bitor_wide16_value_string "262"
|
|
#define op_bitxor_wide16_value_string "263"
|
|
#define op_to_object_wide16_value_string "264"
|
|
#define op_to_number_wide16_value_string "265"
|
|
#define op_negate_wide16_value_string "266"
|
|
#define op_lshift_wide16_value_string "267"
|
|
#define op_bitnot_wide16_value_string "268"
|
|
#define op_get_by_id_direct_wide16_value_string "269"
|
|
#define op_is_cell_with_type_wide16_value_string "270"
|
|
#define op_in_by_id_wide16_value_string "271"
|
|
#define op_put_by_id_with_this_wide16_value_string "272"
|
|
#define op_del_by_id_wide16_value_string "273"
|
|
#define op_put_by_val_with_this_wide16_value_string "274"
|
|
#define op_del_by_val_wide16_value_string "275"
|
|
#define op_put_getter_by_id_wide16_value_string "276"
|
|
#define op_put_setter_by_id_wide16_value_string "277"
|
|
#define op_put_getter_setter_by_id_wide16_value_string "278"
|
|
#define op_put_getter_by_val_wide16_value_string "279"
|
|
#define op_put_setter_by_val_wide16_value_string "280"
|
|
#define op_define_data_property_wide16_value_string "281"
|
|
#define op_define_accessor_property_wide16_value_string "282"
|
|
#define op_jmp_wide16_value_string "283"
|
|
#define op_jtrue_wide16_value_string "284"
|
|
#define op_jfalse_wide16_value_string "285"
|
|
#define op_jeq_null_wide16_value_string "286"
|
|
#define op_jneq_null_wide16_value_string "287"
|
|
#define op_jeq_wide16_value_string "288"
|
|
#define op_jstricteq_wide16_value_string "289"
|
|
#define op_jneq_wide16_value_string "290"
|
|
#define op_jnstricteq_wide16_value_string "291"
|
|
#define op_jless_wide16_value_string "292"
|
|
#define op_jlesseq_wide16_value_string "293"
|
|
#define op_jgreater_wide16_value_string "294"
|
|
#define op_jgreatereq_wide16_value_string "295"
|
|
#define op_jnless_wide16_value_string "296"
|
|
#define op_jnlesseq_wide16_value_string "297"
|
|
#define op_wide16_wide16_value_string "298"
|
|
#define op_jngreatereq_wide16_value_string "299"
|
|
#define op_jbelow_wide16_value_string "300"
|
|
#define op_jbeloweq_wide16_value_string "301"
|
|
#define op_loop_hint_wide16_value_string "302"
|
|
#define op_switch_imm_wide16_value_string "303"
|
|
#define op_switch_char_wide16_value_string "304"
|
|
#define op_switch_string_wide16_value_string "305"
|
|
#define op_new_func_wide16_value_string "306"
|
|
#define op_new_func_exp_wide16_value_string "307"
|
|
#define op_new_generator_func_wide16_value_string "308"
|
|
#define op_new_generator_func_exp_wide16_value_string "309"
|
|
#define op_new_async_func_wide16_value_string "310"
|
|
#define op_new_async_func_exp_wide16_value_string "311"
|
|
#define op_new_async_generator_func_wide16_value_string "312"
|
|
#define op_new_async_generator_func_exp_wide16_value_string "313"
|
|
#define op_set_function_name_wide16_value_string "314"
|
|
#define op_ret_wide16_value_string "315"
|
|
#define op_strcat_wide16_value_string "316"
|
|
#define op_to_primitive_wide16_value_string "317"
|
|
#define op_put_to_arguments_wide16_value_string "318"
|
|
#define op_push_with_scope_wide16_value_string "319"
|
|
#define op_create_lexical_environment_wide16_value_string "320"
|
|
#define op_create_generator_frame_environment_wide16_value_string "321"
|
|
#define op_get_parent_scope_wide16_value_string "322"
|
|
#define op_throw_wide16_value_string "323"
|
|
#define op_throw_static_error_wide16_value_string "324"
|
|
#define op_debug_wide16_value_string "325"
|
|
#define op_end_wide16_value_string "326"
|
|
#define op_get_enumerable_length_wide16_value_string "327"
|
|
#define op_has_structure_property_wide16_value_string "328"
|
|
#define op_has_generic_property_wide16_value_string "329"
|
|
#define op_get_property_enumerator_wide16_value_string "330"
|
|
#define op_enumerator_structure_pname_wide16_value_string "331"
|
|
#define op_enumerator_generic_pname_wide16_value_string "332"
|
|
#define op_to_index_string_wide16_value_string "333"
|
|
#define op_unreachable_wide16_value_string "334"
|
|
#define op_create_rest_wide16_value_string "335"
|
|
#define op_get_rest_length_wide16_value_string "336"
|
|
#define op_yield_wide16_value_string "337"
|
|
#define op_check_traps_wide16_value_string "338"
|
|
#define op_log_shadow_chicken_prologue_wide16_value_string "339"
|
|
#define op_log_shadow_chicken_tail_wide16_value_string "340"
|
|
#define op_resolve_scope_for_hoisting_func_decl_in_eval_wide16_value_string "341"
|
|
#define op_nop_wide16_value_string "342"
|
|
#define op_super_sampler_begin_wide16_value_string "343"
|
|
#define op_super_sampler_end_wide16_value_string "344"
|
|
#define op_jngreater_wide16_value_string "345"
|
|
#define op_wide32_wide16_value_string "346"
|
|
#define op_enter_wide16_value_string "347"
|
|
#define op_get_scope_wide16_value_string "348"
|
|
#define op_create_direct_arguments_wide16_value_string "349"
|
|
#define op_create_scoped_arguments_wide16_value_string "350"
|
|
#define op_create_cloned_arguments_wide16_value_string "351"
|
|
#define op_argument_count_wide16_value_string "352"
|
|
#define op_check_tdz_wide16_value_string "353"
|
|
#define op_new_array_with_spread_wide16_value_string "354"
|
|
#define op_spread_wide16_value_string "355"
|
|
#define op_new_regexp_wide16_value_string "356"
|
|
#define op_mov_wide16_value_string "357"
|
|
#define op_eq_wide16_value_string "358"
|
|
#define op_neq_wide16_value_string "359"
|
|
#define op_stricteq_wide16_value_string "360"
|
|
#define op_nstricteq_wide16_value_string "361"
|
|
#define op_less_wide16_value_string "362"
|
|
#define op_lesseq_wide16_value_string "363"
|
|
#define op_greater_wide16_value_string "364"
|
|
#define op_greatereq_wide16_value_string "365"
|
|
#define op_below_wide16_value_string "366"
|
|
#define op_beloweq_wide16_value_string "367"
|
|
#define op_mod_wide16_value_string "368"
|
|
#define op_pow_wide16_value_string "369"
|
|
#define op_rshift_wide16_value_string "370"
|
|
#define op_urshift_wide16_value_string "371"
|
|
#define op_eq_null_wide16_value_string "372"
|
|
#define op_neq_null_wide16_value_string "373"
|
|
#define op_to_string_wide16_value_string "374"
|
|
#define op_unsigned_wide16_value_string "375"
|
|
#define op_is_empty_wide16_value_string "376"
|
|
#define op_is_undefined_wide16_value_string "377"
|
|
#define op_is_undefined_or_null_wide16_value_string "378"
|
|
#define op_is_boolean_wide16_value_string "379"
|
|
#define op_is_number_wide16_value_string "380"
|
|
#define op_is_object_wide16_value_string "381"
|
|
#define op_is_object_or_null_wide16_value_string "382"
|
|
#define op_is_function_wide16_value_string "383"
|
|
#define op_inc_wide16_value_string "384"
|
|
#define op_dec_wide16_value_string "385"
|
|
#define op_not_wide16_value_string "386"
|
|
#define op_identity_with_profile_wide16_value_string "387"
|
|
#define op_overrides_has_instance_wide16_value_string "388"
|
|
#define op_instanceof_wide16_value_string "389"
|
|
#define op_instanceof_custom_wide16_value_string "390"
|
|
#define op_typeof_wide16_value_string "391"
|
|
#define op_new_array_wide32_value_string "446"
|
|
#define op_tail_call_wide32_value_string "447"
|
|
#define op_call_eval_wide32_value_string "448"
|
|
#define op_call_varargs_wide32_value_string "449"
|
|
#define op_tail_call_varargs_wide32_value_string "450"
|
|
#define op_tail_call_forward_arguments_wide32_value_string "451"
|
|
#define op_construct_wide32_value_string "452"
|
|
#define op_construct_varargs_wide32_value_string "453"
|
|
#define op_new_array_with_size_wide32_value_string "454"
|
|
#define op_new_array_buffer_wide32_value_string "455"
|
|
#define op_jneq_ptr_wide32_value_string "456"
|
|
#define op_resolve_scope_wide32_value_string "457"
|
|
#define op_get_from_scope_wide32_value_string "458"
|
|
#define op_put_to_scope_wide32_value_string "459"
|
|
#define op_get_from_arguments_wide32_value_string "460"
|
|
#define op_create_this_wide32_value_string "461"
|
|
#define op_to_this_wide32_value_string "462"
|
|
#define op_in_by_val_wide32_value_string "463"
|
|
#define op_get_argument_wide32_value_string "464"
|
|
#define op_get_by_id_wide32_value_string "465"
|
|
#define op_catch_wide32_value_string "466"
|
|
#define op_get_by_id_with_this_wide32_value_string "467"
|
|
#define op_get_by_val_with_this_wide32_value_string "468"
|
|
#define op_call_wide32_value_string "469"
|
|
#define op_try_get_by_id_wide32_value_string "470"
|
|
#define op_profile_type_wide32_value_string "471"
|
|
#define op_profile_control_flow_wide32_value_string "472"
|
|
#define op_put_by_id_wide32_value_string "473"
|
|
#define op_has_indexed_property_wide32_value_string "474"
|
|
#define op_new_object_wide32_value_string "475"
|
|
#define op_add_wide32_value_string "476"
|
|
#define op_get_direct_pname_wide32_value_string "477"
|
|
#define op_get_by_val_wide32_value_string "478"
|
|
#define op_put_by_val_wide32_value_string "479"
|
|
#define op_mul_wide32_value_string "480"
|
|
#define op_put_by_val_direct_wide32_value_string "481"
|
|
#define op_div_wide32_value_string "482"
|
|
#define op_sub_wide32_value_string "483"
|
|
#define op_bitand_wide32_value_string "484"
|
|
#define op_bitor_wide32_value_string "485"
|
|
#define op_bitxor_wide32_value_string "486"
|
|
#define op_to_object_wide32_value_string "487"
|
|
#define op_to_number_wide32_value_string "488"
|
|
#define op_negate_wide32_value_string "489"
|
|
#define op_lshift_wide32_value_string "490"
|
|
#define op_bitnot_wide32_value_string "491"
|
|
#define op_get_by_id_direct_wide32_value_string "492"
|
|
#define op_is_cell_with_type_wide32_value_string "493"
|
|
#define op_in_by_id_wide32_value_string "494"
|
|
#define op_put_by_id_with_this_wide32_value_string "495"
|
|
#define op_del_by_id_wide32_value_string "496"
|
|
#define op_put_by_val_with_this_wide32_value_string "497"
|
|
#define op_del_by_val_wide32_value_string "498"
|
|
#define op_put_getter_by_id_wide32_value_string "499"
|
|
#define op_put_setter_by_id_wide32_value_string "500"
|
|
#define op_put_getter_setter_by_id_wide32_value_string "501"
|
|
#define op_put_getter_by_val_wide32_value_string "502"
|
|
#define op_put_setter_by_val_wide32_value_string "503"
|
|
#define op_define_data_property_wide32_value_string "504"
|
|
#define op_define_accessor_property_wide32_value_string "505"
|
|
#define op_jmp_wide32_value_string "506"
|
|
#define op_jtrue_wide32_value_string "507"
|
|
#define op_jfalse_wide32_value_string "508"
|
|
#define op_jeq_null_wide32_value_string "509"
|
|
#define op_jneq_null_wide32_value_string "510"
|
|
#define op_jeq_wide32_value_string "511"
|
|
#define op_jstricteq_wide32_value_string "512"
|
|
#define op_jneq_wide32_value_string "513"
|
|
#define op_jnstricteq_wide32_value_string "514"
|
|
#define op_jless_wide32_value_string "515"
|
|
#define op_jlesseq_wide32_value_string "516"
|
|
#define op_jgreater_wide32_value_string "517"
|
|
#define op_jgreatereq_wide32_value_string "518"
|
|
#define op_jnless_wide32_value_string "519"
|
|
#define op_jnlesseq_wide32_value_string "520"
|
|
#define op_wide16_wide32_value_string "521"
|
|
#define op_jngreatereq_wide32_value_string "522"
|
|
#define op_jbelow_wide32_value_string "523"
|
|
#define op_jbeloweq_wide32_value_string "524"
|
|
#define op_loop_hint_wide32_value_string "525"
|
|
#define op_switch_imm_wide32_value_string "526"
|
|
#define op_switch_char_wide32_value_string "527"
|
|
#define op_switch_string_wide32_value_string "528"
|
|
#define op_new_func_wide32_value_string "529"
|
|
#define op_new_func_exp_wide32_value_string "530"
|
|
#define op_new_generator_func_wide32_value_string "531"
|
|
#define op_new_generator_func_exp_wide32_value_string "532"
|
|
#define op_new_async_func_wide32_value_string "533"
|
|
#define op_new_async_func_exp_wide32_value_string "534"
|
|
#define op_new_async_generator_func_wide32_value_string "535"
|
|
#define op_new_async_generator_func_exp_wide32_value_string "536"
|
|
#define op_set_function_name_wide32_value_string "537"
|
|
#define op_ret_wide32_value_string "538"
|
|
#define op_strcat_wide32_value_string "539"
|
|
#define op_to_primitive_wide32_value_string "540"
|
|
#define op_put_to_arguments_wide32_value_string "541"
|
|
#define op_push_with_scope_wide32_value_string "542"
|
|
#define op_create_lexical_environment_wide32_value_string "543"
|
|
#define op_create_generator_frame_environment_wide32_value_string "544"
|
|
#define op_get_parent_scope_wide32_value_string "545"
|
|
#define op_throw_wide32_value_string "546"
|
|
#define op_throw_static_error_wide32_value_string "547"
|
|
#define op_debug_wide32_value_string "548"
|
|
#define op_end_wide32_value_string "549"
|
|
#define op_get_enumerable_length_wide32_value_string "550"
|
|
#define op_has_structure_property_wide32_value_string "551"
|
|
#define op_has_generic_property_wide32_value_string "552"
|
|
#define op_get_property_enumerator_wide32_value_string "553"
|
|
#define op_enumerator_structure_pname_wide32_value_string "554"
|
|
#define op_enumerator_generic_pname_wide32_value_string "555"
|
|
#define op_to_index_string_wide32_value_string "556"
|
|
#define op_unreachable_wide32_value_string "557"
|
|
#define op_create_rest_wide32_value_string "558"
|
|
#define op_get_rest_length_wide32_value_string "559"
|
|
#define op_yield_wide32_value_string "560"
|
|
#define op_check_traps_wide32_value_string "561"
|
|
#define op_log_shadow_chicken_prologue_wide32_value_string "562"
|
|
#define op_log_shadow_chicken_tail_wide32_value_string "563"
|
|
#define op_resolve_scope_for_hoisting_func_decl_in_eval_wide32_value_string "564"
|
|
#define op_nop_wide32_value_string "565"
|
|
#define op_super_sampler_begin_wide32_value_string "566"
|
|
#define op_super_sampler_end_wide32_value_string "567"
|
|
#define op_jngreater_wide32_value_string "568"
|
|
#define op_wide32_wide32_value_string "569"
|
|
#define op_enter_wide32_value_string "570"
|
|
#define op_get_scope_wide32_value_string "571"
|
|
#define op_create_direct_arguments_wide32_value_string "572"
|
|
#define op_create_scoped_arguments_wide32_value_string "573"
|
|
#define op_create_cloned_arguments_wide32_value_string "574"
|
|
#define op_argument_count_wide32_value_string "575"
|
|
#define op_check_tdz_wide32_value_string "576"
|
|
#define op_new_array_with_spread_wide32_value_string "577"
|
|
#define op_spread_wide32_value_string "578"
|
|
#define op_new_regexp_wide32_value_string "579"
|
|
#define op_mov_wide32_value_string "580"
|
|
#define op_eq_wide32_value_string "581"
|
|
#define op_neq_wide32_value_string "582"
|
|
#define op_stricteq_wide32_value_string "583"
|
|
#define op_nstricteq_wide32_value_string "584"
|
|
#define op_less_wide32_value_string "585"
|
|
#define op_lesseq_wide32_value_string "586"
|
|
#define op_greater_wide32_value_string "587"
|
|
#define op_greatereq_wide32_value_string "588"
|
|
#define op_below_wide32_value_string "589"
|
|
#define op_beloweq_wide32_value_string "590"
|
|
#define op_mod_wide32_value_string "591"
|
|
#define op_pow_wide32_value_string "592"
|
|
#define op_rshift_wide32_value_string "593"
|
|
#define op_urshift_wide32_value_string "594"
|
|
#define op_eq_null_wide32_value_string "595"
|
|
#define op_neq_null_wide32_value_string "596"
|
|
#define op_to_string_wide32_value_string "597"
|
|
#define op_unsigned_wide32_value_string "598"
|
|
#define op_is_empty_wide32_value_string "599"
|
|
#define op_is_undefined_wide32_value_string "600"
|
|
#define op_is_undefined_or_null_wide32_value_string "601"
|
|
#define op_is_boolean_wide32_value_string "602"
|
|
#define op_is_number_wide32_value_string "603"
|
|
#define op_is_object_wide32_value_string "604"
|
|
#define op_is_object_or_null_wide32_value_string "605"
|
|
#define op_is_function_wide32_value_string "606"
|
|
#define op_inc_wide32_value_string "607"
|
|
#define op_dec_wide32_value_string "608"
|
|
#define op_not_wide32_value_string "609"
|
|
#define op_identity_with_profile_wide32_value_string "610"
|
|
#define op_overrides_has_instance_wide32_value_string "611"
|
|
#define op_instanceof_wide32_value_string "612"
|
|
#define op_instanceof_custom_wide32_value_string "613"
|
|
#define op_typeof_wide32_value_string "614"
|
|
|
|
#define FOR_EACH_CLOOP_BYTECODE_HELPER_ID(macro) \
|
|
macro(llint_cloop_did_return_from_js_34, 1) \
|
|
macro(getHostCallReturnValue, 1) \
|
|
macro(llint_return_to_host, 1) \
|
|
macro(llint_vm_entry_to_javascript, 1) \
|
|
macro(llint_vm_entry_to_native, 1) \
|
|
macro(llint_cloop_did_return_from_js_1, 1) \
|
|
macro(llint_cloop_did_return_from_js_2, 1) \
|
|
macro(llint_cloop_did_return_from_js_3, 1) \
|
|
macro(llint_cloop_did_return_from_js_4, 1) \
|
|
macro(llint_cloop_did_return_from_js_5, 1) \
|
|
macro(llint_cloop_did_return_from_js_6, 1) \
|
|
macro(llint_cloop_did_return_from_js_7, 1) \
|
|
macro(llint_cloop_did_return_from_js_8, 1) \
|
|
macro(llint_cloop_did_return_from_js_9, 1) \
|
|
macro(llint_cloop_did_return_from_js_10, 1) \
|
|
macro(llint_cloop_did_return_from_js_11, 1) \
|
|
macro(llint_cloop_did_return_from_js_12, 1) \
|
|
macro(llint_cloop_did_return_from_js_13, 1) \
|
|
macro(llint_cloop_did_return_from_js_14, 1) \
|
|
macro(llint_cloop_did_return_from_js_15, 1) \
|
|
macro(llint_cloop_did_return_from_js_16, 1) \
|
|
macro(llint_cloop_did_return_from_js_17, 1) \
|
|
macro(llint_cloop_did_return_from_js_18, 1) \
|
|
macro(llint_cloop_did_return_from_js_19, 1) \
|
|
macro(llint_cloop_did_return_from_js_20, 1) \
|
|
macro(llint_cloop_did_return_from_js_21, 1) \
|
|
macro(llint_cloop_did_return_from_js_22, 1) \
|
|
macro(llint_cloop_did_return_from_js_23, 1) \
|
|
macro(llint_cloop_did_return_from_js_24, 1) \
|
|
macro(llint_cloop_did_return_from_js_25, 1) \
|
|
macro(llint_cloop_did_return_from_js_26, 1) \
|
|
macro(llint_cloop_did_return_from_js_27, 1) \
|
|
macro(llint_cloop_did_return_from_js_28, 1) \
|
|
macro(llint_cloop_did_return_from_js_29, 1) \
|
|
macro(llint_cloop_did_return_from_js_30, 1) \
|
|
macro(llint_cloop_did_return_from_js_31, 1) \
|
|
macro(llint_cloop_did_return_from_js_32, 1) \
|
|
macro(llint_cloop_did_return_from_js_33, 1) \
|
|
macro(llint_entry, 1) \
|
|
|
|
#define NUMBER_OF_CLOOP_BYTECODE_HELPER_IDS 39
|
|
|
|
#define FOR_EACH_BYTECODE_HELPER_ID(macro) \
|
|
macro(handleUncaughtException, 1) \
|
|
macro(llint_eval_prologue, 1) \
|
|
macro(llint_module_program_prologue, 1) \
|
|
macro(llint_function_for_call_prologue, 1) \
|
|
macro(llint_function_for_construct_prologue, 1) \
|
|
macro(llint_function_for_call_arity_check, 1) \
|
|
macro(llint_function_for_construct_arity_check, 1) \
|
|
macro(llint_generic_return_point, 1) \
|
|
macro(llint_throw_from_slow_path_trampoline, 1) \
|
|
macro(llint_throw_during_call_trampoline, 1) \
|
|
macro(llint_native_call_trampoline, 1) \
|
|
macro(llint_native_construct_trampoline, 1) \
|
|
macro(llint_internal_function_call_trampoline, 1) \
|
|
macro(llint_internal_function_construct_trampoline, 1) \
|
|
macro(llint_program_prologue, 1) \
|
|
|
|
#define NUMBER_OF_BYTECODE_HELPER_IDS 15
|
|
|
|
#define FOR_EACH_BYTECODE_STRUCT(macro) \
|
|
macro(OpNewArray) \
|
|
macro(OpTailCall) \
|
|
macro(OpCallEval) \
|
|
macro(OpCallVarargs) \
|
|
macro(OpTailCallVarargs) \
|
|
macro(OpTailCallForwardArguments) \
|
|
macro(OpConstruct) \
|
|
macro(OpConstructVarargs) \
|
|
macro(OpNewArrayWithSize) \
|
|
macro(OpNewArrayBuffer) \
|
|
macro(OpJneqPtr) \
|
|
macro(OpResolveScope) \
|
|
macro(OpGetFromScope) \
|
|
macro(OpPutToScope) \
|
|
macro(OpGetFromArguments) \
|
|
macro(OpCreateThis) \
|
|
macro(OpToThis) \
|
|
macro(OpInByVal) \
|
|
macro(OpGetArgument) \
|
|
macro(OpGetById) \
|
|
macro(OpCatch) \
|
|
macro(OpGetByIdWithThis) \
|
|
macro(OpGetByValWithThis) \
|
|
macro(OpCall) \
|
|
macro(OpTryGetById) \
|
|
macro(OpProfileType) \
|
|
macro(OpProfileControlFlow) \
|
|
macro(OpPutById) \
|
|
macro(OpHasIndexedProperty) \
|
|
macro(OpNewObject) \
|
|
macro(OpAdd) \
|
|
macro(OpGetDirectPname) \
|
|
macro(OpGetByVal) \
|
|
macro(OpPutByVal) \
|
|
macro(OpMul) \
|
|
macro(OpPutByValDirect) \
|
|
macro(OpDiv) \
|
|
macro(OpSub) \
|
|
macro(OpBitand) \
|
|
macro(OpBitor) \
|
|
macro(OpBitxor) \
|
|
macro(OpToObject) \
|
|
macro(OpToNumber) \
|
|
macro(OpNegate) \
|
|
macro(OpLshift) \
|
|
macro(OpBitnot) \
|
|
macro(OpGetByIdDirect) \
|
|
macro(OpIsCellWithType) \
|
|
macro(OpInById) \
|
|
macro(OpPutByIdWithThis) \
|
|
macro(OpDelById) \
|
|
macro(OpPutByValWithThis) \
|
|
macro(OpDelByVal) \
|
|
macro(OpPutGetterById) \
|
|
macro(OpPutSetterById) \
|
|
macro(OpPutGetterSetterById) \
|
|
macro(OpPutGetterByVal) \
|
|
macro(OpPutSetterByVal) \
|
|
macro(OpDefineDataProperty) \
|
|
macro(OpDefineAccessorProperty) \
|
|
macro(OpJmp) \
|
|
macro(OpJtrue) \
|
|
macro(OpJfalse) \
|
|
macro(OpJeqNull) \
|
|
macro(OpJneqNull) \
|
|
macro(OpJeq) \
|
|
macro(OpJstricteq) \
|
|
macro(OpJneq) \
|
|
macro(OpJnstricteq) \
|
|
macro(OpJless) \
|
|
macro(OpJlesseq) \
|
|
macro(OpJgreater) \
|
|
macro(OpJgreatereq) \
|
|
macro(OpJnless) \
|
|
macro(OpJnlesseq) \
|
|
macro(OpWide16) \
|
|
macro(OpJngreatereq) \
|
|
macro(OpJbelow) \
|
|
macro(OpJbeloweq) \
|
|
macro(OpLoopHint) \
|
|
macro(OpSwitchImm) \
|
|
macro(OpSwitchChar) \
|
|
macro(OpSwitchString) \
|
|
macro(OpNewFunc) \
|
|
macro(OpNewFuncExp) \
|
|
macro(OpNewGeneratorFunc) \
|
|
macro(OpNewGeneratorFuncExp) \
|
|
macro(OpNewAsyncFunc) \
|
|
macro(OpNewAsyncFuncExp) \
|
|
macro(OpNewAsyncGeneratorFunc) \
|
|
macro(OpNewAsyncGeneratorFuncExp) \
|
|
macro(OpSetFunctionName) \
|
|
macro(OpRet) \
|
|
macro(OpStrcat) \
|
|
macro(OpToPrimitive) \
|
|
macro(OpPutToArguments) \
|
|
macro(OpPushWithScope) \
|
|
macro(OpCreateLexicalEnvironment) \
|
|
macro(OpCreateGeneratorFrameEnvironment) \
|
|
macro(OpGetParentScope) \
|
|
macro(OpThrow) \
|
|
macro(OpThrowStaticError) \
|
|
macro(OpDebug) \
|
|
macro(OpEnd) \
|
|
macro(OpGetEnumerableLength) \
|
|
macro(OpHasStructureProperty) \
|
|
macro(OpHasGenericProperty) \
|
|
macro(OpGetPropertyEnumerator) \
|
|
macro(OpEnumeratorStructurePname) \
|
|
macro(OpEnumeratorGenericPname) \
|
|
macro(OpToIndexString) \
|
|
macro(OpUnreachable) \
|
|
macro(OpCreateRest) \
|
|
macro(OpGetRestLength) \
|
|
macro(OpYield) \
|
|
macro(OpCheckTraps) \
|
|
macro(OpLogShadowChickenPrologue) \
|
|
macro(OpLogShadowChickenTail) \
|
|
macro(OpResolveScopeForHoistingFuncDeclInEval) \
|
|
macro(OpNop) \
|
|
macro(OpSuperSamplerBegin) \
|
|
macro(OpSuperSamplerEnd) \
|
|
macro(OpJngreater) \
|
|
macro(OpWide32) \
|
|
macro(OpEnter) \
|
|
macro(OpGetScope) \
|
|
macro(OpCreateDirectArguments) \
|
|
macro(OpCreateScopedArguments) \
|
|
macro(OpCreateClonedArguments) \
|
|
macro(OpArgumentCount) \
|
|
macro(OpCheckTdz) \
|
|
macro(OpNewArrayWithSpread) \
|
|
macro(OpSpread) \
|
|
macro(OpNewRegexp) \
|
|
macro(OpMov) \
|
|
macro(OpEq) \
|
|
macro(OpNeq) \
|
|
macro(OpStricteq) \
|
|
macro(OpNstricteq) \
|
|
macro(OpLess) \
|
|
macro(OpLesseq) \
|
|
macro(OpGreater) \
|
|
macro(OpGreatereq) \
|
|
macro(OpBelow) \
|
|
macro(OpBeloweq) \
|
|
macro(OpMod) \
|
|
macro(OpPow) \
|
|
macro(OpRshift) \
|
|
macro(OpUrshift) \
|
|
macro(OpEqNull) \
|
|
macro(OpNeqNull) \
|
|
macro(OpToString) \
|
|
macro(OpUnsigned) \
|
|
macro(OpIsEmpty) \
|
|
macro(OpIsUndefined) \
|
|
macro(OpIsUndefinedOrNull) \
|
|
macro(OpIsBoolean) \
|
|
macro(OpIsNumber) \
|
|
macro(OpIsObject) \
|
|
macro(OpIsObjectOrNull) \
|
|
macro(OpIsFunction) \
|
|
macro(OpInc) \
|
|
macro(OpDec) \
|
|
macro(OpNot) \
|
|
macro(OpIdentityWithProfile) \
|
|
macro(OpOverridesHasInstance) \
|
|
macro(OpInstanceof) \
|
|
macro(OpInstanceofCustom) \
|
|
macro(OpTypeof) \
|
|
|