Skip to content

Commit d7618ef

Browse files
committed
Merge branch 'feature-efficienthook'
2 parents edc7e03 + 8362671 commit d7618ef

File tree

335 files changed

+204510
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

335 files changed

+204510
-1
lines changed

.idea/misc.xml

Lines changed: 4 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Analyzer/PyVisualizer/src/V3/.idea/workspace.xml

Lines changed: 139 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CMakeLists.txt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
88
add_subdirectory(proto)
99

1010
# Adding scalerhook to this project
11-
add_subdirectory(libHook)
11+
# add_subdirectory(libHook)
12+
13+
add_subdirectory(libHook-c)
14+
1215

1316
# Adding scalerhook to this project
1417
add_subdirectory(Analyzer)

libHook-c/CMakeLists.txt

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
project(Hook VERSION 0.1.4)
2+
3+
# Set global (Relative this folder until reset) compiler options
4+
5+
set(SCALER_HOOK_COMPILATION_FLAGS "-O0" "-g" "-Werror")
6+
# https://json.nlohmann.me/integration/cmake/
7+
8+
9+
add_library(ScalerHook-Config INTERFACE)
10+
target_include_directories(ScalerHook-Config INTERFACE src/include/config)
11+
12+
#Add all files for libscalerhook
13+
set(HookSrc
14+
src/ExtFuncCallHook.cpp
15+
src/ProcInfoParser.cpp
16+
src/ElfParser.cpp
17+
src/MemTool.cpp
18+
src/FileTool.cpp
19+
src/Timer.cpp
20+
src/InvocationTree.cpp
21+
src/StringTool.cpp
22+
src/HookContext.cpp
23+
src/HookHandlers.cpp
24+
src/systemProxy.cpp
25+
src/pthreadProxy.cpp
26+
src/ExtSymInfo.cpp
27+
src/ELFImgInfo.cpp
28+
)
29+
#src/VMEmulator.cpp
30+
31+
#list(APPEND CMAKE_PREFIX_PATH "/media/umass/datasystem/steven/lib/intel/build/kits/xed-install-base-2021-08-26-lin-x86-64")
32+
#find_package(XED REQUIRED)
33+
34+
include(${CMAKE_SOURCE_DIR}/proto/findThisGrpc.cmake)
35+
36+
# Scaler hook library itself. Users need to manually install scalerhook through library functions.
37+
add_library(ScalerHook-HookManualAsm-C SHARED
38+
${HookSrc})
39+
target_include_directories(ScalerHook-HookManualAsm-C PUBLIC src/include lib/inireader)
40+
target_link_libraries(ScalerHook-HookManualAsm-C PUBLIC pthread dl)
41+
target_compile_options(ScalerHook-HookManualAsm-C PRIVATE ${SCALER_HOOK_COMPILATION_FLAGS})
42+
target_compile_definitions(ScalerHook-HookManualAsm-C PRIVATE CMAKE_SCALERRUN_VERSION="${PROJECT_VERSION}")
43+
44+
45+
#message(" ${PROTO_SRCS} ${GRPC_SRCS}")
46+
47+
48+
#ScalerHook with auto installation enabled. Scaler hook will run automatically before main.
49+
add_library(ScalerHook-HookAutoAsm-C SHARED src/libcProxy.cpp src/libcProxy.cpp ${HookSrc})# ${PROTO_SRCS} ${GRPC_SRCS})
50+
target_include_directories(ScalerHook-HookAutoAsm-C PUBLIC src/include lib/inireader)# ${PROTO_SRC_DIR})
51+
target_link_libraries(ScalerHook-HookAutoAsm-C PUBLIC pthread dl)
52+
target_link_options(ScalerHook-HookAutoAsm-C PRIVATE -static-libgcc -static-libstdc++) #Todo; Statically link libc is not advised. Change to re-compile in o
53+
target_compile_options(ScalerHook-HookAutoAsm-C PRIVATE ${SCALER_HOOK_COMPILATION_FLAGS})
54+
target_compile_definitions(ScalerHook-HookAutoAsm-C PRIVATE XED_ENCODER CMAKE_SCALERRUN_VERSION="${PROJECT_VERSION}") #NDEBUG
55+
56+
#protobufferStatic
57+
58+
59+
#add_library(ScalerHook-HookAuto-Brkpoint SHARED src/autoinstall.cpp)
60+
#target_link_libraries(ScalerHook-HookAuto-Brkpoint PUBLIC ScalerHook-HookBrkpoint)
61+
#target_compile_options(ScalerHook-HookAuto-Brkpoint PRIVATE ${SCALER_HOOK_COMPILATION_FLAGS})
62+
63+
#Add tests
64+
add_subdirectory(tests)

libHook-c/src/ELFImgInfo.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
2+
#include <type/ELFImgInfo.h>
3+
4+

0 commit comments

Comments
 (0)