From ec9488a58cb17cd660c2114881c449bbfa4e29de Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Fri, 15 Oct 2021 14:28:13 -0400 Subject: [PATCH] Lagom: Build with -fno-no-semantic-interposition Lagom: Build with -fno-no-semantic-interposition We build with this in non-lagom builds, and serenity's gcc even adds it to its CC1_SPEC. Let's use it for lagom too. Reduces the number of dynamic relocations in liblagom-js.so.0.0.0 (per `objdump -R`) from 15133 to 14534, and increases its size back to 91M (95156800 bytes), probably due to more inlining being possible. This might help perf of lagom binaries. --- Meta/Lagom/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/Meta/Lagom/CMakeLists.txt b/Meta/Lagom/CMakeLists.txt index a6e401a59d8..889c96845e4 100644 --- a/Meta/Lagom/CMakeLists.txt +++ b/Meta/Lagom/CMakeLists.txt @@ -68,6 +68,7 @@ add_compile_options(-Wall -Wextra -Werror) add_compile_options(-fPIC -g) add_compile_options(-Wno-maybe-uninitialized) add_compile_options(-fno-exceptions) +add_compile_options(-fno-semantic-interposition) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON)