Chromium Code Reviews| 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 |