OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This file defines all of the flags. It is separated into different section, | 5 // This file defines all of the flags. It is separated into different section, |
6 // for Debug, Release, Logging and Profiling, etc. To add a new flag, find the | 6 // for Debug, Release, Logging and Profiling, etc. To add a new flag, find the |
7 // correct section, and use one of the DEFINE_ macros, without a trailing ';'. | 7 // correct section, and use one of the DEFINE_ macros, without a trailing ';'. |
8 // | 8 // |
9 // This include does not have a guard, because it is a template-style include, | 9 // This include does not have a guard, because it is a template-style include, |
10 // which can be included multiple times in different modes. It expects to have | 10 // which can be included multiple times in different modes. It expects to have |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 // Flags for language modes and experimental language features. | 145 // Flags for language modes and experimental language features. |
146 DEFINE_bool(use_strict, false, "enforce strict mode") | 146 DEFINE_bool(use_strict, false, "enforce strict mode") |
147 DEFINE_bool(es_staging, false, "enable upcoming ES6+ features") | 147 DEFINE_bool(es_staging, false, "enable upcoming ES6+ features") |
148 | 148 |
149 DEFINE_bool(harmony_typeof, false, "enable harmony semantics for typeof") | 149 DEFINE_bool(harmony_typeof, false, "enable harmony semantics for typeof") |
150 DEFINE_bool(harmony_scoping, false, "enable harmony block scoping") | 150 DEFINE_bool(harmony_scoping, false, "enable harmony block scoping") |
151 DEFINE_bool(harmony_modules, false, | 151 DEFINE_bool(harmony_modules, false, |
152 "enable harmony modules (implies block scoping)") | 152 "enable harmony modules (implies block scoping)") |
153 DEFINE_bool(harmony_symbols, false, | 153 DEFINE_bool(harmony_symbols, false, |
154 "enable harmony symbols (a.k.a. private names)") | 154 "enable harmony symbols (a.k.a. private names)") |
155 DEFINE_bool(harmony_promises, false, "enable harmony promises") | |
156 DEFINE_bool(harmony_proxies, false, "enable harmony proxies") | 155 DEFINE_bool(harmony_proxies, false, "enable harmony proxies") |
157 DEFINE_bool(harmony_collections, false, | 156 DEFINE_bool(harmony_collections, false, |
158 "enable harmony collections (sets, maps, weak sets, weak maps)") | 157 "enable harmony collections (sets, maps)") |
159 DEFINE_bool(harmony_weak_collections, false, | |
160 "enable only harmony weak collections (weak sets and maps)") | |
161 DEFINE_bool(harmony_generators, false, "enable harmony generators") | 158 DEFINE_bool(harmony_generators, false, "enable harmony generators") |
162 DEFINE_bool(harmony_iteration, false, "enable harmony iteration (for-of)") | 159 DEFINE_bool(harmony_iteration, false, "enable harmony iteration (for-of)") |
163 DEFINE_bool(harmony_numeric_literals, false, | 160 DEFINE_bool(harmony_numeric_literals, false, |
164 "enable harmony numeric literals (0o77, 0b11)") | 161 "enable harmony numeric literals (0o77, 0b11)") |
165 DEFINE_bool(harmony_strings, false, "enable harmony string") | 162 DEFINE_bool(harmony_strings, false, "enable harmony string") |
166 DEFINE_bool(harmony_arrays, false, "enable harmony arrays") | 163 DEFINE_bool(harmony_arrays, false, "enable harmony arrays") |
167 DEFINE_bool(harmony_maths, false, "enable harmony math functions") | 164 DEFINE_bool(harmony_maths, false, "enable harmony math functions") |
168 DEFINE_bool(harmony, false, "enable all harmony features (except typeof)") | 165 DEFINE_bool(harmony, false, "enable all harmony features (except typeof)") |
169 | 166 |
170 DEFINE_implication(harmony, harmony_scoping) | 167 DEFINE_implication(harmony, harmony_scoping) |
171 DEFINE_implication(harmony, harmony_modules) | 168 DEFINE_implication(harmony, harmony_modules) |
172 DEFINE_implication(harmony, harmony_symbols) | 169 DEFINE_implication(harmony, harmony_symbols) |
173 DEFINE_implication(harmony, harmony_proxies) | 170 DEFINE_implication(harmony, harmony_proxies) |
174 DEFINE_implication(harmony, harmony_collections) | 171 DEFINE_implication(harmony, harmony_collections) |
175 DEFINE_implication(harmony, harmony_generators) | 172 DEFINE_implication(harmony, harmony_generators) |
176 DEFINE_implication(harmony, harmony_iteration) | 173 DEFINE_implication(harmony, harmony_iteration) |
177 DEFINE_implication(harmony, harmony_numeric_literals) | 174 DEFINE_implication(harmony, harmony_numeric_literals) |
178 DEFINE_implication(harmony, harmony_strings) | 175 DEFINE_implication(harmony, harmony_strings) |
179 DEFINE_implication(harmony, harmony_arrays) | 176 DEFINE_implication(harmony, harmony_arrays) |
180 DEFINE_implication(harmony_collections, harmony_weak_collections) | |
181 DEFINE_implication(harmony_promises, harmony_weak_collections) | |
182 DEFINE_implication(harmony_modules, harmony_scoping) | 177 DEFINE_implication(harmony_modules, harmony_scoping) |
183 | 178 |
184 DEFINE_implication(harmony, es_staging) | 179 DEFINE_implication(harmony, es_staging) |
185 DEFINE_implication(es_staging, harmony_maths) | 180 DEFINE_implication(es_staging, harmony_maths) |
186 DEFINE_implication(es_staging, harmony_promises) | |
187 DEFINE_implication(es_staging, harmony_weak_collections) | |
188 | 181 |
189 // Flags for experimental implementation features. | 182 // Flags for experimental implementation features. |
190 DEFINE_bool(packed_arrays, true, "optimizes arrays that have no holes") | 183 DEFINE_bool(packed_arrays, true, "optimizes arrays that have no holes") |
191 DEFINE_bool(smi_only_arrays, true, "tracks arrays with only smi values") | 184 DEFINE_bool(smi_only_arrays, true, "tracks arrays with only smi values") |
192 DEFINE_bool(compiled_keyed_dictionary_loads, true, | 185 DEFINE_bool(compiled_keyed_dictionary_loads, true, |
193 "use optimizing compiler to generate keyed dictionary load stubs") | 186 "use optimizing compiler to generate keyed dictionary load stubs") |
194 DEFINE_bool(clever_optimizations, true, | 187 DEFINE_bool(clever_optimizations, true, |
195 "Optimize object size, Array shift, DOM strings and string +") | 188 "Optimize object size, Array shift, DOM strings and string +") |
196 DEFINE_bool(pretenuring, true, "allocate objects in old space") | 189 DEFINE_bool(pretenuring, true, "allocate objects in old space") |
197 // TODO(hpayer): We will remove this flag as soon as we have pretenuring | 190 // TODO(hpayer): We will remove this flag as soon as we have pretenuring |
(...skipping 707 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
905 #undef DEFINE_ALIAS_float | 898 #undef DEFINE_ALIAS_float |
906 #undef DEFINE_ALIAS_args | 899 #undef DEFINE_ALIAS_args |
907 | 900 |
908 #undef FLAG_MODE_DECLARE | 901 #undef FLAG_MODE_DECLARE |
909 #undef FLAG_MODE_DEFINE | 902 #undef FLAG_MODE_DEFINE |
910 #undef FLAG_MODE_DEFINE_DEFAULTS | 903 #undef FLAG_MODE_DEFINE_DEFAULTS |
911 #undef FLAG_MODE_META | 904 #undef FLAG_MODE_META |
912 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 905 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
913 | 906 |
914 #undef COMMA | 907 #undef COMMA |
OLD | NEW |