Commit b1b4ea3e authored by Simon Zünd's avatar Simon Zünd Committed by Commit Bot

Unconditionally enable embedded builtins

This CL removes the 'v8_enable_embedded_builtins' GN argument and sets
the 'V8_EMBEDDED_BUILTIN' define unconditionally.

Removing the now obsolete 'define' and corresponding C++ code will be
done in a separate CL.

R=machenbach@chromium.org

Bug: v8:8519
Change-Id: Ibaa3e958121931c0ce14baf48ad401fab87c5337
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864929
Commit-Queue: Simon Zünd <szuend@chromium.org>
Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#64456}
parent 7ff82992
......@@ -88,9 +88,6 @@ declare_args() {
# Optimize code for Torque executable, even during a debug build.
v8_enable_fast_torque = ""
# Enable embedded builtins.
v8_enable_embedded_builtins = true
# Enable the registration of unwinding info for Windows x64 and ARM64.
v8_win64_unwinding_info = true
......@@ -250,9 +247,6 @@ assert(!v8_disable_write_barriers || v8_enable_single_generation,
assert(v8_current_cpu != "x86" || !v8_untrusted_code_mitigations,
"Untrusted code mitigations are unsupported on ia32")
assert(!v8_enable_lite_mode || v8_enable_embedded_builtins,
"Lite mode requires embedded builtins")
assert(
!v8_enable_pointer_compression || !v8_enable_shared_ro_heap,
"Pointer compression is not supported with shared read-only heap enabled")
......@@ -451,9 +445,10 @@ config("features") {
if (v8_check_microtasks_scopes_consistency) {
defines += [ "V8_CHECK_MICROTASKS_SCOPES_CONSISTENCY" ]
}
if (v8_enable_embedded_builtins) {
defines += [ "V8_EMBEDDED_BUILTINS" ]
}
# TODO(v8:8519): Remove the define once all use-sites in
# the code are removed/fixed
defines += [ "V8_EMBEDDED_BUILTINS" ]
if (v8_use_multi_snapshots) {
defines += [ "V8_MULTI_SNAPSHOTS" ]
}
......@@ -1182,22 +1177,19 @@ template("run_mksnapshot") {
# but the target OS is really |current_os|.
"--target_os=$current_os",
"--target_arch=$current_cpu",
"--embedded_src",
rebase_path("$target_gen_dir/embedded${suffix}.S", root_build_dir),
]
args += invoker.args
if (v8_enable_embedded_builtins) {
outputs += [ "$target_gen_dir/embedded${suffix}.S" ]
outputs += [ "$target_gen_dir/embedded${suffix}.S" ]
if (invoker.embedded_variant != "") {
args += [
"--embedded_src",
rebase_path("$target_gen_dir/embedded${suffix}.S", root_build_dir),
"--embedded_variant",
invoker.embedded_variant,
]
if (invoker.embedded_variant != "") {
args += [
"--embedded_variant",
invoker.embedded_variant,
]
}
}
if (v8_random_seed != "0") {
......@@ -1262,9 +1254,7 @@ template("run_mksnapshot") {
run_mksnapshot("default") {
args = []
if (v8_enable_embedded_builtins) {
embedded_variant = "Default"
}
embedded_variant = "Default"
}
if (emit_builtins_as_inline_asm) {
asm_to_inline_asm("default") {
......@@ -1274,9 +1264,7 @@ if (emit_builtins_as_inline_asm) {
if (v8_use_multi_snapshots) {
run_mksnapshot("trusted") {
args = [ "--no-untrusted-code-mitigations" ]
if (v8_enable_embedded_builtins) {
embedded_variant = "Trusted"
}
embedded_variant = "Trusted"
}
if (emit_builtins_as_inline_asm) {
asm_to_inline_asm("trusted") {
......@@ -1312,7 +1300,6 @@ action("v8_dump_build_config") {
"v8_enable_i18n_support=$v8_enable_i18n_support",
"v8_enable_verify_predictable=$v8_enable_verify_predictable",
"v8_target_cpu=\"$v8_target_cpu\"",
"v8_enable_embedded_builtins=$v8_enable_embedded_builtins",
"v8_enable_verify_csa=$v8_enable_verify_csa",
"v8_enable_lite_mode=$v8_enable_lite_mode",
"v8_enable_pointer_compression=$v8_enable_pointer_compression",
......@@ -1386,13 +1373,11 @@ if (!v8_use_external_startup_data) {
"src/init/setup-isolate-deserialize.cc",
]
if (v8_enable_embedded_builtins && emit_builtins_as_inline_asm) {
if (emit_builtins_as_inline_asm) {
deps += [ ":asm_to_inline_asm_default" ]
sources += [ "$target_gen_dir/embedded.cc" ]
} else if (v8_enable_embedded_builtins) {
sources += [ "$target_gen_dir/embedded.S" ]
} else {
sources += [ "src/snapshot/embedded/embedded-empty.cc" ]
sources += [ "$target_gen_dir/embedded.S" ]
}
configs = [ ":internal_config" ]
......@@ -1422,7 +1407,7 @@ if (v8_use_external_startup_data) {
# Do not publicize any header to remove build dependency.
public = []
if (v8_enable_embedded_builtins && emit_builtins_as_inline_asm) {
if (emit_builtins_as_inline_asm) {
deps += [ ":asm_to_inline_asm_default" ]
sources += [ "$target_gen_dir/embedded.cc" ]
......@@ -1431,7 +1416,7 @@ if (v8_use_external_startup_data) {
sources += [ "$target_gen_dir/embedded_trusted.cc" ]
jumbo_excluded_sources = [ "$target_gen_dir/embedded_trusted.cc" ]
}
} else if (v8_enable_embedded_builtins) {
} else {
sources += [ "$target_gen_dir/embedded.S" ]
if (v8_use_multi_snapshots) {
......@@ -1441,8 +1426,6 @@ if (v8_use_external_startup_data) {
"$target_gen_dir/embedded_trusted.S",
]
}
} else {
sources += [ "src/snapshot/embedded/embedded-empty.cc" ]
}
configs = [ ":internal_config" ]
......
......@@ -198,7 +198,10 @@ class BuildConfig(object):
self.tsan = build_config['is_tsan']
# TODO(machenbach): We only have ubsan not ubsan_vptr.
self.ubsan_vptr = build_config['is_ubsan_vptr']
self.embedded_builtins = build_config['v8_enable_embedded_builtins']
# TODO(https://crbug.com/v8/8519)
# 'v8_enable_embedded_builtins' was removed, 'embedded_builtins' can be
# removed as well.
self.embedded_builtins = True
self.verify_csa = build_config['v8_enable_verify_csa']
self.lite_mode = build_config['v8_enable_lite_mode']
self.pointer_compression = build_config['v8_enable_pointer_compression']
......
......@@ -338,7 +338,6 @@ class SystemTest(unittest.TestCase):
basedir, dcheck_always_on=True, is_asan=True, is_cfi=True,
is_msan=True, is_tsan=True, is_ubsan_vptr=True, target_cpu='x86',
v8_enable_i18n_support=False, v8_target_cpu='x86',
v8_enable_embedded_builtins=False,
v8_enable_verify_csa=False, v8_enable_lite_mode=False,
v8_enable_pointer_compression=False)
result = run_tests(
......@@ -357,6 +356,7 @@ class SystemTest(unittest.TestCase):
'no_i18n\n'
'tsan\n'
'ubsan_vptr\n'
'embedded_builtins\n'
'>>> Running tests for ia32.release')
self.assertIn(expect_text, result.stdout, result)
self.assertEqual(0, result.returncode, result)
......
......@@ -17,7 +17,6 @@
"v8_enable_i18n_support": true,
"v8_enable_verify_predictable": false,
"v8_target_cpu": "x64",
"v8_enable_embedded_builtins": false,
"v8_enable_verify_csa": false,
"v8_enable_lite_mode": false,
"v8_enable_pointer_compression": true
......
......@@ -17,7 +17,6 @@
"v8_enable_i18n_support": true,
"v8_enable_verify_predictable": false,
"v8_target_cpu": "x64",
"v8_enable_embedded_builtins": false,
"v8_enable_verify_csa": false,
"v8_enable_lite_mode": false,
"v8_enable_pointer_compression": false
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment