|
160 | 160 | # Enables various testing features.
|
161 | 161 | 'v8_enable_test_features%': 0,
|
162 | 162 |
|
163 |
| - # Enables raw heap snapshots containing internals. Used for debugging memory |
164 |
| - # on platform and embedder level. |
165 |
| - 'v8_enable_raw_heap_snapshots%': 0, |
| 163 | + # Enable the Maglev compiler. |
| 164 | + # Sets -dV8_ENABLE_MAGLEV |
| 165 | + 'v8_enable_maglev%': 0, |
166 | 166 |
|
167 | 167 | # With post mortem support enabled, metadata is embedded into libv8 that
|
168 | 168 | # describes various parameters of the VM for use by debuggers. See
|
|
179 | 179 | # Controls the threshold for on-heap/off-heap Typed Arrays.
|
180 | 180 | 'v8_typed_array_max_size_in_heap%': 64,
|
181 | 181 |
|
182 |
| - # Enable minor mark compact. |
183 |
| - 'v8_enable_minor_mc%': 1, |
184 |
| - |
185 | 182 | # Enable lazy source positions by default.
|
186 | 183 | 'v8_enable_lazy_source_positions%': 1,
|
187 | 184 |
|
|
217 | 214 | # Sets -DV8_COMPRESS_ZONES.
|
218 | 215 | 'v8_enable_zone_compression%': 0,
|
219 | 216 |
|
| 217 | + # Enable the experimental V8 sandbox. |
| 218 | + # Sets -DV8_SANDBOX. |
| 219 | + 'v8_enable_sandbox%': 0, |
| 220 | + |
| 221 | + # Enable external pointer sandboxing. Requires v8_enable_sandbox. |
| 222 | + # Sets -DV8_SANDBOXED_EXTERNAL_POINRTERS. |
| 223 | + 'v8_enable_sandboxed_external_pointers%': 0, |
| 224 | + |
| 225 | + # Enable sandboxed pointers. Requires v8_enable_sandbox. |
| 226 | + # Sets -DV8_SANDBOXED_POINTERS. |
| 227 | + 'v8_enable_sandboxed_pointers%': 0, |
| 228 | + |
220 | 229 | # Experimental feature for collecting per-class zone memory stats.
|
221 | 230 | # Requires use_rtti = true
|
222 | 231 | 'v8_enable_precise_zone_stats%': 0,
|
223 | 232 |
|
| 233 | + # Experimental feature that uses SwissNameDictionary instead of NameDictionary |
| 234 | + # as the backing store for all dictionary mode objects. |
| 235 | + 'v8_enable_swiss_name_dictionary%': 0, |
| 236 | + |
224 | 237 | # Experimental feature for tracking constness of properties in non-global
|
225 | 238 | # dictionaries. Enabling this also always keeps prototypes in dict mode,
|
226 | 239 | # meaning that they are not switched to fast mode.
|
227 | 240 | # Sets -DV8_DICT_PROPERTY_CONST_TRACKING
|
228 | 241 | 'v8_dict_property_const_tracking%': 0,
|
229 | 242 |
|
| 243 | + # Allow for JS promise hooks (instead of just C++). |
| 244 | + 'v8_enable_javascript_promise_hooks%': 0, |
| 245 | + |
230 | 246 | # Enable allocation folding globally (sets -dV8_ALLOCATION_FOLDING).
|
231 | 247 | # When it's disabled, the --turbo-allocation-folding runtime flag will be ignored.
|
232 | 248 | 'v8_enable_allocation_folding%': 1,
|
233 | 249 |
|
| 250 | + # Enable runtime verification of heap snapshots produced for devtools. |
| 251 | + 'v8_enable_heap_snapshot_verify%': 0, |
| 252 | + |
234 | 253 | # Enable global allocation site tracking.
|
235 | 254 | 'v8_allocation_site_tracking%': 1,
|
236 | 255 |
|
237 | 256 | 'v8_scriptormodule_legacy_lifetime%': 1,
|
238 | 257 |
|
239 |
| - 'v8_include_receiver_in_argc%': 1, |
| 258 | + # Change code emission and runtime features to be CET shadow-stack compliant |
| 259 | + # (incomplete and experimental). |
| 260 | + 'v8_enable_cet_shadow_stack%': 0, |
240 | 261 |
|
241 | 262 | # Variables from v8.gni
|
242 | 263 |
|
|
270 | 291 | ['v8_promise_internal_field_count!=0', {
|
271 | 292 | 'defines': ['V8_PROMISE_INTERNAL_FIELD_COUNT=<(v8_promise_internal_field_count)'],
|
272 | 293 | }],
|
273 |
| - ['v8_enable_raw_heap_snapshots==1', { |
274 |
| - 'defines': ['V8_ENABLE_RAW_HEAP_SNAPSHOTS',], |
275 |
| - }], |
276 | 294 | ['v8_enable_future==1', {
|
277 | 295 | 'defines': ['V8_ENABLE_FUTURE',],
|
278 | 296 | }],
|
|
285 | 303 | ['v8_enable_hugepage==1', {
|
286 | 304 | 'defines': ['ENABLE_HUGEPAGE',],
|
287 | 305 | }],
|
288 |
| - ['v8_enable_minor_mc==1', { |
289 |
| - 'defines': ['ENABLE_MINOR_MC',], |
290 |
| - }], |
291 | 306 | ['v8_enable_pointer_compression==1', {
|
292 | 307 | 'defines': [
|
293 | 308 | 'V8_COMPRESS_POINTERS',
|
|
303 | 318 | ['v8_enable_zone_compression==1', {
|
304 | 319 | 'defines': ['V8_COMPRESS_ZONES',],
|
305 | 320 | }],
|
| 321 | + ['v8_enable_sandbox==1', { |
| 322 | + 'defines': ['V8_SANDBOX',], |
| 323 | + }], |
| 324 | + ['v8_enable_sandboxed_pointers==1', { |
| 325 | + 'defines': ['V8_SANDBOXED_POINTERS',], |
| 326 | + }], |
| 327 | + ['v8_enable_sandboxed_external_pointers==1', { |
| 328 | + 'defines': ['V8_SANDBOXED_EXTERNAL_POINTERS',], |
| 329 | + }], |
306 | 330 | ['v8_enable_object_print==1', {
|
307 | 331 | 'defines': ['OBJECT_PRINT',],
|
308 | 332 | }],
|
|
348 | 372 | # ['v8_enable_handle_zapping==1', {
|
349 | 373 | # 'defines': ['ENABLE_HANDLE_ZAPPING',],
|
350 | 374 | # }],
|
| 375 | + ['v8_enable_heap_snapshot_verify==1', { |
| 376 | + 'defines': ['V8_ENABLE_HEAP_SNAPSHOT_VERIFY',], |
| 377 | + }], |
351 | 378 | ['v8_enable_snapshot_native_code_counters==1', {
|
352 | 379 | 'defines': ['V8_SNAPSHOT_NATIVE_CODE_COUNTERS',],
|
353 | 380 | }],
|
|
390 | 417 | ['v8_control_flow_integrity==1', {
|
391 | 418 | 'defines': ['V8_ENABLE_CONTROL_FLOW_INTEGRITY',],
|
392 | 419 | }],
|
| 420 | + ['v8_enable_cet_shadow_stack==1', { |
| 421 | + 'defines': ['V8_ENABLE_CET_SHADOW_STACK',], |
| 422 | + }], |
393 | 423 | ['v8_enable_precise_zone_stats==1', {
|
394 | 424 | 'defines': ['V8_ENABLE_PRECISE_ZONE_STATS',],
|
395 | 425 | }],
|
| 426 | + ['v8_enable_maglev==1', { |
| 427 | + 'defines': ['V8_ENABLE_MAGLEV',], |
| 428 | + }], |
| 429 | + ['v8_enable_swiss_name_dictionary==1', { |
| 430 | + 'defines': ['V8_ENABLE_SWISS_NAME_DICTIONARY',], |
| 431 | + }], |
396 | 432 | ['v8_enable_system_instrumentation==1', {
|
397 | 433 | 'defines': ['V8_ENABLE_SYSTEM_INSTRUMENTATION',],
|
398 | 434 | }],
|
|
402 | 438 | ['v8_dict_property_const_tracking==1', {
|
403 | 439 | 'defines': ['V8_DICT_PROPERTY_CONST_TRACKING',],
|
404 | 440 | }],
|
| 441 | + ['v8_enable_javascript_promise_hooks==1', { |
| 442 | + 'defines': ['V8_ENABLE_JAVASCRIPT_PROMISE_HOOKS',], |
| 443 | + }], |
405 | 444 | ['v8_enable_allocation_folding==1', {
|
406 | 445 | 'defines': ['V8_ALLOCATION_FOLDING',],
|
407 | 446 | }],
|
|
414 | 453 | ['v8_advanced_bigint_algorithms==1', {
|
415 | 454 | 'defines': ['V8_ADVANCED_BIGINT_ALGORITHMS',],
|
416 | 455 | }],
|
417 |
| - ['v8_include_receiver_in_argc==1', { |
418 |
| - 'defines': ['V8_INCLUDE_RECEIVER_IN_ARGC',], |
419 |
| - }], |
420 | 456 | ], # conditions
|
421 | 457 | 'defines': [
|
422 | 458 | 'V8_GYP_BUILD',
|
|
0 commit comments