mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-13 07:32:23 -07:00
appease clang
This commit is contained in:
+6
-2
@@ -46,21 +46,25 @@ dw_reg_pos_from_code_x64(DW_Reg reg_code)
|
||||
}
|
||||
|
||||
internal U64
|
||||
dw_reg_size_from_code(RDI_Arch arch, DW_Reg reg_code)
|
||||
dw_reg_size_from_code(Arch arch, DW_Reg reg_code)
|
||||
{
|
||||
switch (arch) {
|
||||
case Arch_Null: break;
|
||||
case Arch_x86: return dw_reg_size_from_code_x86(reg_code);
|
||||
case Arch_x64: return dw_reg_size_from_code_x64(reg_code);
|
||||
default: NotImplemented; break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
internal U64
|
||||
dw_reg_pos_from_code(RDI_Arch arch, DW_Reg reg_code)
|
||||
dw_reg_pos_from_code(Arch arch, DW_Reg reg_code)
|
||||
{
|
||||
switch (arch) {
|
||||
case Arch_Null: break;
|
||||
case Arch_x86: return dw_reg_pos_from_code_x86(reg_code);
|
||||
case Arch_x64: return dw_reg_pos_from_code_x64(reg_code);
|
||||
default: NotImplemented; break;
|
||||
}
|
||||
return max_U64;
|
||||
}
|
||||
|
||||
+10
-1
@@ -3,13 +3,16 @@
|
||||
|
||||
//- analyzers
|
||||
|
||||
#if 0
|
||||
internal DW_SimpleLoc
|
||||
dw_expr__analyze_fast(void *base, Rng1U64 range, U64 text_section_base)
|
||||
{
|
||||
DW_SimpleLoc result = {DW_SimpleLocKind_Empty};
|
||||
|
||||
String8 expr_data = str8((U8*)data+range.min, (U8*)data+range.max);
|
||||
|
||||
U8 op = 0;
|
||||
if (dw_based_range_read(base, range, 0, 1, &op)) {
|
||||
if (str8_deserial_read_struct(expr_data, 0, &op)) {
|
||||
// step params
|
||||
U64 size_param = 0;
|
||||
B32 is_signed = 0;
|
||||
@@ -548,12 +551,14 @@ dw_expr__analyze_details(void *in_base, Rng1U64 in_range, DW_ExprMachineCallConf
|
||||
scratch_end(scratch);
|
||||
return result;
|
||||
}
|
||||
#endif
|
||||
|
||||
//- full eval
|
||||
|
||||
internal DW_Location
|
||||
dw_expr__eval(Arena *arena_optional, void *expr_base, Rng1U64 expr_range, DW_ExprMachineConfig *config)
|
||||
{
|
||||
#if 0
|
||||
Temp scratch = scratch_begin(&arena_optional, 1);
|
||||
|
||||
DW_Location result = {0};
|
||||
@@ -1322,8 +1327,12 @@ dw_expr__eval(Arena *arena_optional, void *expr_base, Rng1U64 expr_range, DW_Exp
|
||||
// clear stack
|
||||
scratch_end(scratch);
|
||||
return result;
|
||||
#endif
|
||||
DW_Location result = {0};
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
//- dw expr val stack
|
||||
|
||||
internal DW_ExprStack
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
// Copyright (c) 2024 Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
internal U64 dw_based_range_read(void *base, Rng1U64 range, U64 off, U64 size, void *out) { return 0; }
|
||||
internal U64 dw_based_range_read_uleb128(void *base, Rng1U64 range, U64 off, U64 *out) { return 0; }
|
||||
internal U64 dw_based_range_read_sleb128(void *base, Rng1U64 range, U64 off, S64 *out) { return 0; }
|
||||
internal U64 dw_based_range_read_length(void *base, Rng1U64 range, U64 off, U64 *out) { return 0; }
|
||||
|
||||
////////////////////////////////
|
||||
// x64 Unwind Function
|
||||
|
||||
|
||||
+6
-6
@@ -82,10 +82,10 @@ elf_sym64_from_sym32(ELF_Sym32 sym32)
|
||||
internal ELF_Rel64
|
||||
elf_rel64_from_rel32(ELF_Rel32 rel32)
|
||||
{
|
||||
U32 sym = SYMS_ELF32_R_SYM(rel32.r_info);
|
||||
U32 type = SYMS_ELF32_R_TYPE(rel32.r_info);
|
||||
U32 sym = ELF32_R_SYM(rel32.r_info);
|
||||
U32 type = ELF32_R_TYPE(rel32.r_info);
|
||||
ELF_Rel64 rel64 = {0};
|
||||
rel64.r_info = SYMS_ELF64_R_INFO(sym, type);
|
||||
rel64.r_info = ELF64_R_INFO(sym, type);
|
||||
rel64.r_offset = rel32.r_offset;
|
||||
return rel64;
|
||||
}
|
||||
@@ -93,11 +93,11 @@ elf_rel64_from_rel32(ELF_Rel32 rel32)
|
||||
internal ELF_Rela64
|
||||
elf_rela64_from_rela32(ELF_Rela32 rela32)
|
||||
{
|
||||
U32 sym = SYMS_ELF32_R_SYM(rela32.r_info);
|
||||
U32 type = SYMS_ELF32_R_TYPE(rela32.r_info);
|
||||
U32 sym = ELF32_R_SYM(rela32.r_info);
|
||||
U32 type = ELF32_R_TYPE(rela32.r_info);
|
||||
ELF_Rela64 rela64 = {0};
|
||||
rela64.r_offset = rela32.r_info;
|
||||
rela64.r_info = SYMS_ELF64_R_INFO(sym, type);
|
||||
rela64.r_info = ELF64_R_INFO(sym, type);
|
||||
rela64.r_addend = rela32.r_addend;
|
||||
return rela64;
|
||||
}
|
||||
|
||||
+5
-4
@@ -172,12 +172,15 @@ rc_context_from_cmd_line(Arena *arena, CmdLine *cmdl)
|
||||
String8 debug_name = {0};
|
||||
String8 debug_data = {0};
|
||||
|
||||
B32 check_guid = 0;
|
||||
Guid pe_pdb_guid = {0};
|
||||
|
||||
B32 elf_has_debug_link = 0;
|
||||
ELF_GnuDebugLink debug_link = {0};
|
||||
|
||||
//
|
||||
// Input has PE/COFF
|
||||
//
|
||||
B32 check_guid = 0;
|
||||
Guid pe_pdb_guid = {0};
|
||||
if (is_pe_present) {
|
||||
image = Image_CoffPe;
|
||||
image_name = pe_name;
|
||||
@@ -221,8 +224,6 @@ rc_context_from_cmd_line(Arena *arena, CmdLine *cmdl)
|
||||
}
|
||||
}
|
||||
|
||||
B32 elf_has_debug_link = 0;
|
||||
ELF_GnuDebugLink debug_link = {0};
|
||||
if (is_elf_present || is_elf_debug_present) {
|
||||
if (driver != RC_Driver_Null && driver != RC_Driver_Dwarf) {
|
||||
fprintf(stderr, "error: ELF inputs are only supported when using DWARF driver.\n");
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
#include "third_party/xxHash/xxhash.h"
|
||||
#define SINFL_IMPLEMENTATION
|
||||
#include "third_party/sinfl/sinfl.h"
|
||||
#include "third_party/radsort/radsort.h"
|
||||
|
||||
////////////////////////////////
|
||||
// RDI Format Library
|
||||
|
||||
Reference in New Issue
Block a user