From eb4b5767ee06789c95ca1a67ef5fdff575b95171 Mon Sep 17 00:00:00 2001 From: mykola2312 <49044616+mykola2312@users.noreply.github.com> Date: Mon, 19 Aug 2024 00:59:26 +0300 Subject: [PATCH] move process specific debug definitions to its own header file, thus fixing compiler warnings --- Makefile | 2 +- include/debug.h | 61 ---------------------------------- include/process_debug.h | 70 ++++++++++++++++++++++++++++++++++++++++ src/process.c | 1 + src/rtdisasm_test_data.s | 2 +- 5 files changed, 73 insertions(+), 63 deletions(-) create mode 100644 include/process_debug.h diff --git a/Makefile b/Makefile index 47ce936..6709089 100644 --- a/Makefile +++ b/Makefile @@ -31,7 +31,7 @@ RTDISASM_TEST_DEPS := $(addprefix $(INC_DIR)/,$(RTDISASM_TEST_DEPS)) $(SHARED_D BLACKJACK_SRC = main.c process.c BLACKJACK_OBJ := $(addprefix $(OBJ_DIR)/,$(patsubst %.s,%.o,$(patsubst %.c,%.o,$(BLACKJACK_SRC)))) $(SHARED_OBJ) BLACKJACK_SRC := $(addprefix $(SRC_DIR)/,$(BLACKJACK_SRC)) -BLACKJACK_DEPS = process.h +BLACKJACK_DEPS = process.h process_debug.h BLACKJACK_DEPS := $(addprefix $(INC_DIR)/,$(BLACKJACK_DEPS)) rtdisasm $(SHARED_DEPS) DUMMY_TARGET_SRC = dummy_target.c dummy_destination.s diff --git a/include/debug.h b/include/debug.h index 9ca326b..b017058 100644 --- a/include/debug.h +++ b/include/debug.h @@ -3,70 +3,9 @@ #ifdef DEBUG #include -#include #define TRACE(fmt, ...) fprintf(stderr, "%s:%d:%s\tTRACE\t" fmt, __FILE__, __LINE__, __func__, ##__VA_ARGS__) -static void print_registers(const struct user_regs_struct* regs) -{ - fprintf(stderr, - "r15\t%p\n" - "r14\t%p\n" - "r13\t%p\n" - "r12\t%p\n" - "rbp\t%p\n" - "rbx\t%p\n" - "r11\t%p\n" - "r10\t%p\n" - "r9\t%p\n" - "r8\t%p\n" - "rax\t%p\n" - "rcx\t%p\n" - "rdx\t%p\n" - "rsi\t%p\n" - "rdi\t%p\n" - "orig_rax\t%p\n" - "rip\t%p\n" - "cs\t%p\n" - "eflags\t%p\n" - "rsp\t%p\n" - "ss\t%p\n" - "fs_base\t%p\n" - "gs_base\t%p\n" - "ds\t%p\n" - "es\t%p\n" - "fs\t%p\n" - "gs\t%p\n", - (void*)regs->r15, - (void*)regs->r14, - (void*)regs->r13, - (void*)regs->r12, - (void*)regs->rbp, - (void*)regs->rbx, - (void*)regs->r11, - (void*)regs->r10, - (void*)regs->r9, - (void*)regs->r8, - (void*)regs->rax, - (void*)regs->rcx, - (void*)regs->rdx, - (void*)regs->rsi, - (void*)regs->rdi, - (void*)regs->orig_rax, - (void*)regs->rip, - (void*)regs->cs, - (void*)regs->eflags, - (void*)regs->rsp, - (void*)regs->ss, - (void*)regs->fs_base, - (void*)regs->gs_base, - (void*)regs->ds, - (void*)regs->es, - (void*)regs->fs, - (void*)regs->gs - ); -} #else #define TRACE(fmt, ...) -#define print_registers(regs) #endif #endif \ No newline at end of file diff --git a/include/process_debug.h b/include/process_debug.h new file mode 100644 index 0000000..618f349 --- /dev/null +++ b/include/process_debug.h @@ -0,0 +1,70 @@ +#ifndef __PROCESS_DEBUG_H +#define __PROCESS_DEBUG_H + +#ifdef DEBUG +#include +#include +static void print_registers(const struct user_regs_struct* regs) +{ + fprintf(stderr, + "r15\t%p\n" + "r14\t%p\n" + "r13\t%p\n" + "r12\t%p\n" + "rbp\t%p\n" + "rbx\t%p\n" + "r11\t%p\n" + "r10\t%p\n" + "r9\t%p\n" + "r8\t%p\n" + "rax\t%p\n" + "rcx\t%p\n" + "rdx\t%p\n" + "rsi\t%p\n" + "rdi\t%p\n" + "orig_rax\t%p\n" + "rip\t%p\n" + "cs\t%p\n" + "eflags\t%p\n" + "rsp\t%p\n" + "ss\t%p\n" + "fs_base\t%p\n" + "gs_base\t%p\n" + "ds\t%p\n" + "es\t%p\n" + "fs\t%p\n" + "gs\t%p\n", + (void*)regs->r15, + (void*)regs->r14, + (void*)regs->r13, + (void*)regs->r12, + (void*)regs->rbp, + (void*)regs->rbx, + (void*)regs->r11, + (void*)regs->r10, + (void*)regs->r9, + (void*)regs->r8, + (void*)regs->rax, + (void*)regs->rcx, + (void*)regs->rdx, + (void*)regs->rsi, + (void*)regs->rdi, + (void*)regs->orig_rax, + (void*)regs->rip, + (void*)regs->cs, + (void*)regs->eflags, + (void*)regs->rsp, + (void*)regs->ss, + (void*)regs->fs_base, + (void*)regs->gs_base, + (void*)regs->ds, + (void*)regs->es, + (void*)regs->fs, + (void*)regs->gs + ); +} +#else +#define print_registers(regs) +#endif + +#endif \ No newline at end of file diff --git a/src/process.c b/src/process.c index a2813f8..aed183f 100644 --- a/src/process.c +++ b/src/process.c @@ -1,6 +1,7 @@ #define _DEFAULT_SOURCE #include "process.h" #include "debug.h" +#include "process_debug.h" #include #include #include diff --git a/src/rtdisasm_test_data.s b/src/rtdisasm_test_data.s index e39ba95..7e19828 100644 --- a/src/rtdisasm_test_data.s +++ b/src/rtdisasm_test_data.s @@ -7,4 +7,4 @@ test_1: mov %gs:(%rbx), %rax nop # target that rtdisasm must reach -test_1_end: \ No newline at end of file +test_1_end: