Skip to content

Commit

Permalink
Merge pull request #74 from DaedalusX64/Profiler_Options
Browse files Browse the repository at this point in the history
  • Loading branch information
wally4000 authored Sep 5, 2024
2 parents 65fe549 + 04a72fb commit ad6678d
Show file tree
Hide file tree
Showing 29 changed files with 260 additions and 22 deletions.
130 changes: 124 additions & 6 deletions Options.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,10 @@ if(DAEDALUS_ACCURATE_TMEM)
add_compile_definitions(DAEDALUS_ACCURATE_TMEM)
endif()

if(DAEDALUS_PSP_GPROF)
message("DAEDALUS_PSP_GPROF=ON")
add_compile_definitions(DAEDALUS_PSP_GPROF)
add_compile_options(-pg)
add_link_options(-pg)
if(DAEDALUS_GPROF)
message("DAEDALUS_GPROF=ON")
add_compile_definitions(DAEDALUS_GPROF)

endif()

if(DAEDALUS_SIM_DOUBLES)
Expand Down Expand Up @@ -190,4 +189,123 @@ if(INTRAFONT)
message("Not using intrafont")
add_compile_definitions(DAEDALUS_SDL)
endif()
endif()
endif()

if(DAEDALUS_PROFILE_AUDIOPLUGIN)
message("DAEDALUS_PROFILE_AUDIOPLUGIN=ON")
add_compile_definitions(DAEDALUS_PROFILE_AUDIOPLUGIN)
endif()

if(DAEDALUS_PROFILE_CORE)
message("DAEDALUS_PROFILE_CORE=ON")
add_compile_definitions(DAEDALUS_PROFILE_CORE)
endif()

if(DAEDALUS_PROFILE_DEBUG)
message("DAEDALUS_PROFILE_DEBUG=ON")
add_compile_definitions(DAEDALUS_PROFILE_DEBUG)
endif()

if(DAEDALUS_PROFILE_DYNAREC)
message("DAEDALUS_PROFILE_DYNAREC=ON")
add_compile_definitions(DAEDALUS_PROFILE_DYNAREC)
endif()

if(DAEDALUS_PROFILE_HLEAUDIO)
message("DAEDALUS_PROFILE_HLEAUDIO=ON")
add_compile_definitions(DAEDALUS_PROFILE_HLEAUDIO)
endif()
if(DAEDALUS_PROFILE_HLEGRAPHICS)
message("DAEDALUS_PROFILE_HLEGRAPHICS=ON")
add_compile_definitions(DAEDALUS_PROFILE_HLEGRAPHICS)
endif()
if(DAEDALUS_PROFILE_INPUT)
message("DAEDALUS_PROFILE_INPUT=ON")
add_compile_definitions(DAEDALUS_PROFILE_INPUT)
endif()
if(DAEDALUS_PROFILE_INTERFACE)
message("DAEDALUS_PROFILE_INTERFACE=ON")
add_compile_definitions(DAEDALUS_PROFILE_INTERFACE)
endif()

if(DAEDALUS_PROFILE_MATH)
message("DAEDALUS_PROFILE_MATH=ON")
add_compile_definitions(DAEDALUS_PROFILE_MATH)
endif()

if(DAEDALUS_PROFILE_OSHLE)
message("DAEDALUS_PROFILE_OSHLE=ON")
add_compile_definitions(DAEDALUS_PROFILE_OSHLE)
endif()

if(DAEDALUS_PROFILE_ROMFILE)
message("DAEDALUS_PROFILE_ROMFILE=ON")
add_compile_definitions(DAEDALUS_PROFILE_ROMFILE)
endif()

if(DAEDALUS_PROFILE_SYSTEM)
message("DAEDALUS_PROFILE_SYSTEM=ON")
add_compile_definitions(DAEDALUS_PROFILE_SYSTEM)
endif()

if(DAEDALUS_PROFILE_UI)
message("DAEDALUS_PROFILE_UI=ON")
add_compile_definitions(DAEDALUS_PROFILE_UI)
endif()


if(DAEDALUS_PROFILE_UTILITY)
message("DAEDALUS_PROFILE_UTILITY=ON")
add_compile_definitions(DAEDALUS_PROFILE_UTILITY)
endif()


if(DAEDALUS_PROFILE_UTILITY_PSP)
message("DAEDALUS_PROFILE_UTILITY_PSP=ON")
add_compile_definitions(DAEDALUS_PROFILE_UTILITY_PSP)
endif()

