From f7f0195fae3f4a1296213256b5bda12b3264c5dc Mon Sep 17 00:00:00 2001 From: Lenny Maiorani Date: Tue, 22 Mar 2022 18:37:02 -0600 Subject: [PATCH] LibMain: Statically link LibMain LibMain is dynamically linked in every binary. This results in a slightly slower load time. In the past people have pegged this at 0.7 ms on some hardware. This change makes it statically linked and eliminates 0.6 ms of run-time on my machine. This is tested by running a script which just executed `/bin/true` in a loop 10,000 times. Before this patch it reliably executed in ~90,000 ms. After this patch it is ~84,000 ms. This is a speed up of 6,000 ms over 10,000 executions, or 0.6 ms per execution. --- Userland/Libraries/LibMain/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Userland/Libraries/LibMain/CMakeLists.txt b/Userland/Libraries/LibMain/CMakeLists.txt index 6dc9cd651d..580f001c20 100644 --- a/Userland/Libraries/LibMain/CMakeLists.txt +++ b/Userland/Libraries/LibMain/CMakeLists.txt @@ -2,5 +2,5 @@ set(SOURCES Main.cpp ) -serenity_lib(LibMain main) +serenity_lib_static(LibMain main) target_link_libraries(LibMain LibC)