Enable named mmap usage for Chromium
Naming 'anonymous' mmap memory, which we use for Reactor's executable
memory, enables profilers to attribute JIT-compiled routine execution
to SwiftShader.
Also rename `swiftshader_reactor_private_config` to
`swiftshader_llvm_reactor_private_config` to clarify that it is only used
for building Reactor with the LLVM backend.
Bug: b/174801963
Change-Id: I4a6cb471b00f8403978870fd0be4608ee2798e54
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/52208
Presubmit-Ready: Nicolas Capens <nicolascapens@google.com>
Kokoro-Result: kokoro <noreply+kokoro@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
diff --git a/src/Reactor/BUILD.gn b/src/Reactor/BUILD.gn
index 5dd8cff..c4070fd 100644
--- a/src/Reactor/BUILD.gn
+++ b/src/Reactor/BUILD.gn
@@ -15,7 +15,7 @@
import("reactor.gni")
import("../swiftshader.gni")
-config("swiftshader_reactor_private_config") {
+config("swiftshader_llvm_reactor_private_config") {
if (is_win) {
cflags = [
"/wd4141", # 'inline' used more than once. (LLVM 7.0)
@@ -37,6 +37,12 @@
}
}
+config("swiftshader_reactor_base_private_config") {
+ defines = [
+ "REACTOR_ANONYMOUS_MMAP_NAME=swiftshader_jit",
+ ]
+}
+
swiftshader_source_set("swiftshader_reactor_base") {
sources = [
"Debug.cpp",
@@ -45,6 +51,10 @@
"OptimalIntrinsics.cpp",
"Reactor.cpp",
]
+
+ configs = [
+ ":swiftshader_reactor_base_private_config",
+ ]
}
if (supports_subzero) {
@@ -327,7 +337,7 @@
"LLVMReactor.cpp",
]
- configs = [ ":swiftshader_reactor_private_config" ]
+ configs = [ ":swiftshader_llvm_reactor_private_config" ]
include_dirs = [
"$llvm_dir/llvm/include/",