From fc62680743a55248bc61d30e376c33e62aafc619 Mon Sep 17 00:00:00 2001 From: Akarshan Biswas Date: Sun, 23 Mar 2025 17:36:03 +0530 Subject: [PATCH 1/2] epic: Add compiler optimizations --- engine/CMakeLists.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/engine/CMakeLists.txt b/engine/CMakeLists.txt index b5adf53df..d191fe678 100644 --- a/engine/CMakeLists.txt +++ b/engine/CMakeLists.txt @@ -45,11 +45,30 @@ else() message(STATUS "CORTEX_CQA is OFF.") endif() +if(NOT CORTEX_CQA) + message(STATUS "Setting up optimization flags for Release builds") + if(CMAKE_CXX_COMPILER_ID MATCHES "Clang|GNU") + # Add optimization flags for GCC/Clang + add_compile_options($<$:-O3>) + add_compile_options($<$:-march=native>) + add_compile_options($<$:-flto>) + add_link_options($<$:-flto>) + elseif(MSVC) + # Add optimization flags for MSVC + add_compile_options($<$:/O2>) + # Optional: Link-time optimization + add_compile_options($<$:/GL>) + add_link_options($<$:/LTCG>) + endif() +endif() + if(MSVC) add_compile_options( $<$:/MT> #---------| $<$:/MTd> #---|-- Statically link the runtime libraries $<$:/MT> #--| + $<$:/O2> #--|-- Optimize for speed in Release mode + $<$:/Ob2> #-|-- Inline any suitable function ) add_compile_options(/utf-8) From 59f1dfa447ad10db922736456a0f11910b54a05f Mon Sep 17 00:00:00 2001 From: Akarshan Biswas Date: Mon, 24 Mar 2025 07:27:28 +0530 Subject: [PATCH 2/2] Remove -march=native flag --- engine/CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/engine/CMakeLists.txt b/engine/CMakeLists.txt index d191fe678..06c54873d 100644 --- a/engine/CMakeLists.txt +++ b/engine/CMakeLists.txt @@ -50,7 +50,6 @@ if(NOT CORTEX_CQA) if(CMAKE_CXX_COMPILER_ID MATCHES "Clang|GNU") # Add optimization flags for GCC/Clang add_compile_options($<$:-O3>) - add_compile_options($<$:-march=native>) add_compile_options($<$:-flto>) add_link_options($<$:-flto>) elseif(MSVC)