UNPKG

v8-flags

Version:

Configures v8 flags at runtime.

1,791 lines (1,149 loc) 78.2 kB
<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> **Table of Contents** *generated with [DocToc](http://doctoc.herokuapp.com/)* - [use_strict `false` *{Boolean}*](#use_strict-false-boolean) - [es_staging `false` *{Boolean}*](#es_staging-false-boolean) - [Implications](#implications) - [harmony_typeof `false` *{Boolean}*](#harmony_typeof-false-boolean) - [Resources](#resources) - [harmony_scoping `false` *{Boolean}*](#harmony_scoping-false-boolean) - [harmony_modules `false` *{Boolean}*](#harmony_modules-false-boolean) - [Implications](#implications-1) - [References](#references) - [harmony_symbols `false` *{Boolean}*](#harmony_symbols-false-boolean) - [harmony_proxies `false` *{Boolean}*](#harmony_proxies-false-boolean) - [Resources](#resources-1) - [harmony_collections `false` *{Boolean}*](#harmony_collections-false-boolean) - [References](#references-1) - [harmony_generators `false` *{Boolean}*](#harmony_generators-false-boolean) - [harmony_iteration `false` *{Boolean}*](#harmony_iteration-false-boolean) - [harmony_numeric_literals `false` *{Boolean}*](#harmony_numeric_literals-false-boolean) - [harmony_strings `false` *{Boolean}*](#harmony_strings-false-boolean) - [harmony_arrays `false` *{Boolean}*](#harmony_arrays-false-boolean) - [harmony_maths `false` *{Boolean}*](#harmony_maths-false-boolean) - [harmony `false` *{Boolean}*](#harmony-false-boolean) - [Implications](#implications-2) - [packed_arrays `true` *{Boolean}*](#packed_arrays-true-boolean) - [smi_only_arrays `true` *{Boolean}*](#smi_only_arrays-true-boolean) - [compiled_keyed_dictionary_loads `true` *{Boolean}*](#compiled_keyed_dictionary_loads-true-boolean) - [clever_optimizations `true` *{Boolean}*](#clever_optimizations-true-boolean) - [pretenuring `true` *{Boolean}*](#pretenuring-true-boolean) - [pretenuring_call_new `false` *{Boolean}*](#pretenuring_call_new-false-boolean) - [allocation_site_pretenuring `true` *{Boolean}*](#allocation_site_pretenuring-true-boolean) - [trace_pretenuring `false` *{Boolean}*](#trace_pretenuring-false-boolean) - [trace_pretenuring_statistics `false` *{Boolean}*](#trace_pretenuring_statistics-false-boolean) - [track_fields `true` *{Boolean}*](#track_fields-true-boolean) - [track_double_fields `true` *{Boolean}*](#track_double_fields-true-boolean) - [Implications](#implications-3) - [track_heap_object_fields `true` *{Boolean}*](#track_heap_object_fields-true-boolean) - [Implications](#implications-4) - [track_computed_fields `true` *{Boolean}*](#track_computed_fields-true-boolean) - [Implications](#implications-5) - [smi_binop `true` *{Boolean}*](#smi_binop-true-boolean) - [optimize_for_size `false` *{Boolean}*](#optimize_for_size-false-boolean) - [unbox_double_arrays `true` *{Boolean}*](#unbox_double_arrays-true-boolean) - [string_slices `true` *{Boolean}*](#string_slices-true-boolean) - [crankshaft `true` *{Boolean}*](#crankshaft-true-boolean) - [Resources](#resources-2) - [hydrogen_filter `*` *{String}*](#hydrogen_filter--string) - [use_gvn `true` *{Boolean}*](#use_gvn-true-boolean) - [gvn_iterations `3` *{Integer}*](#gvn_iterations-3-integer) - [use_canonicalizing `true` *{Boolean}*](#use_canonicalizing-true-boolean) - [use_inlining `true` *{Boolean}*](#use_inlining-true-boolean) - [use_escape_analysis `true` *{Boolean}*](#use_escape_analysis-true-boolean) - [use_allocation_folding `true` *{Boolean}*](#use_allocation_folding-true-boolean) - [use_local_allocation_folding `false` *{Boolean}*](#use_local_allocation_folding-false-boolean) - [use_write_barrier_elimination `true` *{Boolean}*](#use_write_barrier_elimination-true-boolean) - [max_inlining_levels `5` *{Integer}*](#max_inlining_levels-5-integer) - [max_inlined_source_size `600` *{Integer}*](#max_inlined_source_size-600-integer) - [max_inlined_nodes `196` *{Integer}*](#max_inlined_nodes-196-integer) - [max_inlined_nodes_cumulative `400` *{Integer}*](#max_inlined_nodes_cumulative-400-integer) - [loop_invariant_code_motion `true` *{Boolean}*](#loop_invariant_code_motion-true-boolean) - [fast_math `true` *{Boolean}*](#fast_math-true-boolean) - [collect_megamorphic_maps_from_stub_cache `true` *{Boolean}*](#collect_megamorphic_maps_from_stub_cache-true-boolean) - [hydrogen_stats `false` *{Boolean}*](#hydrogen_stats-false-boolean) - [trace_check_elimination `false` *{Boolean}*](#trace_check_elimination-false-boolean) - [trace_hydrogen `false` *{Boolean}*](#trace_hydrogen-false-boolean) - [trace_hydrogen_filter `*` *{String}*](#trace_hydrogen_filter--string) - [trace_hydrogen_stubs `false` *{Boolean}*](#trace_hydrogen_stubs-false-boolean) - [trace_hydrogen_file `undefined` *{String}*](#trace_hydrogen_file-undefined-string) - [trace_phase `HLZ` *{String}*](#trace_phase-hlz-string) - [trace_inlining `false` *{Boolean}*](#trace_inlining-false-boolean) - [trace_load_elimination `false` *{Boolean}*](#trace_load_elimination-false-boolean) - [trace_store_elimination `false` *{Boolean}*](#trace_store_elimination-false-boolean) - [trace_alloc `false` *{Boolean}*](#trace_alloc-false-boolean) - [trace_all_uses `false` *{Boolean}*](#trace_all_uses-false-boolean) - [trace_range `false` *{Boolean}*](#trace_range-false-boolean) - [trace_gvn `false` *{Boolean}*](#trace_gvn-false-boolean) - [trace_representation `false` *{Boolean}*](#trace_representation-false-boolean) - [trace_escape_analysis `false` *{Boolean}*](#trace_escape_analysis-false-boolean) - [trace_allocation_folding `false` *{Boolean}*](#trace_allocation_folding-false-boolean) - [trace_track_allocation_sites `false` *{Boolean}*](#trace_track_allocation_sites-false-boolean) - [trace_migration `false` *{Boolean}*](#trace_migration-false-boolean) - [trace_generalization `false` *{Boolean}*](#trace_generalization-false-boolean) - [stress_pointer_maps `false` *{Boolean}*](#stress_pointer_maps-false-boolean) - [stress_environments `false` *{Boolean}*](#stress_environments-false-boolean) - [deopt_every_n_times `0` *{Integer}*](#deopt_every_n_times-0-integer) - [deopt_every_n_garbage_collections `0` *{Integer}*](#deopt_every_n_garbage_collections-0-integer) - [print_deopt_stress `false` *{Boolean}*](#print_deopt_stress-false-boolean) - [trap_on_deopt `false` *{Boolean}*](#trap_on_deopt-false-boolean) - [trap_on_stub_deopt `false` *{Boolean}*](#trap_on_stub_deopt-false-boolean) - [deoptimize_uncommon_cases `true` *{Boolean}*](#deoptimize_uncommon_cases-true-boolean) - [polymorphic_inlining `true` *{Boolean}*](#polymorphic_inlining-true-boolean) - [use_osr `true` *{Boolean}*](#use_osr-true-boolean) - [array_bounds_checks_elimination `true` *{Boolean}*](#array_bounds_checks_elimination-true-boolean) - [trace_bce `false` *{Boolean}*](#trace_bce-false-boolean) - [array_bounds_checks_hoisting `false` *{Boolean}*](#array_bounds_checks_hoisting-false-boolean) - [array_index_dehoisting `true` *{Boolean}*](#array_index_dehoisting-true-boolean) - [analyze_environment_liveness `true` *{Boolean}*](#analyze_environment_liveness-true-boolean) - [load_elimination `true` *{Boolean}*](#load_elimination-true-boolean) - [check_elimination `true` *{Boolean}*](#check_elimination-true-boolean) - [Resources](#resources-3) - [store_elimination `false` *{Boolean}*](#store_elimination-false-boolean) - [dead_code_elimination `true` *{Boolean}*](#dead_code_elimination-true-boolean) - [Resources](#resources-4) - [fold_constants `true` *{Boolean}*](#fold_constants-true-boolean) - [trace_dead_code_elimination `false` *{Boolean}*](#trace_dead_code_elimination-false-boolean) - [unreachable_code_elimination `true` *{Boolean}*](#unreachable_code_elimination-true-boolean) - [trace_osr `false` *{Boolean}*](#trace_osr-false-boolean) - [stress_runs `0` *{Integer}*](#stress_runs-0-integer) - [optimize_closures `true` *{Boolean}*](#optimize_closures-true-boolean) - [lookup_sample_by_shared `true` *{Boolean}*](#lookup_sample_by_shared-true-boolean) - [cache_optimized_code `true` *{Boolean}*](#cache_optimized_code-true-boolean) - [flush_optimized_code_cache `true` *{Boolean}*](#flush_optimized_code_cache-true-boolean) - [inline_construct `true` *{Boolean}*](#inline_construct-true-boolean) - [inline_arguments `true` *{Boolean}*](#inline_arguments-true-boolean) - [inline_accessors `true` *{Boolean}*](#inline_accessors-true-boolean) - [escape_analysis_iterations `2` *{Integer}*](#escape_analysis_iterations-2-integer) - [optimize_for_in `true` *{Boolean}*](#optimize_for_in-true-boolean) - [opt_safe_uint32_operations `true` *{Boolean}*](#opt_safe_uint32_operations-true-boolean) - [concurrent_recompilation `true` *{Boolean}*](#concurrent_recompilation-true-boolean) - [trace_concurrent_recompilation `false` *{Boolean}*](#trace_concurrent_recompilation-false-boolean) - [concurrent_recompilation_queue_length `8` *{Integer}*](#concurrent_recompilation_queue_length-8-integer) - [concurrent_recompilation_delay `0` *{Integer}*](#concurrent_recompilation_delay-0-integer) - [block_concurrent_recompilation `false` *{Boolean}*](#block_concurrent_recompilation-false-boolean) - [concurrent_osr `false` *{Boolean}*](#concurrent_osr-false-boolean) - [Implications](#implications-6) - [omit_map_checks_for_leaf_maps `true` *{Boolean}*](#omit_map_checks_for_leaf_maps-true-boolean) - [typed_array_max_size_in_heap `64` *{Integer}*](#typed_array_max_size_in_heap-64-integer) - [frame_count `1` *{Integer}*](#frame_count-1-integer) - [interrupt_budget `6144` *{Integer}*](#interrupt_budget-6144-integer) - [type_info_threshold `25` *{Integer}*](#type_info_threshold-25-integer) - [self_opt_count `130` *{Integer}*](#self_opt_count-130-integer) - [trace_opt_verbose `false` *{Boolean}*](#trace_opt_verbose-false-boolean) - [Implications](#implications-7) - [debug_code `false` *{Boolean}*](#debug_code-false-boolean) - [code_comments `false` *{Boolean}*](#code_comments-false-boolean) - [Resources](#resources-5) - [enable_sse2 `true` *{Boolean}*](#enable_sse2-true-boolean) - [enable_sse3 `true` *{Boolean}*](#enable_sse3-true-boolean) - [enable_sse4_1 `true` *{Boolean}*](#enable_sse4_1-true-boolean) - [enable_cmov `true` *{Boolean}*](#enable_cmov-true-boolean) - [enable_sahf `true` *{Boolean}*](#enable_sahf-true-boolean) - [enable_vfp3 `true` *{Boolean}*](#enable_vfp3-true-boolean) - [enable_armv7 `true` *{Boolean}*](#enable_armv7-true-boolean) - [enable_neon `true` *{Boolean}*](#enable_neon-true-boolean) - [enable_sudiv `true` *{Boolean}*](#enable_sudiv-true-boolean) - [enable_movw_movt `false` *{Boolean}*](#enable_movw_movt-false-boolean) - [enable_unaligned_accesses `true` *{Boolean}*](#enable_unaligned_accesses-true-boolean) - [enable_32dregs `true` *{Boolean}*](#enable_32dregs-true-boolean) - [enable_vldr_imm `false` *{Boolean}*](#enable_vldr_imm-false-boolean) - [force_long_branches `false` *{Boolean}*](#force_long_branches-false-boolean) - [expose_natives_as `undefined` *{String}*](#expose_natives_as-undefined-string) - [expose_debug_as `undefined` *{String}*](#expose_debug_as-undefined-string) - [expose_free_buffer `false` *{Boolean}*](#expose_free_buffer-false-boolean) - [expose_gc `false` *{Boolean}*](#expose_gc-false-boolean) - [expose_gc_as `undefined` *{String}*](#expose_gc_as-undefined-string) - [Implications](#implications-8) - [expose_externalize_string `false` *{Boolean}*](#expose_externalize_string-false-boolean) - [expose_trigger_failure `false` *{Boolean}*](#expose_trigger_failure-false-boolean) - [stack_trace_limit `10` *{Integer}*](#stack_trace_limit-10-integer) - [builtins_in_stack_traces `false` *{Boolean}*](#builtins_in_stack_traces-false-boolean) - [disable_native_files `false` *{Boolean}*](#disable_native_files-false-boolean) - [inline_new `true` *{Boolean}*](#inline_new-true-boolean) - [trace_codegen `false` *{Boolean}*](#trace_codegen-false-boolean) - [trace `false` *{Boolean}*](#trace-false-boolean) - [mask_constants_with_cookie `true` *{Boolean}*](#mask_constants_with_cookie-true-boolean) - [lazy `true` *{Boolean}*](#lazy-true-boolean) - [trace_opt `false` *{Boolean}*](#trace_opt-false-boolean) - [trace_opt_stats `false` *{Boolean}*](#trace_opt_stats-false-boolean) - [opt `true` *{Boolean}*](#opt-true-boolean) - [always_opt `false` *{Boolean}*](#always_opt-false-boolean) - [always_osr `false` *{Boolean}*](#always_osr-false-boolean) - [Resources:](#resources) - [prepare_always_opt `false` *{Boolean}*](#prepare_always_opt-false-boolean) - [trace_deopt `false` *{Boolean}*](#trace_deopt-false-boolean) - [trace_stub_failures `false` *{Boolean}*](#trace_stub_failures-false-boolean) - [min_preparse_length `1024` *{Integer}*](#min_preparse_length-1024-integer) - [always_full_compiler `false` *{Boolean}*](#always_full_compiler-false-boolean) - [max_opt_count `10` *{Integer}*](#max_opt_count-10-integer) - [compilation_cache `true` *{Boolean}*](#compilation_cache-true-boolean) - [Resources](#resources-6) - [cache_prototype_transitions `true` *{Boolean}*](#cache_prototype_transitions-true-boolean) - [Resources:](#resources-1) - [cpu_profiler_sampling_interval `1000` *{Integer}*](#cpu_profiler_sampling_interval-1000-integer) - [trace_debug_json `false` *{Boolean}*](#trace_debug_json-false-boolean) - [trace_js_array_abuse `false` *{Boolean}*](#trace_js_array_abuse-false-boolean) - [trace_external_array_abuse `false` *{Boolean}*](#trace_external_array_abuse-false-boolean) - [trace_array_abuse `false` *{Boolean}*](#trace_array_abuse-false-boolean) - [Implications](#implications-9) - [debugger_auto_break `true` *{Boolean}*](#debugger_auto_break-true-boolean) - [enable_liveedit `true` *{Boolean}*](#enable_liveedit-true-boolean) - [hard_abort `true` *{Boolean}*](#hard_abort-true-boolean) - [stack_size `984` *{Integer}*](#stack_size-984-integer) - [max_stack_trace_source_length `300` *{Integer}*](#max_stack_trace_source_length-300-integer) - [always_inline_smi_code `false` *{Boolean}*](#always_inline_smi_code-false-boolean) - [max_new_space_size `0` *{Integer}*](#max_new_space_size-0-integer) - [max_old_space_size `0` *{Integer}*](#max_old_space_size-0-integer) - [max_executable_size `0` *{Integer}*](#max_executable_size-0-integer) - [gc_global `false` *{Boolean}*](#gc_global-false-boolean) - [gc_interval `-1` *{Integer}*](#gc_interval--1-integer) - [trace_gc `false` *{Boolean}*](#trace_gc-false-boolean) - [trace_gc_nvp `false` *{Boolean}*](#trace_gc_nvp-false-boolean) - [trace_gc_ignore_scavenger `false` *{Boolean}*](#trace_gc_ignore_scavenger-false-boolean) - [print_cumulative_gc_stat `false` *{Boolean}*](#print_cumulative_gc_stat-false-boolean) - [print_max_heap_committed `false` *{Boolean}*](#print_max_heap_committed-false-boolean) - [trace_gc_verbose `false` *{Boolean}*](#trace_gc_verbose-false-boolean) - [trace_fragmentation `false` *{Boolean}*](#trace_fragmentation-false-boolean) - [trace_external_memory `false` *{Boolean}*](#trace_external_memory-false-boolean) - [collect_maps `true` *{Boolean}*](#collect_maps-true-boolean) - [weak_embedded_maps_in_optimized_code `true` *{Boolean}*](#weak_embedded_maps_in_optimized_code-true-boolean) - [weak_embedded_objects_in_optimized_code `true` *{Boolean}*](#weak_embedded_objects_in_optimized_code-true-boolean) - [flush_code `true` *{Boolean}*](#flush_code-true-boolean) - [flush_code_incrementally `true` *{Boolean}*](#flush_code_incrementally-true-boolean) - [trace_code_flushing `false` *{Boolean}*](#trace_code_flushing-false-boolean) - [age_code `true` *{Boolean}*](#age_code-true-boolean) - [incremental_marking `true` *{Boolean}*](#incremental_marking-true-boolean) - [incremental_marking_steps `true` *{Boolean}*](#incremental_marking_steps-true-boolean) - [trace_incremental_marking `false` *{Boolean}*](#trace_incremental_marking-false-boolean) - [track_gc_object_stats `false` *{Boolean}*](#track_gc_object_stats-false-boolean) - [parallel_sweeping `true` *{Boolean}*](#parallel_sweeping-true-boolean) - [concurrent_sweeping `false` *{Boolean}*](#concurrent_sweeping-false-boolean) - [Resources](#resources-7) - [sweeper_threads `0` *{Integer}*](#sweeper_threads-0-integer) - [job_based_sweeping `false` *{Boolean}*](#job_based_sweeping-false-boolean) - [heap_profiler_trace_objects `false` *{Boolean}*](#heap_profiler_trace_objects-false-boolean) - [use_idle_notification `true` *{Boolean}*](#use_idle_notification-true-boolean) - [use_ic `true` *{Boolean}*](#use_ic-true-boolean) - [native_code_counters `false` *{Boolean}*](#native_code_counters-false-boolean) - [always_compact `false` *{Boolean}*](#always_compact-false-boolean) - [lazy_sweeping `true` *{Boolean}*](#lazy_sweeping-true-boolean) - [never_compact `false` *{Boolean}*](#never_compact-false-boolean) - [compact_code_space `true` *{Boolean}*](#compact_code_space-true-boolean) - [incremental_code_compaction `true` *{Boolean}*](#incremental_code_compaction-true-boolean) - [cleanup_code_caches_at_gc `true` *{Boolean}*](#cleanup_code_caches_at_gc-true-boolean) - [use_marking_progress_bar `true` *{Boolean}*](#use_marking_progress_bar-true-boolean) - [zap_code_space `true` *{Boolean}*](#zap_code_space-true-boolean) - [random_seed `0` *{Integer}*](#random_seed-0-integer) - [use_verbose_printer `true` *{Boolean}*](#use_verbose_printer-true-boolean) - [allow_natives_syntax `false` *{Boolean}*](#allow_natives_syntax-false-boolean) - [trace_parse `false` *{Boolean}*](#trace_parse-false-boolean) - [trace_sim `false` *{Boolean}*](#trace_sim-false-boolean) - [debug_sim `false` *{Boolean}*](#debug_sim-false-boolean) - [Resources](#resources-8) - [check_icache `false` *{Boolean}*](#check_icache-false-boolean) - [stop_sim_at `0` *{Integer}*](#stop_sim_at-0-integer) - [sim_stack_alignment `8` *{Integer}*](#sim_stack_alignment-8-integer) - [sim_stack_size `2048` *{Integer}*](#sim_stack_size-2048-integer) - [log_regs_modified `true` *{Boolean}*](#log_regs_modified-true-boolean) - [log_colour `true` *{Boolean}*](#log_colour-true-boolean) - [ignore_asm_unimplemented_break `false` *{Boolean}*](#ignore_asm_unimplemented_break-false-boolean) - [trace_sim_messages `false` *{Boolean}*](#trace_sim_messages-false-boolean) - [stack_trace_on_illegal `false` *{Boolean}*](#stack_trace_on_illegal-false-boolean) - [abort_on_uncaught_exception `false` *{Boolean}*](#abort_on_uncaught_exception-false-boolean) - [randomize_hashes `true` *{Boolean}*](#randomize_hashes-true-boolean) - [hash_seed `0` *{Integer}*](#hash_seed-0-integer) - [profile_deserialization `false` *{Boolean}*](#profile_deserialization-false-boolean) - [regexp_optimization `true` *{Boolean}*](#regexp_optimization-true-boolean) - [testing_string_flag `Hello, world!` *{String}*](#testing_string_flag-hello-world!-string) - [testing_serialization_file `/tmp/serdes` *{String}*](#testing_serialization_file-tmpserdes-string) - [extra_code `undefined` *{String}*](#extra_code-undefined-string) - [profile_hydrogen_code_stub_compilation `false` *{Boolean}*](#profile_hydrogen_code_stub_compilation-false-boolean) - [predictable `false` *{Boolean}*](#predictable-false-boolean) - [Negative implications](#negative-implications) - [help `false` *{Boolean}*](#help-false-boolean) - [dump_counters `false` *{Boolean}*](#dump_counters-false-boolean) - [map_counters `` *{String}*](#map_counters--string) - [debug_compile_events `true` *{Boolean}*](#debug_compile_events-true-boolean) - [Resources](#resources-9) - [debug_script_collected_events `true` *{Boolean}*](#debug_script_collected_events-true-boolean) - [gdbjit `false` *{Boolean}*](#gdbjit-false-boolean) - [gdbjit_full `false` *{Boolean}*](#gdbjit_full-false-boolean) - [gdbjit_dump `false` *{Boolean}*](#gdbjit_dump-false-boolean) - [gdbjit_dump_filter `` *{String}*](#gdbjit_dump_filter--string) - [force_marking_deque_overflows `false` *{Boolean}*](#force_marking_deque_overflows-false-boolean) - [stress_compaction `false` *{Boolean}*](#stress_compaction-false-boolean) - [print_source `false` *{Boolean}*](#print_source-false-boolean) - [print_builtin_source `false` *{Boolean}*](#print_builtin_source-false-boolean) - [print_ast `false` *{Boolean}*](#print_ast-false-boolean) - [print_builtin_ast `false` *{Boolean}*](#print_builtin_ast-false-boolean) - [stop_at `` *{String}*](#stop_at--string) - [trap_on_abort `false` *{Boolean}*](#trap_on_abort-false-boolean) - [print_builtin_scopes `false` *{Boolean}*](#print_builtin_scopes-false-boolean) - [print_scopes `false` *{Boolean}*](#print_scopes-false-boolean) - [trace_contexts `false` *{Boolean}*](#trace_contexts-false-boolean) - [gc_greedy `false` *{Boolean}*](#gc_greedy-false-boolean) - [gc_verbose `false` *{Boolean}*](#gc_verbose-false-boolean) - [heap_stats `false` *{Boolean}*](#heap_stats-false-boolean) - [code_stats `false` *{Boolean}*](#code_stats-false-boolean) - [Resources](#resources-10) - [verify_native_context_separation `false` *{Boolean}*](#verify_native_context_separation-false-boolean) - [print_handles `false` *{Boolean}*](#print_handles-false-boolean) - [print_global_handles `false` *{Boolean}*](#print_global_handles-false-boolean) - [trace_ic `false` *{Boolean}*](#trace_ic-false-boolean) - [print_interfaces `false` *{Boolean}*](#print_interfaces-false-boolean) - [print_interface_details `false` *{Boolean}*](#print_interface_details-false-boolean) - [print_interface_depth `5` *{Integer}*](#print_interface_depth-5-integer) - [trace_normalization `false` *{Boolean}*](#trace_normalization-false-boolean) - [trace_lazy `false` *{Boolean}*](#trace_lazy-false-boolean) - [collect_heap_spill_statistics `false` *{Boolean}*](#collect_heap_spill_statistics-false-boolean) - [trace_isolates `false` *{Boolean}*](#trace_isolates-false-boolean) - [regexp_possessive_quantifier `false` *{Boolean}*](#regexp_possessive_quantifier-false-boolean) - [trace_regexp_bytecodes `false` *{Boolean}*](#trace_regexp_bytecodes-false-boolean) - [trace_regexp_assembler `false` *{Boolean}*](#trace_regexp_assembler-false-boolean) - [log `false` *{Boolean}*](#log-false-boolean) - [log_all `false` *{Boolean}*](#log_all-false-boolean) - [log_runtime `false` *{Boolean}*](#log_runtime-false-boolean) - [log_api `false` *{Boolean}*](#log_api-false-boolean) - [log_code `false` *{Boolean}*](#log_code-false-boolean) - [log_gc `false` *{Boolean}*](#log_gc-false-boolean) - [log_handles `false` *{Boolean}*](#log_handles-false-boolean) - [log_snapshot_positions `false` *{Boolean}*](#log_snapshot_positions-false-boolean) - [log_suspect `false` *{Boolean}*](#log_suspect-false-boolean) - [prof `false` *{Boolean}*](#prof-false-boolean) - [prof_browser_mode `true` *{Boolean}*](#prof_browser_mode-true-boolean) - [log_regexp `false` *{Boolean}*](#log_regexp-false-boolean) - [logfile `v8.log` *{String}*](#logfile-v8log-string) - [logfile_per_isolate `true` *{Boolean}*](#logfile_per_isolate-true-boolean) - [ll_prof `false` *{Boolean}*](#ll_prof-false-boolean) - [perf_basic_prof `false` *{Boolean}*](#perf_basic_prof-false-boolean) - [perf_jit_prof `false` *{Boolean}*](#perf_jit_prof-false-boolean) - [gc_fake_mmap `/tmp/__v8_gc__` *{String}*](#gc_fake_mmap-tmp__v8_gc__-string) - [log_internal_timer_events `false` *{Boolean}*](#log_internal_timer_events-false-boolean) - [Implications](#implications-10) - [log_timer_events `false` *{Boolean}*](#log_timer_events-false-boolean) - [Implications](#implications-11) - [log_instruction_stats `false` *{Boolean}*](#log_instruction_stats-false-boolean) - [log_instruction_file `arm64_inst.csv` *{String}*](#log_instruction_file-arm64_instcsv-string) - [log_instruction_period `4194304` *{Integer}*](#log_instruction_period-4194304-integer) - [redirect_code_traces `false` *{Boolean}*](#redirect_code_traces-false-boolean) - [redirect_code_traces_to `undefined` *{String}*](#redirect_code_traces_to-undefined-string) - [hydrogen_track_positions `false` *{Boolean}*](#hydrogen_track_positions-false-boolean) - [trace_elements_transitions `false` *{Boolean}*](#trace_elements_transitions-false-boolean) - [trace_creation_allocation_sites `false` *{Boolean}*](#trace_creation_allocation_sites-false-boolean) - [print_code_stubs `false` *{Boolean}*](#print_code_stubs-false-boolean) - [test_secondary_stub_cache `false` *{Boolean}*](#test_secondary_stub_cache-false-boolean) - [test_primary_stub_cache `false` *{Boolean}*](#test_primary_stub_cache-false-boolean) - [print_code `false` *{Boolean}*](#print_code-false-boolean) - [print_opt_code `false` *{Boolean}*](#print_opt_code-false-boolean) - [print_unopt_code `false` *{Boolean}*](#print_unopt_code-false-boolean) - [print_code_verbose `false` *{Boolean}*](#print_code_verbose-false-boolean) - [print_builtin_code `false` *{Boolean}*](#print_builtin_code-false-boolean) - [enable_ool_constant_pool `false` *{Boolean}*](#enable_ool_constant_pool-false-boolean) <!-- END doctoc generated TOC please keep comment here to allow auto update --> ### use_strict `false` *{Boolean}* enforce strict mode - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### es_staging `false` *{Boolean}* enable upcoming ES6+ features - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Implications - harmony_maths ### harmony_typeof `false` *{Boolean}* enable harmony semantics for typeof - **default:** `false` - **type:** `Boolean` - **readonly:** `false` **Note:** this feature seems to work in v8 even without turning on this flag. #### Resources - *rejected?* [proposal](http://wiki.ecmascript.org/doku.php?id=harmony:typeof_null&s=typeof) ### harmony_scoping `false` *{Boolean}* enable harmony block scoping - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_modules `false` *{Boolean}* enable harmony modules (implies block scoping) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Implications - harmony_scoping #### References - [spec](http://wiki.ecmascript.org/doku.php?id=harmony:modules) - [v8 parser.cc](https://github.com/v8/v8/blob/3.25.30/src/parser.cc#L1147) ### harmony_symbols `false` *{Boolean}* enable harmony symbols (a.k.a. private names) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_proxies `false` *{Boolean}* enable harmony proxies **NOTE:** This flag cannot be configured after the process started up! - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Resources - [v8 bootstrapper.cc](https://github.com/v8/v8/blob/3.25.30/src/bootstrapper.cc#L1609-L1614) - [spec draft](http://wiki.ecmascript.org/doku.php?id=harmony:direct_proxies) ### harmony_collections `false` *{Boolean}* enable harmony collections (sets, maps) **NOTE:** This flag cannot be configured after the process started up! - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### References - [v8 bootstrapper.cc](https://github.com/v8/v8/blob/3.25.30/src/bootstrapper.cc#L1363-L1374) - [example](http://dailyjs.com/2012/10/15/preparing-for-esnext/#example_collections) ### harmony_generators `false` *{Boolean}* enable harmony generators - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_iteration `false` *{Boolean}* enable harmony iteration (for-of) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_numeric_literals `false` *{Boolean}* enable harmony numeric literals (0o77, 0b11) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_strings `false` *{Boolean}* enable harmony string - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_arrays `false` *{Boolean}* enable harmony arrays - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony_maths `false` *{Boolean}* enable harmony math functions - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### harmony `false` *{Boolean}* enable all harmony features (except typeof) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Implications - harmony_scoping - harmony_modules - harmony_symbols - harmony_proxies - harmony_collections - harmony_generators - harmony_iteration - harmony_numeric_literals - harmony_strings - harmony_arrays - es_staging ### packed_arrays `true` *{Boolean}* optimizes arrays that have no holes - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### smi_only_arrays `true` *{Boolean}* tracks arrays with only smi values - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### compiled_keyed_dictionary_loads `true` *{Boolean}* use optimizing compiler to generate keyed dictionary load stubs - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### clever_optimizations `true` *{Boolean}* Optimize object size, Array shift, DOM strings and string + - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### pretenuring `true` *{Boolean}* allocate objects in old space - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### pretenuring_call_new `false` *{Boolean}* pretenure call new - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### allocation_site_pretenuring `true` *{Boolean}* pretenure with allocation sites - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_pretenuring `false` *{Boolean}* trace pretenuring decisions of HAllocate instructions - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_pretenuring_statistics `false` *{Boolean}* trace allocation site pretenuring statistics - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### track_fields `true` *{Boolean}* track fields with only smi values - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### track_double_fields `true` *{Boolean}* track fields with double values - **default:** `true` - **type:** `Boolean` - **readonly:** `false` #### Implications - track_fields ### track_heap_object_fields `true` *{Boolean}* track fields with heap values - **default:** `true` - **type:** `Boolean` - **readonly:** `false` #### Implications - track_fields ### track_computed_fields `true` *{Boolean}* track computed boilerplate fields - **default:** `true` - **type:** `Boolean` - **readonly:** `false` #### Implications - track_fields ### smi_binop `true` *{Boolean}* support smi representation in binary operations - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### optimize_for_size `false` *{Boolean}* Enables optimizations which favor memory size over execution speed. - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### unbox_double_arrays `true` *{Boolean}* automatically unbox arrays of doubles - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### string_slices `true` *{Boolean}* use string slices - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### crankshaft `true` *{Boolean}* use crankshaft - **default:** `true` - **type:** `Boolean` - **readonly:** `false` #### Resources - [v8 isolate.cc](https://github.com/v8/v8/blob/3.26.33/src/isolate.cc#L1778) - [v8 runtime.cc](https://github.com/v8/v8/blob/3.26.33/src/runtime.cc#L8509) ### hydrogen_filter `*` *{String}* optimization filter - **default:** `*` - **type:** `String` - **readonly:** `false` ### use_gvn `true` *{Boolean}* use hydrogen global value numbering - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### gvn_iterations `3` *{Integer}* maximum number of GVN fix-point iterations - **default:** `3` - **type:** `Integer` - **readonly:** `false` ### use_canonicalizing `true` *{Boolean}* use hydrogen instruction canonicalizing - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### use_inlining `true` *{Boolean}* use function inlining - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### use_escape_analysis `true` *{Boolean}* use hydrogen escape analysis - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### use_allocation_folding `true` *{Boolean}* use allocation folding - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### use_local_allocation_folding `false` *{Boolean}* only fold in basic blocks - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### use_write_barrier_elimination `true` *{Boolean}* eliminate write barriers targeting allocations in optimized code - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### max_inlining_levels `5` *{Integer}* maximum number of inlining levels - **default:** `5` - **type:** `Integer` - **readonly:** `false` ### max_inlined_source_size `600` *{Integer}* maximum source size in bytes considered for a single inlining - **default:** `600` - **type:** `Integer` - **readonly:** `false` ### max_inlined_nodes `196` *{Integer}* maximum number of AST nodes considered for a single inlining - **default:** `196` - **type:** `Integer` - **readonly:** `false` ### max_inlined_nodes_cumulative `400` *{Integer}* maximum cumulative number of AST nodes considered for inlining - **default:** `400` - **type:** `Integer` - **readonly:** `false` ### loop_invariant_code_motion `true` *{Boolean}* loop invariant code motion - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### fast_math `true` *{Boolean}* faster (but maybe less accurate) math functions - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### collect_megamorphic_maps_from_stub_cache `true` *{Boolean}* crankshaft harvests type feedback from stub cache - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### hydrogen_stats `false` *{Boolean}* print statistics for hydrogen - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_check_elimination `false` *{Boolean}* trace check elimination phase - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_hydrogen `false` *{Boolean}* trace generated hydrogen to file - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_hydrogen_filter `*` *{String}* hydrogen tracing filter - **default:** `*` - **type:** `String` - **readonly:** `false` ### trace_hydrogen_stubs `false` *{Boolean}* trace generated hydrogen for stubs - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_hydrogen_file `undefined` *{String}* trace hydrogen to given file name - **default:** `undefined` - **type:** `String` - **readonly:** `false` ### trace_phase `HLZ` *{String}* trace generated IR for specified phases - **default:** `HLZ` - **type:** `String` - **readonly:** `false` ### trace_inlining `false` *{Boolean}* trace inlining decisions - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_load_elimination `false` *{Boolean}* trace load elimination - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_store_elimination `false` *{Boolean}* trace store elimination - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_alloc `false` *{Boolean}* trace register allocator - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_all_uses `false` *{Boolean}* trace all use positions - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_range `false` *{Boolean}* trace range analysis - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_gvn `false` *{Boolean}* trace global value numbering - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_representation `false` *{Boolean}* trace representation types - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_escape_analysis `false` *{Boolean}* trace hydrogen escape analysis - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_allocation_folding `false` *{Boolean}* trace allocation folding - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_track_allocation_sites `false` *{Boolean}* trace the tracking of allocation sites - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_migration `false` *{Boolean}* trace object migration - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_generalization `false` *{Boolean}* trace map generalization - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### stress_pointer_maps `false` *{Boolean}* pointer map for every instruction - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### stress_environments `false` *{Boolean}* environment for every instruction - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### deopt_every_n_times `0` *{Integer}* deoptimize every n times a deopt point is passed - **default:** `0` - **type:** `Integer` - **readonly:** `false` ### deopt_every_n_garbage_collections `0` *{Integer}* deoptimize every n garbage collections - **default:** `0` - **type:** `Integer` - **readonly:** `false` ### print_deopt_stress `false` *{Boolean}* print number of possible deopt points - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trap_on_deopt `false` *{Boolean}* put a break point before deoptimizing - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trap_on_stub_deopt `false` *{Boolean}* put a break point before deoptimizing a stub - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### deoptimize_uncommon_cases `true` *{Boolean}* deoptimize uncommon cases - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### polymorphic_inlining `true` *{Boolean}* polymorphic inlining - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### use_osr `true` *{Boolean}* use on-stack replacement - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### array_bounds_checks_elimination `true` *{Boolean}* perform array bounds checks elimination - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_bce `false` *{Boolean}* trace array bounds check elimination - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### array_bounds_checks_hoisting `false` *{Boolean}* perform array bounds checks hoisting - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### array_index_dehoisting `true` *{Boolean}* perform array index dehoisting - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### analyze_environment_liveness `true` *{Boolean}* analyze liveness of environment slots and zap dead values - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### load_elimination `true` *{Boolean}* use load elimination - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### check_elimination `true` *{Boolean}* use check elimination - **default:** `true` - **type:** `Boolean` - **readonly:** `false` #### Resources - [v8 source](https://github.com/v8/v8/blob/3.26.33/src/hydrogen.cc#L4029) ### store_elimination `false` *{Boolean}* use store elimination - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### dead_code_elimination `true` *{Boolean}* use dead code elimination - **default:** `true` - **type:** `Boolean` - **readonly:** `false` #### Resources [v8 hydrogen.cc](https://github.com/v8/v8/blob/3.26.33/src/hydrogen.cc#L3999) [v8 hydrogin-dce.cc](https://github.com/v8/v8/blob/3.26.33/src/hydrogen-dce.cc) **Note**: not available below **node:** `0.10` - **v8:** `3.14` ### fold_constants `true` *{Boolean}* use constant folding - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_dead_code_elimination `false` *{Boolean}* trace dead code elimination - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### unreachable_code_elimination `true` *{Boolean}* eliminate unreachable code - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_osr `false` *{Boolean}* trace on-stack replacement - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### stress_runs `0` *{Integer}* number of stress runs - **default:** `0` - **type:** `Integer` - **readonly:** `false` ### optimize_closures `true` *{Boolean}* optimize closures - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### lookup_sample_by_shared `true` *{Boolean}* when picking a function to optimize, watch for shared function info, not JSFunction itself - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### cache_optimized_code `true` *{Boolean}* cache optimized code for closures - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### flush_optimized_code_cache `true` *{Boolean}* flushes the cache of optimized code for closures on every GC - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### inline_construct `true` *{Boolean}* inline constructor calls - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### inline_arguments `true` *{Boolean}* inline functions with arguments object - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### inline_accessors `true` *{Boolean}* inline JavaScript accessors - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### escape_analysis_iterations `2` *{Integer}* maximum number of escape analysis fix-point iterations - **default:** `2` - **type:** `Integer` - **readonly:** `false` ### optimize_for_in `true` *{Boolean}* optimize functions containing for-in loops - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### opt_safe_uint32_operations `true` *{Boolean}* allow uint32 values on optimize frames if they are used only in safe operations - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### concurrent_recompilation `true` *{Boolean}* optimizing hot functions asynchronously on a separate thread - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_concurrent_recompilation `false` *{Boolean}* track concurrent recompilation - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### concurrent_recompilation_queue_length `8` *{Integer}* the length of the concurrent compilation queue - **default:** `8` - **type:** `Integer` - **readonly:** `false` ### concurrent_recompilation_delay `0` *{Integer}* artificial compilation delay in ms - **default:** `0` - **type:** `Integer` - **readonly:** `false` ### block_concurrent_recompilation `false` *{Boolean}* block queued jobs until released - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### concurrent_osr `false` *{Boolean}* concurrent on-stack replacement - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Implications - concurrent_recompilation ### omit_map_checks_for_leaf_maps `true` *{Boolean}* do not emit check maps for constant values that have a leaf map, deoptimize the optimized code if the layout of the maps changes. - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### typed_array_max_size_in_heap `64` *{Integer}* threshold for in-heap typed array - **default:** `64` - **type:** `Integer` - **readonly:** `false` ### frame_count `1` *{Integer}* number of stack frames inspected by the profiler - **default:** `1` - **type:** `Integer` - **readonly:** `false` ### interrupt_budget `6144` *{Integer}* execution budget before interrupt is triggered - **default:** `6144` - **type:** `Integer` - **readonly:** `false` ### type_info_threshold `25` *{Integer}* percentage of ICs that must have type info to allow optimization - **default:** `25` - **type:** `Integer` - **readonly:** `false` ### self_opt_count `130` *{Integer}* call count before self-optimization - **default:** `130` - **type:** `Integer` - **readonly:** `false` ### trace_opt_verbose `false` *{Boolean}* extra verbose compilation tracing - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Implications - trace_opt ### debug_code `false` *{Boolean}* generate extra code (assertions) for debugging - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### code_comments `false` *{Boolean}* emit comments in code disassembly - **default:** `false` - **type:** `Boolean` - **readonly:** `false` #### Resources - [v8 source](https://github.com/v8/v8/blob/3.26.33/src/lithium-codegen.cc#L66-L73) - [v8 source](https://github.com/v8/v8/blob/3.26.33/src/heap.cc#L4528-L4536) **Note**: not available below **node:** `0.11` - **v8:** `3.25` ### enable_sse2 `true` *{Boolean}* enable use of SSE2 instructions if available - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_sse3 `true` *{Boolean}* enable use of SSE3 instructions if available - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_sse4_1 `true` *{Boolean}* enable use of SSE4.1 instructions if available - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_cmov `true` *{Boolean}* enable use of CMOV instruction if available - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_sahf `true` *{Boolean}* enable use of SAHF instruction if available (X64 only) - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_vfp3 `true` *{Boolean}* enable use of VFP3 instructions if available - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_armv7 `true` *{Boolean}* enable use of ARMv7 instructions if available (ARM only) - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_neon `true` *{Boolean}* enable use of NEON instructions if available (ARM only) - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_sudiv `true` *{Boolean}* enable use of SDIV and UDIV instructions if available (ARM only) - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_movw_movt `false` *{Boolean}* enable loading 32-bit constant by means of movw/movt instruction pairs (ARM only) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### enable_unaligned_accesses `true` *{Boolean}* enable unaligned accesses for ARMv7 (ARM only) - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_32dregs `true` *{Boolean}* enable use of d16-d31 registers on ARM - this requires VFP3 - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### enable_vldr_imm `false` *{Boolean}* enable use of constant pools for double immediate (ARM only) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### force_long_branches `false` *{Boolean}* force all emitted branches to be in long mode (MIPS only) - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### expose_natives_as `undefined` *{String}* expose natives in global object **NOTE:** This flag cannot be configured after the process started up! - **default:** `undefined` - **type:** `String` - **readonly:** `false` ### expose_debug_as `undefined` *{String}* expose debug in global object **NOTE:** This flag cannot be configured after the process started up! - **default:** `undefined` - **type:** `String` - **readonly:** `false` ### expose_free_buffer `false` *{Boolean}* expose freeBuffer extension - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### expose_gc `false` *{Boolean}* expose gc extension **NOTE:** This flag cannot be configured after the process started up! - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### expose_gc_as `undefined` *{String}* expose gc extension under the specified name **NOTE:** This flag cannot be configured after the process started up! - **default:** `undefined` - **type:** `String` - **readonly:** `false` #### Implications - expose_gc ### expose_externalize_string `false` *{Boolean}* expose externalize string extension - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### expose_trigger_failure `false` *{Boolean}* expose trigger-failure extension - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### stack_trace_limit `10` *{Integer}* number of stack frames to capture - **default:** `10` - **type:** `Integer` - **readonly:** `false` ### builtins_in_stack_traces `false` *{Boolean}* show built-in functions in stack traces - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### disable_native_files `false` *{Boolean}* disable builtin natives files - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### inline_new `true` *{Boolean}* use fast inline allocation - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_codegen `false` *{Boolean}* print name of functions for which code is generated - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace `false` *{Boolean}* trace function calls - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### mask_constants_with_cookie `true` *{Boolean}* use random jit cookie to mask large constants - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### lazy `true` *{Boolean}* use lazy compilation - **default:** `true` - **type:** `Boolean` - **readonly:** `false` ### trace_opt `false` *{Boolean}* trace lazy optimization - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### trace_opt_stats `false` *{Boolean}* trace lazy optimization statistics - **default:** `false` - **type:** `Boolean` - **readonly:** `false` ### opt `true` *{Boolean}* use adaptive