if(DAEDALUS_PROFILE_HLEGRAPHICS_PSP)
message("DAEDALUS_PROFILE_HLEGRAPHICS_PSP=ON")
add_compile_definitions(DAEDALUS_PROFILE_HLEGRAPHICS_PSP)
endif()

if(DAEDALUS_PROFILE_GRAPHICS_PSP)
message("DAEDALUS_PROFILE_UTILITY=ON")
add_compile_definitions(DAEDALUS_PROFILE_UTILITY)
endif()

if(DAEDALUS_PROFILE_DEBUG_PSP)
message("DAEDALUS_PROFILE_DEBUG_PSP=ON")
add_compile_definitions(DAEDALUS_PROFILE_DEBUG_PSP)
endif()

if(DAEDALUS_PROFILE_UTILITY_POSIX)
message("DAEDALUS_PROFILE_UTILITY_POSIX=ON")
add_compile_definitions(DAEDALUS_PROFILE_UTILITY_POSIX)
endif()

if(DAEDALUS_PROFILE_GRAPHICS_CTR)
message("DAEDALUS_PROFILE_GRAPHICS_CTR=ON")
add_compile_definitions(DAEDALUS_PROFILE_GRAPHICS_CTR)
endif()

if(DAEDALUS_PROFILE_HLEGRAPHICS_CTR)
message("DAEDALUS_PROFILE_HLEGRAPHICS_CTR=ON")
add_compile_definitions(DAEDALUS_PROFILE_HLEGRAPHICS_CTR)
endif()

if(DAEDALUS_PROFILE_UTILITY_CTR)
message("DAEDALUS_PROFILE_UTILITY_CTR=ON")
add_compile_definitions(DAEDALUS_PROFILE_UTILITY_CTR)
endif()

if(DAEDALUS_PROFILE_GRAPHICS_GL)
message("DAEDALUS_PROFILE_GRAPHICS_GL=ON")
add_compile_definitions(DAEDALUS_PROFILE_GRAPHICS_GL)
endif()

if(DAEDALUS_PROFILE_UI_CTR)
message("DAEDALUS_PROFILE_UI_CTR=ON")
add_compile_definitions(DAEDALUS_PROFILE_UI_CTR)
endif(DAEDALUS_PROFILE_UI_CTR)
31 changes: 31 additions & 0 deletions Source/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,37 @@ else()
option(DAEDALUS_CTR "3DS Specific Options" ON)
endif()

# Profiler Options
option(DAEDALUS_PROFILE_AUDIOPLUGIN "" OFF)
option(DAEDALUS_PROFILE_CORE "" OFF)
option(DAEDALUS_PROFILE_DEBUG "" OFF)
option(DAEDALUS_PROFILE_DYNAREC "" OFF)
option(DAEDALUS_PROFILE_GRAPHICS "" OFF)
option(DAEDALUS_PROFILE_HLEAUDIO "" OFF)
option(DAEDALUS_PROFILE_HLEGRAPHICS "" OFF)
option(DAEDALUS_PROFILE_INPUT "" OFF)
option(DAEDALUS_PROFILE_INTERFACE "" OFF)
option(DAEDALUS_PROFILE_MATH "" OFF)
option(DAEDALUS_PROFILE_OSHLE "" OFF)
option(DAEDALUS_PROFILE_ROMFILE "" OFF)
option(DAEDALUS_PROFILE_SYSTEM "" OFF)
option(DAEDALUS_PROFILE_UI "" OFF)
option(DAEDALUS_PROFILE_UTILITY "" OFF)

option(DAEDALUS_PROFILE_UTILITY_PSP "" OFF)
option(DAEDALUS_PROFILE_HLEGRAPHICS_PSP "" OFF)
option(DAEDALUS_PROFILE_GRAPHICS_PSP "" OFF )
option(DAEDALUS_PROFILE_DEBUG_PSP "" OFF)

option(DAEDALUS_PROFILE_GRAPHICS_CTR "" OFF)
option(DAEDALUS_PROFILE_HLEGRAPHICS_CTR "" OFF)
option(DAEDALUS_PROFILE_UTILITY_CTR "" OFF)
option(DAEDALUS_PROFILE_UI_CTR "" OFF)

option(DAEDALUS_PROFILE_GRAPHICS_GL "" OFF)
option(DAEDALUS_PROFILE_UTILITY_POSIX "" OFF)


