diff --git a/CMake/platforms/rg99.cmake b/CMake/platforms/rg99.cmake index 5ef78a1dc..8d2770a67 100644 --- a/CMake/platforms/rg99.cmake +++ b/CMake/platforms/rg99.cmake @@ -12,8 +12,7 @@ set(DEVILUTIONX_STATIC_CXX_STDLIB OFF) # -fmerge-all-constants saves ~4 KiB # -fsection-anchors saves ~4 KiB -# -fipa-pta and -fdevirtualize-at-ltrans improves performance. -set(_extra_flags "-fmerge-all-constants -fsection-anchors -fipa-pta -fdevirtualize-at-ltrans") +set(_extra_flags "-fmerge-all-constants -fsection-anchors") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_extra_flags}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_extra_flags}") # -Wl,-z-stack-size: the default thread stack size for RG99 is 128 KiB, reduce it. diff --git a/CMakeLists.txt b/CMakeLists.txt index de8078db5..ecbbb1ee7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -229,6 +229,11 @@ if(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang" AND NOT PS4) endif() endif() +if(CMAKE_CXX_COMPILER_ID MATCHES "GNU") + # -fipa-pta and -fdevirtualize-at-ltrans improve performance. + add_compile_options("$<$>:-fipa-pta;-fdevirtualize-at-ltrans>") +endif() + if(CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang") add_compile_options("$<$:-fprofile-generate>") add_link_options("$<$:-fprofile-generate>")