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 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
173 | 173 |
174 // Flags for language modes and experimental language features. | 174 // Flags for language modes and experimental language features. |
175 DEFINE_BOOL(use_strict, false, "enforce strict mode") | 175 DEFINE_BOOL(use_strict, false, "enforce strict mode") |
176 | 176 |
177 DEFINE_BOOL(es_staging, false, | 177 DEFINE_BOOL(es_staging, false, |
178 "enable test-worthy harmony features (for internal use only)") | 178 "enable test-worthy harmony features (for internal use only)") |
179 DEFINE_BOOL(harmony, false, "enable all completed harmony features") | 179 DEFINE_BOOL(harmony, false, "enable all completed harmony features") |
180 DEFINE_BOOL(harmony_shipping, true, "enable all shipped harmony features") | 180 DEFINE_BOOL(harmony_shipping, true, "enable all shipped harmony features") |
181 DEFINE_IMPLICATION(es_staging, harmony) | 181 DEFINE_IMPLICATION(es_staging, harmony) |
182 | 182 |
183 #ifdef V8_I18N_SUPPORT | |
183 DEFINE_BOOL(intl_extra, false, "additional V8 Intl functions") | 184 DEFINE_BOOL(intl_extra, false, "additional V8 Intl functions") |
184 // Removing extra Intl functions is shipped | 185 // Removing extra Intl functions is shipped |
185 DEFINE_NEG_VALUE_IMPLICATION(harmony_shipping, intl_extra, true) | 186 DEFINE_NEG_VALUE_IMPLICATION(harmony_shipping, intl_extra, true) |
187 #endif | |
186 | 188 |
187 // Activate on ClusterFuzz. | 189 // Activate on ClusterFuzz. |
188 DEFINE_IMPLICATION(es_staging, harmony_regexp_lookbehind) | 190 DEFINE_IMPLICATION(es_staging, harmony_regexp_lookbehind) |
189 DEFINE_IMPLICATION(es_staging, move_object_start) | 191 DEFINE_IMPLICATION(es_staging, move_object_start) |
190 | 192 |
191 // Features that are still work in progress (behind individual flags). | 193 // Features that are still work in progress (behind individual flags). |
192 #define HARMONY_INPROGRESS(V) \ | 194 #define HARMONY_INPROGRESS(V) \ |
193 V(harmony_array_prototype_values, "harmony Array.prototype.values") \ | 195 V(harmony_array_prototype_values, "harmony Array.prototype.values") \ |
194 V(harmony_function_sent, "harmony function.sent") \ | 196 V(harmony_function_sent, "harmony function.sent") \ |
195 V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \ | 197 V(harmony_sharedarraybuffer, "harmony sharedarraybuffer") \ |
196 V(harmony_simd, "harmony simd") \ | 198 V(harmony_simd, "harmony simd") \ |
197 V(harmony_explicit_tailcalls, "harmony explicit tail calls") \ | 199 V(harmony_explicit_tailcalls, "harmony explicit tail calls") \ |
198 V(harmony_do_expressions, "harmony do-expressions") \ | 200 V(harmony_do_expressions, "harmony do-expressions") \ |
199 V(harmony_restrictive_generators, \ | 201 V(harmony_restrictive_generators, \ |
200 "harmony restrictions on generator declarations") \ | 202 "harmony restrictions on generator declarations") \ |
201 V(harmony_regexp_named_captures, "harmony regexp named captures") \ | 203 V(harmony_regexp_named_captures, "harmony regexp named captures") \ |
202 V(harmony_regexp_property, "harmony unicode regexp property classes") \ | 204 V(harmony_regexp_property, "harmony unicode regexp property classes") \ |
203 V(harmony_for_in, "harmony for-in syntax") \ | 205 V(harmony_for_in, "harmony for-in syntax") \ |
204 V(harmony_trailing_commas, \ | 206 V(harmony_trailing_commas, \ |
205 "harmony trailing commas in function parameter lists") | 207 "harmony trailing commas in function parameter lists") |
206 | 208 |
207 // Features that are complete (but still behind --harmony/es-staging flag). | 209 // Features that are complete (but still behind --harmony/es-staging flag). |
208 #define HARMONY_STAGED_BASE(V) \ | 210 #define HARMONY_STAGED_BASE(V) \ |
209 V(harmony_regexp_lookbehind, "harmony regexp lookbehind") \ | 211 V(harmony_regexp_lookbehind, "harmony regexp lookbehind") \ |
210 V(harmony_tailcalls, "harmony tail calls") \ | 212 V(harmony_tailcalls, "harmony tail calls") \ |
211 V(harmony_async_await, "harmony async-await") \ | 213 V(harmony_async_await, "harmony async-await") \ |
212 V(harmony_string_padding, "harmony String-padding methods") | 214 V(harmony_string_padding, "harmony String-padding methods") |
213 | 215 |
214 #ifdef V8_I18N_SUPPORT | 216 #ifdef V8_I18N_SUPPORT |
215 #define HARMONY_STAGED(V) \ | 217 #define HARMONY_STAGED(V) \ |
216 HARMONY_STAGED_BASE(V) \ | 218 HARMONY_STAGED_BASE(V) \ |
219 V(datetime_format_to_parts, "Intl.DateTimeFormat.formatToParts") \ | |
Dan Ehrenberg
2016/09/06 19:39:29
Please check this in initially as INPROGRESS; I wa
jungshik at Google
2016/09/06 21:35:14
Well, for local testing, I don't need it either be
| |
217 V(icu_case_mapping, "case mapping with ICU rather than Unibrow") | 220 V(icu_case_mapping, "case mapping with ICU rather than Unibrow") |
218 #else | 221 #else |
219 #define HARMONY_STAGED(V) HARMONY_STAGED_BASE(V) | 222 #define HARMONY_STAGED(V) HARMONY_STAGED_BASE(V) |
220 #endif | 223 #endif |
221 | 224 |
222 // Features that are shipping (turned on by default, but internal flag remains). | 225 // Features that are shipping (turned on by default, but internal flag remains). |
223 #define HARMONY_SHIPPING(V) \ | 226 #define HARMONY_SHIPPING(V) \ |
224 V(harmony_restrictive_declarations, \ | 227 V(harmony_restrictive_declarations, \ |
225 "harmony limitations on sloppy mode function declarations") \ | 228 "harmony limitations on sloppy mode function declarations") \ |
226 V(harmony_object_values_entries, "harmony Object.values / Object.entries") \ | 229 V(harmony_object_values_entries, "harmony Object.values / Object.entries") \ |
(...skipping 970 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1197 #undef DEFINE_ALIAS_FLOAT | 1200 #undef DEFINE_ALIAS_FLOAT |
1198 #undef DEFINE_ALIAS_ARGS | 1201 #undef DEFINE_ALIAS_ARGS |
1199 | 1202 |
1200 #undef FLAG_MODE_DECLARE | 1203 #undef FLAG_MODE_DECLARE |
1201 #undef FLAG_MODE_DEFINE | 1204 #undef FLAG_MODE_DEFINE |
1202 #undef FLAG_MODE_DEFINE_DEFAULTS | 1205 #undef FLAG_MODE_DEFINE_DEFAULTS |
1203 #undef FLAG_MODE_META | 1206 #undef FLAG_MODE_META |
1204 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1207 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
1205 | 1208 |
1206 #undef COMMA | 1209 #undef COMMA |
OLD | NEW |