diff options
Diffstat (limited to 'src/3rdparty/v8/src/flag-definitions.h')
-rw-r--r-- | src/3rdparty/v8/src/flag-definitions.h | 78 |
1 files changed, 67 insertions, 11 deletions
diff --git a/src/3rdparty/v8/src/flag-definitions.h b/src/3rdparty/v8/src/flag-definitions.h index 31c2a3a..96d03fa 100644 --- a/src/3rdparty/v8/src/flag-definitions.h +++ b/src/3rdparty/v8/src/flag-definitions.h @@ -132,7 +132,9 @@ public: // Flags for language modes and experimental language features. DEFINE_bool(use_strict, false, "enforce strict mode") -DEFINE_bool(es52_globals, false, +DEFINE_bool(es5_readonly, true, + "activate correct semantics for inheriting readonliness") +DEFINE_bool(es52_globals, true, "activate new semantics for global var declarations") DEFINE_bool(harmony_typeof, false, "enable harmony semantics for typeof") @@ -142,14 +144,19 @@ DEFINE_bool(harmony_modules, false, DEFINE_bool(harmony_proxies, false, "enable harmony proxies") DEFINE_bool(harmony_collections, false, "enable harmony collections (sets, maps, and weak maps)") +DEFINE_bool(harmony_observation, false, + "enable harmony object observation (implies harmony collections") DEFINE_bool(harmony, false, "enable all harmony features (except typeof)") DEFINE_implication(harmony, harmony_scoping) DEFINE_implication(harmony, harmony_modules) DEFINE_implication(harmony, harmony_proxies) DEFINE_implication(harmony, harmony_collections) +DEFINE_implication(harmony, harmony_observation) DEFINE_implication(harmony_modules, harmony_scoping) +DEFINE_implication(harmony_observation, harmony_collections) // Flags for experimental implementation features. +DEFINE_bool(packed_arrays, true, "optimizes arrays that have no holes") DEFINE_bool(smi_only_arrays, true, "tracks arrays with only smi values") DEFINE_bool(clever_optimizations, true, @@ -197,18 +204,35 @@ DEFINE_bool(polymorphic_inlining, true, "polymorphic inlining") DEFINE_bool(use_osr, true, "use on-stack replacement") DEFINE_bool(array_bounds_checks_elimination, true, "perform array bounds checks elimination") -DEFINE_bool(array_index_dehoisting, false, +DEFINE_bool(array_index_dehoisting, true, "perform array index dehoisting") +DEFINE_bool(dead_code_elimination, true, "use dead code elimination") +DEFINE_bool(trace_dead_code_elimination, false, "trace dead code elimination") DEFINE_bool(trace_osr, false, "trace on-stack replacement") DEFINE_int(stress_runs, 0, "number of stress runs") DEFINE_bool(optimize_closures, true, "optimize closures") +DEFINE_bool(lookup_sample_by_shared, true, + "when picking a function to optimize, watch for shared function " + "info, not JSFunction itself") +DEFINE_bool(cache_optimized_code, true, + "cache optimized code for closures") DEFINE_bool(inline_construct, true, "inline constructor calls") DEFINE_bool(inline_arguments, true, "inline functions with arguments object") +DEFINE_bool(inline_accessors, true, "inline JavaScript accessors") DEFINE_int(loop_weight, 1, "loop weight for representation inference") DEFINE_bool(optimize_for_in, true, "optimize functions containing for-in loops") +DEFINE_bool(opt_safe_uint32_operations, true, + "allow uint32 values on optimize frames if they are used only in" + "safe operations") + +DEFINE_bool(parallel_recompilation, false, + "optimizing hot functions asynchronously on a separate thread") +DEFINE_bool(trace_parallel_recompilation, false, "track parallel recompilation") +DEFINE_int(parallel_recompilation_queue_length, 2, + "the length of the parallel compilation queue") // Experimental profiler changes. DEFINE_bool(experimental_profiler, true, "enable all profiler experiments") @@ -225,7 +249,8 @@ DEFINE_bool(interrupt_at_exit, false, "insert an interrupt check at function exit") DEFINE_bool(weighted_back_edges, false, "weight back edges by jump distance for interrupt triggering") -DEFINE_int(interrupt_budget, 5900, + // 0x1700 fits in the immediate field of an ARM instruction. +DEFINE_int(interrupt_budget, 0x1700, "execution budget before interrupt is triggered") DEFINE_int(type_info_threshold, 15, "percentage of ICs that must have type info to allow optimization") @@ -260,9 +285,18 @@ DEFINE_bool(enable_sahf, true, "enable use of SAHF instruction if available (X64 only)") DEFINE_bool(enable_vfp3, true, "enable use of VFP3 instructions if available - this implies " - "enabling ARMv7 instructions (ARM only)") + "enabling ARMv7 and VFP2 instructions (ARM only)") +DEFINE_bool(enable_vfp2, true, + "enable use of VFP2 instructions if available") DEFINE_bool(enable_armv7, true, "enable use of ARMv7 instructions if available (ARM only)") +DEFINE_bool(enable_sudiv, true, + "enable use of SDIV and UDIV instructions if available (ARM only)") +DEFINE_bool(enable_movw_movt, false, + "enable loading 32-bit constant by means of movw/movt " + "instruction pairs (ARM only)") +DEFINE_bool(enable_unaligned_accesses, true, + "enable unaligned accesses for ARMv7 (ARM only)") DEFINE_bool(enable_fpu, true, "enable use of MIPS FPU instructions if available (MIPS only)") @@ -304,8 +338,8 @@ DEFINE_int(min_preparse_length, 1024, "minimum length for automatic enable preparsing") DEFINE_bool(always_full_compiler, false, "try to use the dedicated run-once backend for all code") -DEFINE_bool(trace_bailout, false, - "print reasons for falling back to using the classic V8 backend") +DEFINE_int(max_opt_count, 10, + "maximum number of optimization attempts before giving up.") // compilation-cache.cc DEFINE_bool(compilation_cache, true, "enable compilation cache") @@ -346,27 +380,39 @@ DEFINE_bool(trace_gc, false, DEFINE_bool(trace_gc_nvp, false, "print one detailed trace line in name=value format " "after each garbage collection") +DEFINE_bool(trace_gc_ignore_scavenger, false, + "do not print trace line after scavenger collection") DEFINE_bool(print_cumulative_gc_stat, false, "print cumulative GC statistics in name=value format on exit") DEFINE_bool(trace_gc_verbose, false, "print more details following each garbage collection") DEFINE_bool(trace_fragmentation, false, "report fragmentation for old pointer and data pages") +DEFINE_bool(trace_external_memory, false, + "print amount of external allocated memory after each time " + "it is adjusted.") DEFINE_bool(collect_maps, true, "garbage collect maps from which no objects can be reached") DEFINE_bool(flush_code, true, - "flush code that we expect not to use again before full gc") + "flush code that we expect not to use again (during full gc)") +DEFINE_bool(flush_code_incrementally, false, + "flush code that we expect not to use again (incrementally)") +DEFINE_bool(age_code, false, + "track un-executed functions to age code and flush only " + "old code") DEFINE_bool(incremental_marking, true, "use incremental marking") DEFINE_bool(incremental_marking_steps, true, "do incremental marking steps") DEFINE_bool(trace_incremental_marking, false, "trace progress of the incremental marking") +DEFINE_bool(track_gc_object_stats, false, + "track object counts and memory usage") +#ifdef VERIFY_HEAP +DEFINE_bool(verify_heap, false, "verify heap pointers before and after GC") +#endif // v8.cc DEFINE_bool(use_idle_notification, true, "Use idle notification to reduce memory footprint.") - -DEFINE_bool(send_idle_notification, false, - "Send idle notifcation between stress runs.") // ic.cc DEFINE_bool(use_ic, true, "use inline caching") @@ -388,6 +434,8 @@ DEFINE_bool(never_compact, false, "Never perform compaction on full GC - testing only") DEFINE_bool(compact_code_space, true, "Compact code space on full non-incremental collections") +DEFINE_bool(incremental_code_compaction, true, + "Compact code space on full incremental collections") DEFINE_bool(cleanup_code_caches_at_gc, true, "Flush inline caches prior to mark compact collection and " "flush code caches in maps during mark compact cycle.") @@ -400,6 +448,7 @@ DEFINE_bool(use_verbose_printer, true, "allows verbose printing") // parser.cc DEFINE_bool(allow_natives_syntax, false, "allow natives syntax") +DEFINE_bool(trace_parse, false, "trace parsing and preparsing") // simulator-arm.cc and simulator-mips.cc DEFINE_bool(trace_sim, false, "Trace simulator execution") @@ -444,6 +493,10 @@ DEFINE_string(testing_serialization_file, "/tmp/serdes", "file in which to serialize heap") #endif +// mksnapshot.cc +DEFINE_string(extra_code, NULL, "A filename with extra code to be included in" + " the snapshot (mksnapshot only)") + // // Dev shell flags // @@ -529,7 +582,8 @@ DEFINE_bool(gc_greedy, false, "perform GC prior to some allocations") DEFINE_bool(gc_verbose, false, "print stuff during garbage collection") DEFINE_bool(heap_stats, false, "report heap statistics before and after GC") DEFINE_bool(code_stats, false, "report code statistics after GC") -DEFINE_bool(verify_heap, false, "verify heap pointers before and after GC") +DEFINE_bool(verify_native_context_separation, false, + "verify that code holds on to at most one native context after GC") DEFINE_bool(print_handles, false, "report handles after GC") DEFINE_bool(print_global_handles, false, "report global handles after GC") @@ -602,6 +656,8 @@ DEFINE_bool(sliding_state_window, false, "Update sliding state window counters.") DEFINE_string(logfile, "v8.log", "Specify the name of the log file.") DEFINE_bool(ll_prof, false, "Enable low-level linux profiler.") +DEFINE_string(gc_fake_mmap, "/tmp/__v8_gc__", + "Specify the name of the file for fake gc mmap used in ll_prof") // // Disassembler only flags |