| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent c094bea commit db7f413
4 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -82,6 +82,7 @@ | |||
| 82 | 82 | 'v8_enable_direct_local%': 0, | |
| 83 | 83 | 'v8_enable_map_packing%': 0, | |
| 84 | 84 | 'v8_enable_pointer_compression_shared_cage%': 0, | |
| 85 | + 'v8_enable_external_code_space%': 0, | ||
| 85 | 86 | 'v8_enable_sandbox%': 0, | |
| 86 | 87 | 'v8_enable_v8_checks%': 0, | |
| 87 | 88 | 'v8_enable_zone_compression%': 0, | |
@@ -115,6 +116,7 @@ | |||
| 115 | 116 | ['target_arch in "arm ia32 mips mipsel"', { | |
| 116 | 117 | 'v8_enable_pointer_compression': 0, | |
| 117 | 118 | 'v8_enable_31bit_smis_on_64bit_arch': 0, | |
| 119 | + 'v8_enable_external_code_space': 0, | ||
| 118 | 120 | 'v8_enable_sandbox': 0 | |
| 119 | 121 | }], | |
| 120 | 122 | ['target_arch in "ppc64 s390x"', { | |
@@ -458,6 +460,9 @@ | |||
| 458 | 460 | ['v8_enable_sandbox == 1', { | |
| 459 | 461 | 'defines': ['V8_ENABLE_SANDBOX',], | |
| 460 | 462 | }], | |
| 463 | + ['v8_enable_external_code_space == 1', { | ||
| 464 | + 'defines': ['V8_EXTERNAL_CODE_SPACE',], | ||
| 465 | + }], | ||
| 461 | 466 | ['v8_deprecation_warnings == 1', { | |
| 462 | 467 | 'defines': ['V8_DEPRECATION_WARNINGS',], | |
| 463 | 468 | }], | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1718,7 +1718,15 @@ def configure_v8(o, configs): | |||
| 1718 | 1718 | o['variables']['v8_enable_maglev'] = B(not options.v8_disable_maglev and | |
| 1719 | 1719 | o['variables']['target_arch'] in maglev_enabled_architectures) | |
| 1720 | 1720 | o['variables']['v8_enable_pointer_compression'] = 1 if options.enable_pointer_compression else 0 | |
| 1721 | - o['variables']['v8_enable_sandbox'] = 1 if options.enable_pointer_compression else 0 | ||
| 1721 | + # Using the sandbox requires always allocating array buffer backing stores in the sandbox. | ||
| 1722 | + # We currently have many backing stores tied to pointers from C++ land that are not | ||
| 1723 | + # even necessarily dynamic (e.g. in static storage) for fast communication between JS and C++. | ||
| 1724 | + # Until we manage to get rid of all those, v8_enable_sandbox cannot be used. | ||
| 1725 | + # Note that enabling pointer compression without enabling sandbox is unsupported by V8, | ||
| 1726 | + # so this can be broken at any time. | ||
| 1727 | + o['variables']['v8_enable_sandbox'] = 0 | ||
| 1728 | + o['variables']['v8_enable_pointer_compression_shared_cage'] = 1 if options.enable_pointer_compression else 0 | ||
| 1729 | + o['variables']['v8_enable_external_code_space'] = 1 if options.enable_pointer_compression else 0 | ||
| 1722 | 1730 | o['variables']['v8_enable_31bit_smis_on_64bit_arch'] = 1 if options.enable_pointer_compression else 0 | |
| 1723 | 1731 | o['variables']['v8_enable_extensible_ro_snapshot'] = 0 | |
| 1724 | 1732 | o['variables']['v8_trace_maps'] = 1 if options.trace_maps else 0 | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -21,9 +21,6 @@ void NodeTestEnvironment::SetUp() { | |||
| 21 | 21 | NodeZeroIsolateTestFixture::platform.reset( | |
| 22 | 22 | new node::NodePlatform(kV8ThreadPoolSize, tracing_controller)); | |
| 23 | 23 | v8::V8::InitializePlatform(NodeZeroIsolateTestFixture::platform.get()); | |
| 24 | - #ifdef V8_ENABLE_SANDBOX | ||
| 25 | - ASSERT_TRUE(v8::V8::InitializeSandbox()); | ||
| 26 | - #endif | ||
| 27 | 24 | cppgc::InitializeProcess( | |
| 28 | 25 | NodeZeroIsolateTestFixture::platform->GetPageAllocator()); | |
| 29 | 26 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -248,6 +248,11 @@ | |||
| 248 | 248 | # Sets -DV8_ENABLE_SANDBOX. | |
| 249 | 249 | 'v8_enable_sandbox%': 0, | |
| 250 | 250 | ||
| 251 | + # Enable support for external code range relative to the pointer compression | ||
| 252 | + # cage. | ||
| 253 | + # Sets -DV8_EXTERNAL_CODE_SPACE. | ||
| 254 | + 'v8_enable_external_code_space%': 0, | ||
| 255 | + | ||
| 251 | 256 | # Experimental feature for collecting per-class zone memory stats. | |
| 252 | 257 | # Requires use_rtti = true | |
| 253 | 258 | 'v8_enable_precise_zone_stats%': 0, | |
@@ -380,6 +385,9 @@ | |||
| 380 | 385 | ['v8_enable_sandbox==1', { | |
| 381 | 386 | 'defines': ['V8_ENABLE_SANDBOX',], | |
| 382 | 387 | }], | |
| 388 | + ['v8_enable_external_code_space==1', { | ||
| 389 | + 'defines': ['V8_EXTERNAL_CODE_SPACE',], | ||
| 390 | + }], | ||
| 383 | 391 | ['v8_enable_object_print==1', { | |
| 384 | 392 | 'defines': ['OBJECT_PRINT',], | |
| 385 | 393 | }], | |
| Back | FazBrowse Home | New Git URL |
0 commit comments