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 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 174 | 174 |
| 175 DEFINE_BOOL(strong_mode, false, "experimental strong language mode") | 175 DEFINE_BOOL(strong_mode, false, "experimental strong language mode") |
| 176 DEFINE_IMPLICATION(use_strong, strong_mode) | 176 DEFINE_IMPLICATION(use_strong, strong_mode) |
| 177 | 177 |
| 178 DEFINE_BOOL(es_staging, false, "enable all completed harmony features") | 178 DEFINE_BOOL(es_staging, false, "enable all completed harmony features") |
| 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 fetaures") | 180 DEFINE_BOOL(harmony_shipping, true, "enable all shipped harmony fetaures") |
| 181 DEFINE_IMPLICATION(harmony, es_staging) | 181 DEFINE_IMPLICATION(harmony, es_staging) |
| 182 DEFINE_IMPLICATION(es_staging, harmony) | 182 DEFINE_IMPLICATION(es_staging, harmony) |
| 183 | 183 |
| 184 | |
| 184 // Features that are still work in progress (behind individual flags). | 185 // Features that are still work in progress (behind individual flags). |
| 185 #define HARMONY_INPROGRESS(V) \ | 186 #define HARMONY_INPROGRESS(V) \ |
| 186 V(harmony_modules, "harmony modules (implies block scoping)") \ | 187 V(harmony_modules, "harmony modules (implies block scoping)") \ |
| 187 V(harmony_arrays, "harmony array methods") \ | 188 V(harmony_arrays, "harmony array methods") \ |
| 188 V(harmony_array_includes, "harmony Array.prototype.includes") \ | 189 V(harmony_array_includes, "harmony Array.prototype.includes") \ |
| 189 V(harmony_regexps, "harmony regular expression extensions") \ | 190 V(harmony_regexps, "harmony regular expression extensions") \ |
| 190 V(harmony_arrow_functions, "harmony arrow functions") \ | 191 V(harmony_arrow_functions, "harmony arrow functions") \ |
| 191 V(harmony_proxies, "harmony proxies") \ | 192 V(harmony_proxies, "harmony proxies") \ |
| 192 V(harmony_sloppy, "harmony features in sloppy mode") \ | 193 V(harmony_sloppy, "harmony features in sloppy mode") \ |
| 193 V(harmony_unicode, "harmony unicode escapes") \ | 194 V(harmony_unicode, "harmony unicode escapes") \ |
| 194 V(harmony_unicode_regexps, "harmony unicode regexps") \ | 195 V(harmony_unicode_regexps, "harmony unicode regexps") \ |
| 195 V(harmony_computed_property_names, "harmony computed property names") \ | 196 V(harmony_computed_property_names, "harmony computed property names") \ |
| 196 V(harmony_rest_parameters, "harmony rest parameters") \ | 197 V(harmony_rest_parameters, "harmony rest parameters") \ |
| 198 V(harmony_spread, "harmony spread operator") \ | |
| 199 V(harmony_spreadcalls, "harmony spread-calls") | |
|
rossberg
2015/02/25 14:28:18
Nit: spread_calls
| |
| 197 | 200 |
| 198 // Features that are complete (but still behind --harmony/es-staging flag). | 201 // Features that are complete (but still behind --harmony/es-staging flag). |
| 199 #define HARMONY_STAGED(V) \ | 202 #define HARMONY_STAGED(V) \ |
| 200 V(harmony_tostring, "harmony toString") \ | 203 V(harmony_tostring, "harmony toString") \ |
| 201 | 204 |
| 202 // Features that are shipping (turned on by default, but internal flag remains). | 205 // Features that are shipping (turned on by default, but internal flag remains). |
| 203 #define HARMONY_SHIPPING(V) \ | 206 #define HARMONY_SHIPPING(V) \ |
| 204 V(harmony_numeric_literals, "harmony numeric literals") \ | 207 V(harmony_numeric_literals, "harmony numeric literals") \ |
| 205 V(harmony_strings, "harmony string methods") \ | 208 V(harmony_strings, "harmony string methods") \ |
| 206 V(harmony_scoping, "harmony block scoping") \ | 209 V(harmony_scoping, "harmony block scoping") \ |
| (...skipping 24 matching lines...) Expand all Loading... | |
| 231 DEFINE_NEG_NEG_IMPLICATION(harmony_shipping, id) | 234 DEFINE_NEG_NEG_IMPLICATION(harmony_shipping, id) |
| 232 HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) | 235 HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) |
| 233 #undef FLAG_SHIPPING_FEATURES | 236 #undef FLAG_SHIPPING_FEATURES |
| 234 | 237 |
| 235 | 238 |
| 236 // Feature dependencies. | 239 // Feature dependencies. |
| 237 DEFINE_IMPLICATION(harmony_modules, harmony_scoping) | 240 DEFINE_IMPLICATION(harmony_modules, harmony_scoping) |
| 238 DEFINE_IMPLICATION(harmony_classes, harmony_scoping) | 241 DEFINE_IMPLICATION(harmony_classes, harmony_scoping) |
| 239 DEFINE_IMPLICATION(harmony_classes, harmony_object_literals) | 242 DEFINE_IMPLICATION(harmony_classes, harmony_object_literals) |
| 240 DEFINE_IMPLICATION(harmony_unicode_regexps, harmony_unicode) | 243 DEFINE_IMPLICATION(harmony_unicode_regexps, harmony_unicode) |
| 241 | 244 DEFINE_IMPLICATION(harmony_spreadcalls, harmony_spread) |
| 245 DEFINE_IMPLICATION(harmony_spread, harmony_spreadcalls) | |
| 242 | 246 |
| 243 // Flags for experimental implementation features. | 247 // Flags for experimental implementation features. |
| 244 DEFINE_BOOL(compiled_keyed_generic_loads, false, | 248 DEFINE_BOOL(compiled_keyed_generic_loads, false, |
| 245 "use optimizing compiler to generate keyed generic load stubs") | 249 "use optimizing compiler to generate keyed generic load stubs") |
| 246 // TODO(hpayer): We will remove this flag as soon as we have pretenuring | 250 // TODO(hpayer): We will remove this flag as soon as we have pretenuring |
| 247 // support for specific allocation sites. | 251 // support for specific allocation sites. |
| 248 DEFINE_BOOL(pretenuring_call_new, false, "pretenure call new") | 252 DEFINE_BOOL(pretenuring_call_new, false, "pretenure call new") |
| 249 DEFINE_BOOL(allocation_site_pretenuring, true, | 253 DEFINE_BOOL(allocation_site_pretenuring, true, |
| 250 "pretenure with allocation sites") | 254 "pretenure with allocation sites") |
| 251 DEFINE_BOOL(trace_pretenuring, false, | 255 DEFINE_BOOL(trace_pretenuring, false, |
| (...skipping 767 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1019 #undef DEFINE_ALIAS_FLOAT | 1023 #undef DEFINE_ALIAS_FLOAT |
| 1020 #undef DEFINE_ALIAS_ARGS | 1024 #undef DEFINE_ALIAS_ARGS |
| 1021 | 1025 |
| 1022 #undef FLAG_MODE_DECLARE | 1026 #undef FLAG_MODE_DECLARE |
| 1023 #undef FLAG_MODE_DEFINE | 1027 #undef FLAG_MODE_DEFINE |
| 1024 #undef FLAG_MODE_DEFINE_DEFAULTS | 1028 #undef FLAG_MODE_DEFINE_DEFAULTS |
| 1025 #undef FLAG_MODE_META | 1029 #undef FLAG_MODE_META |
| 1026 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1030 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
| 1027 | 1031 |
| 1028 #undef COMMA | 1032 #undef COMMA |
| OLD | NEW |