mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-12-16 04:09:39 +00:00
Merge pull request #14034 from JoshuaVandaele/byeprofile
JitRegister: Remove OProfile profiler
This commit is contained in:
commit
828e72d604
@ -1,31 +0,0 @@
|
||||
# - Try to find OProfile
|
||||
# Once done this will define
|
||||
# OPROFILE_FOUND - System has OProfile
|
||||
# OPROFILE_INCLUDE_DIRS - The OProfile include directories
|
||||
# OPROFILE_LIBRARIES - The libraries needed to use OProfile
|
||||
|
||||
find_path(OPROFILE_INCLUDE_DIR opagent.h)
|
||||
|
||||
find_library(OPROFILE_LIBRARY opagent
|
||||
PATH_SUFFIXES oprofile
|
||||
)
|
||||
|
||||
set(OPROFILE_INCLUDE_DIRS ${OPROFILE_INCLUDE_DIR})
|
||||
set(OPROFILE_LIBRARIES ${OPROFILE_LIBRARY})
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(OProfile DEFAULT_MSG
|
||||
OPROFILE_LIBRARY OPROFILE_INCLUDE_DIR
|
||||
)
|
||||
|
||||
if (OPROFILE_FOUND)
|
||||
if (NOT TARGET OProfile::OProfile)
|
||||
add_library(OProfile::OProfile UNKNOWN IMPORTED)
|
||||
set_target_properties(OProfile::OProfile PROPERTIES
|
||||
IMPORTED_LOCATION ${OPROFILE_LIBRARIES}
|
||||
INTERFACE_INCLUDE_DIRECTORIES ${OPROFILE_INCLUDE_DIRS}
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
mark_as_advanced(OPROFILE_INCLUDE_DIR OPROFILE_LIBRARY)
|
||||
@ -119,7 +119,6 @@ option(ENCODE_FRAMEDUMPS "Encode framedumps in AVI format" ON)
|
||||
|
||||
option(ENABLE_GPROF "Enable gprof profiling (must be using Debug build)" OFF)
|
||||
option(FASTLOG "Enable all logs" OFF)
|
||||
option(OPROFILING "Enable profiling" OFF)
|
||||
|
||||
# TODO: Add DSPSpy
|
||||
option(DSPTOOL "Build dsptool" OFF)
|
||||
@ -565,16 +564,6 @@ if(ENCODE_FRAMEDUMPS)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(OPROFILING)
|
||||
find_package(OProfile)
|
||||
if(OPROFILE_FOUND)
|
||||
message(STATUS "OProfile found, enabling profiling support")
|
||||
add_definitions(-DUSE_OPROFILE=1)
|
||||
else()
|
||||
message(FATAL_ERROR "OProfile not found. Can't build profiling support.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(ENABLE_HWDB)
|
||||
find_package(LIBUDEV REQUIRED)
|
||||
if(LIBUDEV_FOUND)
|
||||
|
||||
@ -350,10 +350,6 @@ if(USE_UPNP)
|
||||
target_link_libraries(common PRIVATE Miniupnpc::miniupnpc)
|
||||
endif()
|
||||
|
||||
if(OPROFILE_FOUND)
|
||||
target_link_libraries(common PRIVATE OProfile::OProfile)
|
||||
endif()
|
||||
|
||||
if(ENABLE_LLVM)
|
||||
find_package(LLVM CONFIG)
|
||||
if(LLVM_FOUND)
|
||||
|
||||
@ -21,19 +21,11 @@
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#if defined USE_OPROFILE && USE_OPROFILE
|
||||
#include <opagent.h>
|
||||
#endif
|
||||
|
||||
#if defined USE_VTUNE
|
||||
#include <jitprofiling.h>
|
||||
#pragma comment(lib, "jitprofiling.lib")
|
||||
#endif
|
||||
|
||||
#if defined USE_OPROFILE && USE_OPROFILE
|
||||
static op_agent_t s_agent = nullptr;
|
||||
#endif
|
||||
|
||||
static File::IOFile s_perf_map_file;
|
||||
|
||||
namespace Common::JitRegister
|
||||
@ -42,11 +34,6 @@ static bool s_is_enabled = false;
|
||||
|
||||
void Init(const std::string& perf_dir)
|
||||
{
|
||||
#if defined USE_OPROFILE && USE_OPROFILE
|
||||
s_agent = op_open_agent();
|
||||
s_is_enabled = true;
|
||||
#endif
|
||||
|
||||
if (!perf_dir.empty() || getenv("PERF_BUILDID_DIR"))
|
||||
{
|
||||
const std::string dir = perf_dir.empty() ? "/tmp" : perf_dir;
|
||||
@ -61,11 +48,6 @@ void Init(const std::string& perf_dir)
|
||||
|
||||
void Shutdown()
|
||||
{
|
||||
#if defined USE_OPROFILE && USE_OPROFILE
|
||||
op_close_agent(s_agent);
|
||||
s_agent = nullptr;
|
||||
#endif
|
||||
|
||||
#ifdef USE_VTUNE
|
||||
iJIT_NotifyEvent(iJVM_EVENT_TYPE_SHUTDOWN, nullptr);
|
||||
#endif
|
||||
@ -83,15 +65,11 @@ bool IsEnabled()
|
||||
|
||||
void Register(const void* base_address, u32 code_size, const std::string& symbol_name)
|
||||
{
|
||||
#if !(defined USE_OPROFILE && USE_OPROFILE) && !defined(USE_VTUNE)
|
||||
#ifndef USE_VTUNE
|
||||
if (!s_perf_map_file.IsOpen())
|
||||
return;
|
||||
#endif
|
||||
|
||||
#if defined USE_OPROFILE && USE_OPROFILE
|
||||
op_write_native_code(s_agent, symbol_name.c_str(), (u64)base_address, base_address, code_size);
|
||||
#endif
|
||||
|
||||
#ifdef USE_VTUNE
|
||||
iJIT_Method_Load jmethod = {0};
|
||||
jmethod.method_id = iJIT_GetNewMethodID();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user