| 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 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 212 V(harmony_exponentiation_operator, "harmony exponentiation operator `**`") | 212 V(harmony_exponentiation_operator, "harmony exponentiation operator `**`") |
| 213 | 213 |
| 214 // Features that are shipping (turned on by default, but internal flag remains). | 214 // Features that are shipping (turned on by default, but internal flag remains). |
| 215 #define HARMONY_SHIPPING(V) \ | 215 #define HARMONY_SHIPPING(V) \ |
| 216 V(harmony_array_prototype_values, "harmony Array.prototype.values") \ | 216 V(harmony_array_prototype_values, "harmony Array.prototype.values") \ |
| 217 V(harmony_function_name, "harmony Function name inference") \ | 217 V(harmony_function_name, "harmony Function name inference") \ |
| 218 V(harmony_instanceof, "harmony instanceof support") \ | 218 V(harmony_instanceof, "harmony instanceof support") \ |
| 219 V(harmony_iterator_close, "harmony iterator finalization") \ | 219 V(harmony_iterator_close, "harmony iterator finalization") \ |
| 220 V(harmony_unicode_regexps, "harmony unicode regexps") \ | 220 V(harmony_unicode_regexps, "harmony unicode regexps") \ |
| 221 V(harmony_regexp_exec, "harmony RegExp exec override behavior") \ | 221 V(harmony_regexp_exec, "harmony RegExp exec override behavior") \ |
| 222 V(harmony_sloppy, "harmony features in sloppy mode") \ | |
| 223 V(harmony_sloppy_let, "harmony let in sloppy mode") \ | |
| 224 V(harmony_sloppy_function, "harmony sloppy function block scoping") \ | |
| 225 V(harmony_regexp_subclass, "harmony regexp subclassing") \ | 222 V(harmony_regexp_subclass, "harmony regexp subclassing") \ |
| 226 V(harmony_restrictive_declarations, \ | 223 V(harmony_restrictive_declarations, \ |
| 227 "harmony limitations on sloppy mode function declarations") \ | 224 "harmony limitations on sloppy mode function declarations") \ |
| 228 V(harmony_species, "harmony Symbol.species") | 225 V(harmony_species, "harmony Symbol.species") |
| 229 | 226 |
| 230 // Once a shipping feature has proved stable in the wild, it will be dropped | 227 // Once a shipping feature has proved stable in the wild, it will be dropped |
| 231 // from HARMONY_SHIPPING, all occurrences of the FLAG_ variable are removed, | 228 // from HARMONY_SHIPPING, all occurrences of the FLAG_ variable are removed, |
| 232 // and associated tests are moved from the harmony directory to the appropriate | 229 // and associated tests are moved from the harmony directory to the appropriate |
| 233 // esN directory. | 230 // esN directory. |
| 234 | 231 |
| 235 | 232 |
| 236 #define FLAG_INPROGRESS_FEATURES(id, description) \ | 233 #define FLAG_INPROGRESS_FEATURES(id, description) \ |
| 237 DEFINE_BOOL(id, false, "enable " #description " (in progress)") | 234 DEFINE_BOOL(id, false, "enable " #description " (in progress)") |
| 238 HARMONY_INPROGRESS(FLAG_INPROGRESS_FEATURES) | 235 HARMONY_INPROGRESS(FLAG_INPROGRESS_FEATURES) |
| 239 #undef FLAG_INPROGRESS_FEATURES | 236 #undef FLAG_INPROGRESS_FEATURES |
| 240 | 237 |
| 241 #define FLAG_STAGED_FEATURES(id, description) \ | 238 #define FLAG_STAGED_FEATURES(id, description) \ |
| 242 DEFINE_BOOL(id, false, "enable " #description) \ | 239 DEFINE_BOOL(id, false, "enable " #description) \ |
| 243 DEFINE_IMPLICATION(harmony, id) | 240 DEFINE_IMPLICATION(harmony, id) |
| 244 HARMONY_STAGED(FLAG_STAGED_FEATURES) | 241 HARMONY_STAGED(FLAG_STAGED_FEATURES) |
| 245 #undef FLAG_STAGED_FEATURES | 242 #undef FLAG_STAGED_FEATURES |
| 246 | 243 |
| 247 #define FLAG_SHIPPING_FEATURES(id, description) \ | 244 #define FLAG_SHIPPING_FEATURES(id, description) \ |
| 248 DEFINE_BOOL(id, true, "enable " #description) \ | 245 DEFINE_BOOL(id, true, "enable " #description) \ |
| 249 DEFINE_NEG_NEG_IMPLICATION(harmony_shipping, id) | 246 DEFINE_NEG_NEG_IMPLICATION(harmony_shipping, id) |
| 250 HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) | 247 HARMONY_SHIPPING(FLAG_SHIPPING_FEATURES) |
| 251 #undef FLAG_SHIPPING_FEATURES | 248 #undef FLAG_SHIPPING_FEATURES |
| 252 | 249 |
| 253 | |
| 254 // Feature dependencies. | |
| 255 DEFINE_IMPLICATION(harmony_sloppy_let, harmony_sloppy) | |
| 256 DEFINE_IMPLICATION(harmony_sloppy_function, harmony_sloppy) | |
| 257 | |
| 258 // Flags for experimental implementation features. | 250 // Flags for experimental implementation features. |
| 259 DEFINE_BOOL(compiled_keyed_generic_loads, false, | 251 DEFINE_BOOL(compiled_keyed_generic_loads, false, |
| 260 "use optimizing compiler to generate keyed generic load stubs") | 252 "use optimizing compiler to generate keyed generic load stubs") |
| 261 DEFINE_BOOL(allocation_site_pretenuring, true, | 253 DEFINE_BOOL(allocation_site_pretenuring, true, |
| 262 "pretenure with allocation sites") | 254 "pretenure with allocation sites") |
| 263 DEFINE_BOOL(trace_pretenuring, false, | 255 DEFINE_BOOL(trace_pretenuring, false, |
| 264 "trace pretenuring decisions of HAllocate instructions") | 256 "trace pretenuring decisions of HAllocate instructions") |
| 265 DEFINE_BOOL(trace_pretenuring_statistics, false, | 257 DEFINE_BOOL(trace_pretenuring_statistics, false, |
| 266 "trace allocation site pretenuring statistics") | 258 "trace allocation site pretenuring statistics") |
| 267 DEFINE_BOOL(track_fields, true, "track fields with only smi values") | 259 DEFINE_BOOL(track_fields, true, "track fields with only smi values") |
| (...skipping 894 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1162 #undef DEFINE_ALIAS_FLOAT | 1154 #undef DEFINE_ALIAS_FLOAT |
| 1163 #undef DEFINE_ALIAS_ARGS | 1155 #undef DEFINE_ALIAS_ARGS |
| 1164 | 1156 |
| 1165 #undef FLAG_MODE_DECLARE | 1157 #undef FLAG_MODE_DECLARE |
| 1166 #undef FLAG_MODE_DEFINE | 1158 #undef FLAG_MODE_DEFINE |
| 1167 #undef FLAG_MODE_DEFINE_DEFAULTS | 1159 #undef FLAG_MODE_DEFINE_DEFAULTS |
| 1168 #undef FLAG_MODE_META | 1160 #undef FLAG_MODE_META |
| 1169 #undef FLAG_MODE_DEFINE_IMPLICATIONS | 1161 #undef FLAG_MODE_DEFINE_IMPLICATIONS |
| 1170 | 1162 |
| 1171 #undef COMMA | 1163 #undef COMMA |
| OLD | NEW |