Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: src/flag-definitions.h

Issue 907403002: [strong] Introduce --use-strong flag (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Added flag implication Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler.cc ('k') | src/objects.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 FLAG_ALIAS(STRING, const char*, alias, nam) 162 FLAG_ALIAS(STRING, const char*, alias, nam)
163 #define DEFINE_ALIAS_ARGS(alias, nam) FLAG_ALIAS(ARGS, JSArguments, alias, nam) 163 #define DEFINE_ALIAS_ARGS(alias, nam) FLAG_ALIAS(ARGS, JSArguments, alias, nam)
164 164
165 // 165 //
166 // Flags in all modes. 166 // Flags in all modes.
167 // 167 //
168 #define FLAG FLAG_FULL 168 #define FLAG FLAG_FULL
169 169
170 // Flags for language modes and experimental language features. 170 // Flags for language modes and experimental language features.
171 DEFINE_BOOL(use_strict, false, "enforce strict mode") 171 DEFINE_BOOL(use_strict, false, "enforce strict mode")
172 DEFINE_BOOL(use_strong, false, "enforce strong mode")
173 DEFINE_IMPLICATION(use_strong, use_strict)
174
175 DEFINE_BOOL(strong_mode, false, "experimental strong language mode")
176 DEFINE_IMPLICATION(use_strong, strong_mode)
172 177
173 DEFINE_BOOL(es_staging, false, "enable all completed harmony features") 178 DEFINE_BOOL(es_staging, false, "enable all completed harmony features")
174 DEFINE_BOOL(harmony, false, "enable all completed harmony features") 179 DEFINE_BOOL(harmony, false, "enable all completed harmony features")
175 DEFINE_BOOL(harmony_shipping, true, "enable all shipped harmony fetaures") 180 DEFINE_BOOL(harmony_shipping, true, "enable all shipped harmony fetaures")
176 DEFINE_IMPLICATION(harmony, es_staging) 181 DEFINE_IMPLICATION(harmony, es_staging)
177 DEFINE_IMPLICATION(es_staging, harmony) 182 DEFINE_IMPLICATION(es_staging, harmony)
178 183
179 // Features that are still work in progress (behind individual flags). 184 // Features that are still work in progress (behind individual flags).
180 #define HARMONY_INPROGRESS(V) \ 185 #define HARMONY_INPROGRESS(V) \
181 V(harmony_modules, "harmony modules (implies block scoping)") \ 186 V(harmony_modules, "harmony modules (implies block scoping)") \
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 DEFINE_IMPLICATION(track_double_fields, track_fields) 259 DEFINE_IMPLICATION(track_double_fields, track_fields)
255 DEFINE_IMPLICATION(track_heap_object_fields, track_fields) 260 DEFINE_IMPLICATION(track_heap_object_fields, track_fields)
256 DEFINE_IMPLICATION(track_computed_fields, track_fields) 261 DEFINE_IMPLICATION(track_computed_fields, track_fields)
257 DEFINE_BOOL(track_field_types, true, "track field types") 262 DEFINE_BOOL(track_field_types, true, "track field types")
258 DEFINE_IMPLICATION(track_field_types, track_fields) 263 DEFINE_IMPLICATION(track_field_types, track_fields)
259 DEFINE_IMPLICATION(track_field_types, track_heap_object_fields) 264 DEFINE_IMPLICATION(track_field_types, track_heap_object_fields)
260 DEFINE_BOOL(smi_binop, true, "support smi representation in binary operations") 265 DEFINE_BOOL(smi_binop, true, "support smi representation in binary operations")
261 DEFINE_BOOL(vector_ics, false, "support vector-based ics") 266 DEFINE_BOOL(vector_ics, false, "support vector-based ics")
262 DEFINE_BOOL(experimental_classes, false, 267 DEFINE_BOOL(experimental_classes, false,
263 "experimental new semantics for super() calls") 268 "experimental new semantics for super() calls")
264 DEFINE_BOOL(strong_mode, false, "experimental strong language mode")
265 DEFINE_IMPLICATION(experimental_classes, harmony_classes) 269 DEFINE_IMPLICATION(experimental_classes, harmony_classes)
266 DEFINE_IMPLICATION(experimental_classes, harmony_object_literals) 270 DEFINE_IMPLICATION(experimental_classes, harmony_object_literals)
267 271
268 // Flags for optimization types. 272 // Flags for optimization types.
269 DEFINE_BOOL(optimize_for_size, false, 273 DEFINE_BOOL(optimize_for_size, false,
270 "Enables optimizations which favor memory size over execution " 274 "Enables optimizations which favor memory size over execution "
271 "speed.") 275 "speed.")
272 276
273 DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1) 277 DEFINE_VALUE_IMPLICATION(optimize_for_size, max_semi_space_size, 1)
274 278
(...skipping 746 matching lines...) Expand 10 before | Expand all | Expand 10 after
1021 #undef DEFINE_ALIAS_FLOAT 1025 #undef DEFINE_ALIAS_FLOAT
1022 #undef DEFINE_ALIAS_ARGS 1026 #undef DEFINE_ALIAS_ARGS
1023 1027
1024 #undef FLAG_MODE_DECLARE 1028 #undef FLAG_MODE_DECLARE
1025 #undef FLAG_MODE_DEFINE 1029 #undef FLAG_MODE_DEFINE
1026 #undef FLAG_MODE_DEFINE_DEFAULTS 1030 #undef FLAG_MODE_DEFINE_DEFAULTS
1027 #undef FLAG_MODE_META 1031 #undef FLAG_MODE_META
1028 #undef FLAG_MODE_DEFINE_IMPLICATIONS 1032 #undef FLAG_MODE_DEFINE_IMPLICATIONS
1029 1033
1030 #undef COMMA 1034 #undef COMMA
OLDNEW
« no previous file with comments | « src/compiler.cc ('k') | src/objects.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698