# Needed below the options to post process
include(${PROJECT_SOURCE_DIR}/Options.cmake)

Expand Down
4 changes: 4 additions & 0 deletions Source/Core/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,9 @@ if(APPLE)
set_source_files_properties(R4300.cpp PROPERTIES COMPILE_FLAGS -O0)
endif(APPLE)

if(DAEDALUS_PROFILE_CORE)
target_compile_options(Core PRIVATE -pg)
endif(DAEDALUS_PROFILE_CORE)

list(APPEND daed_libs "Core")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/Debug/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,9 @@ add_library(Debug OBJECT
Synchroniser.cpp
)

if(DAEDALUS_PROFILE_DEBUG)
target_compile_options(Debug PRIVATE -pg)
endif(DAEDALUS_PROFILE_DEBUG)

list(APPEND daed_libs "Debug")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/DynaRec/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,9 @@ add_library(DynaRec OBJECT
TraceRecorder.cpp
)

if(DAEDALUS_PROFILE_DEBUG)
target_compile_options(DynaRec PRIVATE -pg)
endif(DAEDALUS_PROFILE_DEBUG)

list(APPEND daed_libs "DynaRec")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/Graphics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,9 @@ add_library(Graphics OBJECT

target_include_directories(Graphics PUBLIC ${PNG_INCLUDE_DIRS})

if(DAEDALUS_PROFILE_GRAPHICS)
target_compile_options(Graphics PRIVATE -pg)
endif(DAEDALUS_PROFILE_GRAPHICS)

list(APPEND daed_libs "Graphics")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/HLEAudio/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,9 @@ add_library(HLEAudio OBJECT
HLEMain.cpp
)

if(DAEDALUS_PROFILE_HLEAUDIO)
target_compile_options(HLEAudio PRIVATE -pg)
endif(DAEDALUS_PROFILE_HLEAUDIO)

list(APPEND daed_libs "HLEAudio")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/HLEAudio/Plugin/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,9 @@ else()
add_library(Audio_Plugin OBJECT SDL/AudioPluginSDL.cpp)
endif()

if(DAEDALUS_PROFILE_AUDIOPLUGIN)
target_compile_options(Audio_Plugin PRIVATE -pg)
endif(DAEDALUS_PROFILE_AUDIOPLUGIN)

list(APPEND daed_libs "Audio_Plugin")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/HLEGraphics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,9 @@ if(DAEDALUS_GL)
target_include_directories(HLEGraphics PUBLIC ${OPENGL_INCLUDE_DIR} ${GLEW_INCLUDE_DIRS})
endif(DAEDALUS_GL)

if(DAEDALUS_PROFILE_HLEGRAPHICS)
target_compile_options(HLEGraphics PRIVATE -pg)
endif(DAEDALUS_PROFILE_HLEGRAPHICS)

list(APPEND daed_libs "HLEGraphics")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/Input/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@ else()
add_library(Input OBJECT SDL/InputManagerSDL.cpp)
endif()

if(DAEDALUS_PROFILE_INPUT)
target_compile_options(Input PRIVATE -pg)
endif(DAEDALUS_PROFILE_INPUT)

list(APPEND daed_libs "Input")
set(daed_libs ${daed_libs} PARENT_SCOPE)

4 changes: 4 additions & 0 deletions Source/Interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,9 @@ add_library(Interface OBJECT
)


if(DAEDALUS_PROFILE_INTERFACE)
target_compile_options(Interface PRIVATE -pg)
endif(DAEDALUS_PROFILE_INTERFACE)

list(APPEND daed_libs "Interface")
set(daed_libs ${daed_libs} PARENT_SCOPE)
3 changes: 3 additions & 0 deletions Source/Math/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
add_library(Math OBJECT Matrix4x4.cpp)

if(DAEDALUS_PROFILE_MATH)
target_compile_options(Math PRIVATE -pg)
endif(DAEDALUS_PROFILE_MATH)

list(APPEND daed_libs "Math")
set(daed_libs ${daed_libs} PARENT_SCOPE)
5 changes: 4 additions & 1 deletion Source/OSHLE/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ add_library(OSHLE OBJECT
patch.cpp
)


if(DAEDALUS_PROFILE_OSHLE)
target_compile_options(OSHLE PRIVATE -pg)
endif(DAEDALUS_PROFILE_OSHLE)

list(APPEND daed_libs "OSHLE")
set(daed_libs ${daed_libs} PARENT_SCOPE)
5 changes: 5 additions & 0 deletions Source/RomFile/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,11 @@ add_library(RomFile OBJECT
RomSettings.cpp
)

if(DAEDALUS_PROFILE_ROMFILE)
target_compile_options(RomFile PRIVATE -pg)
endif(DAEDALUS_PROFILE_ROMFILE)



list(APPEND daed_libs "RomFile")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/SysCTR/Graphics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@ add_library(Graphics_CTR OBJECT
NativeTextureCTR.cpp
)

if(DAEDALUS_PROFILE_GRAPHICS_CTR)
target_compile_options(Graphics_CTR PRIVATE -pg)
endif(DAEDALUS_PROFILE_GRAPHICS_CTR)


list(APPEND daed_libs "Graphics_CTR")
set(daed_libs ${daed_libs} PARENT_SCOPE)
9 changes: 8 additions & 1 deletion Source/SysCTR/HLEGraphics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,16 @@ add_library(HLEGraphics_CTR OBJECT
ColourAdjuster.cpp
GraphicsPluginCTR.cpp
RendererCTR.cpp
Combiner/BlendConstant.cpp
Combiner/CombinerExpression.cpp
Combiner/CombinerTree.cpp
Combiner/RenderSettings.cpp
)

add_subdirectory(Combiner)
if(DAEDALUS_PROFILE_HLEGRAPHICS_CTR)
target_compile_options(HLEGraphics_CTR PRIVATE -pg)
endif(DAEDALUS_PROFILE_HLEGRAPHICS_CTR)



list(APPEND daed_libs "HLEGraphics_CTR")
Expand Down
11 changes: 0 additions & 11 deletions Source/SysCTR/HLEGraphics/Combiner/CMakeLists.txt

This file was deleted.

5 changes: 4 additions & 1 deletion Source/SysCTR/UI/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ add_library(UI_CTR OBJECT
RomSelector.cpp
UserInterface.cpp
)

if(DAEDALUS_PROFILE_UI_CTR)
target_compile_options(UI_CTR PRIVATE -pg)
endif(DAEDALUS_PROFILE_UI_CTR)


list(APPEND daed_libs "UI_CTR")
set(daed_libs ${daed_libs} PARENT_SCOPE)
4 changes: 4 additions & 0 deletions Source/SysCTR/Utility/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ add_library(Utility_CTR OBJECT
TimingCTR.cpp
)

if(DAEDALUS_PROFILE_UTILITY_CTR)
target_compile_options(Utility_CTR PRIVATE -pg)
endif(DAEDALUS_PROFILE_UTILITY_CTR)


list(APPEND daed_libs "Utility_CTR")
set(daed_libs ${daed_libs} PARENT_SCOPE)
Expand Down
4 changes: 4 additions & 0 deletions Source/SysGL/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,9 @@ target_include_directories(SysGL PUBLIC ${SDL2_TTF_INCLUDE_DIRS})

install(FILES ${PROJECT_SOURCE_DIR}/Source/SysGL/HLEGraphics/n64.psh DESTINATION DaedalusX64)

if(DAEDALUS_PROFILE_GRAPHICS_GL)
target_compile_options(SysGL PRIVATE -pg)
endif(DAEDALUS_PROFILE_GRAPHICS_GL)

list(APPEND daed_libs "SysGL")
set(daed_libs ${daed_libs} PARENT_SCOPE)
3 changes: 3 additions & 0 deletions Source/SysPSP/Debug/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ add_library(Debug_PSP OBJECT
DBGConsolePSP.cpp
)

if(DAEDALUS_PROFILE_DEBUG_PSP)
target_compile_options(Debug_PSP PRIVATE -pg)
endif(DAEDALUS_PROFILE_DEBUG_PSP)

list(APPEND daed_libs "Debug_PSP")
set(daed_libs ${daed_libs} PARENT_SCOPE)
3 changes: 3 additions & 0 deletions Source/SysPSP/Graphics/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ add_library(Graphics_PSP OBJECT
${DRAW_TEXT}
)

if(DAEDALUS_PROFILE_GRAPHICS_PSP)
target_compile_options(Graphics_PSP PRIVATE -pg)
endif(DAEDALUS_PROFILE_GRAPHICS_PSP)

list(APPEND daed_libs "Graphics_PSP")
set(daed_libs ${daed_libs} PARENT_SCOPE)
Loading

0 comments on commit ad6678d

Please sign in to comment.