mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-13 07:32:23 -07:00
raddbgic -> rdim (rad debug info make)
This commit is contained in:
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -634,7 +634,7 @@ entry_point(int argc, char **argv)
|
||||
if(out != 0 && params->output_name.size > 0)
|
||||
{
|
||||
String8List baked = {0};
|
||||
raddbgic_bake_file(scratch.arena, out->root, &baked);
|
||||
rdim_bake_file(scratch.arena, out->root, &baked);
|
||||
U64 off = 0;
|
||||
for(String8Node *node = baked.first; node != 0; node = node->next)
|
||||
{
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
//- rjf: [h]
|
||||
#include "base/base_inc.h"
|
||||
#include "os/os_inc.h"
|
||||
#include "raddbgi_cons_local/raddbgi_cons_local.h"
|
||||
#include "raddbgi_make_local/raddbgi_make_local.h"
|
||||
#include "mdesk/mdesk.h"
|
||||
#include "hash_store/hash_store.h"
|
||||
#include "file_stream/file_stream.h"
|
||||
@@ -50,7 +50,7 @@
|
||||
//- rjf: [c]
|
||||
#include "base/base_inc.c"
|
||||
#include "os/os_inc.c"
|
||||
#include "raddbgi_cons_local/raddbgi_cons_local.c"
|
||||
#include "raddbgi_make_local/raddbgi_make_local.c"
|
||||
#include "mdesk/mdesk.c"
|
||||
#include "hash_store/hash_store.c"
|
||||
#include "file_stream/file_stream.c"
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
// Copyright (c) 2024 Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
#ifndef RADDBGI_CONS_LOCAL_H
|
||||
#define RADDBGI_CONS_LOCAL_H
|
||||
|
||||
// rjf: base layer memory ops
|
||||
#define RADDBGIC_MEMSET_OVERRIDE
|
||||
#define RADDBGIC_MEMCPY_OVERRIDE
|
||||
#define raddbgic_memset MemorySet
|
||||
#define raddbgic_memcpy MemoryCopy
|
||||
|
||||
// rjf: base layer string overrides
|
||||
#define RADDBGI_STRING8_OVERRIDE
|
||||
#define RADDBGIC_String8 String8
|
||||
#define RADDBGIC_String8_BaseMember str
|
||||
#define RADDBGIC_String8_SizeMember size
|
||||
#define RADDBGI_STRING8LIST_OVERRIDE
|
||||
#define RADDBGIC_String8Node String8Node
|
||||
#define RADDBGIC_String8Node_NextPtrMember next
|
||||
#define RADDBGIC_String8Node_StringMember string
|
||||
#define RADDBGIC_String8List String8List
|
||||
#define RADDBGIC_String8List_FirstMember first
|
||||
#define RADDBGIC_String8List_LastMember last
|
||||
#define RADDBGIC_String8List_NodeCountMember node_count
|
||||
#define RADDBGIC_String8List_TotalSizeMember total_size
|
||||
|
||||
// rjf: base layer arena overrides
|
||||
#define RADDBGIC_ARENA_OVERRIDE
|
||||
#define RADDBGIC_Arena Arena
|
||||
#define raddbgic_arena_alloc arena_alloc
|
||||
#define raddbgic_arena_release arena_release
|
||||
#define raddbgic_arena_pos arena_pos
|
||||
#define raddbgic_arena_push arena_push
|
||||
#define raddbgic_arena_pop_to arena_pop_to
|
||||
|
||||
// rjf: base layer scratch arena overrides
|
||||
#define RADDBGIC_SCRATCH_OVERRIDE
|
||||
#define RADDBGIC_Temp Temp
|
||||
#define raddbgic_temp_arena(t) ((t).arena)
|
||||
#define raddbgic_scratch_begin scratch_begin
|
||||
#define raddbgic_scratch_end scratch_end
|
||||
|
||||
#include "lib_raddbgi_cons/raddbgi_cons.h"
|
||||
|
||||
#endif // RADDBGI_CONS_LOCAL_H
|
||||
File diff suppressed because it is too large
Load Diff
@@ -67,7 +67,7 @@ typedef struct P2R_TypeRev P2R_TypeRev;
|
||||
struct P2R_TypeRev
|
||||
{
|
||||
P2R_TypeRev *next;
|
||||
RADDBGIC_Type *owner_type;
|
||||
RDIM_Type *owner_type;
|
||||
CV_TypeId field_itype;
|
||||
};
|
||||
|
||||
@@ -84,7 +84,7 @@ typedef struct P2R_FrameProcNode P2R_FrameProcNode;
|
||||
struct P2R_FrameProcNode
|
||||
{
|
||||
P2R_FrameProcNode *next;
|
||||
RADDBGIC_Symbol *key;
|
||||
RDIM_Symbol *key;
|
||||
P2R_FrameProcData data;
|
||||
};
|
||||
|
||||
@@ -103,8 +103,8 @@ typedef struct P2R_ScopeNode P2R_ScopeNode;
|
||||
struct P2R_ScopeNode
|
||||
{
|
||||
P2R_ScopeNode *next;
|
||||
RADDBGIC_Scope *scope;
|
||||
RADDBGIC_Symbol *symbol;
|
||||
RDIM_Scope *scope;
|
||||
RDIM_Symbol *symbol;
|
||||
};
|
||||
|
||||
//- rjf: known global map
|
||||
@@ -179,7 +179,7 @@ struct P2R_Ctx
|
||||
U64 section_count;
|
||||
|
||||
// OUTPUT data
|
||||
RADDBGIC_Root *root;
|
||||
RDIM_Root *root;
|
||||
|
||||
// TEMPORARY STATE
|
||||
P2R_FwdMap fwd_map;
|
||||
@@ -201,7 +201,7 @@ typedef struct P2R_Out P2R_Out;
|
||||
struct P2R_Out
|
||||
{
|
||||
B32 good_parse;
|
||||
RADDBGIC_Root *root;
|
||||
RDIM_Root *root;
|
||||
String8List dump;
|
||||
String8List errors;
|
||||
};
|
||||
@@ -227,7 +227,7 @@ internal RADDBGI_Language raddbgi_language_from_cv_language(CV_Language lang
|
||||
//~ rjf: Conversion Implementation Helpers
|
||||
|
||||
//- rjf: pdb conversion context creation
|
||||
internal P2R_Ctx *p2r_ctx_alloc(P2R_CtxParams *params, RADDBGIC_Root *out_root);
|
||||
internal P2R_Ctx *p2r_ctx_alloc(P2R_CtxParams *params, RDIM_Root *out_root);
|
||||
|
||||
//- rjf: pdb types and symbols
|
||||
internal void p2r_types_and_symbols(P2R_Ctx *pdb_ctx, P2R_TypesSymbolsParams *params);
|
||||
@@ -249,19 +249,19 @@ internal COFF_SectionHeader* p2r_sec_header_from_sec_num(P2R_Ctx *ctx, U32 sec_n
|
||||
// type info construction passes
|
||||
internal void p2r_type_cons_main_passes(P2R_Ctx *ctx);
|
||||
internal CV_TypeId p2r_type_resolve_fwd(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal RADDBGIC_Type* p2r_type_resolve_itype(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal void p2r_type_equip_members(P2R_Ctx *ctx, RADDBGIC_Type *owern_type, CV_TypeId field_itype);
|
||||
internal void p2r_type_equip_enumerates(P2R_Ctx *ctx, RADDBGIC_Type *owner_type, CV_TypeId field_itype);
|
||||
internal RDIM_Type* p2r_type_resolve_itype(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal void p2r_type_equip_members(P2R_Ctx *ctx, RDIM_Type *owern_type, CV_TypeId field_itype);
|
||||
internal void p2r_type_equip_enumerates(P2R_Ctx *ctx, RDIM_Type *owner_type, CV_TypeId field_itype);
|
||||
|
||||
// type info construction helpers
|
||||
internal RADDBGIC_Type* p2r_type_cons_basic(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal RADDBGIC_Type* p2r_type_cons_leaf_record(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal RADDBGIC_Type* p2r_type_resolve_and_check(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal void p2r_type_resolve_arglist(Arena *arena, RADDBGIC_TypeList *out,
|
||||
internal RDIM_Type* p2r_type_cons_basic(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal RDIM_Type* p2r_type_cons_leaf_record(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal RDIM_Type* p2r_type_resolve_and_check(P2R_Ctx *ctx, CV_TypeId itype);
|
||||
internal void p2r_type_resolve_arglist(Arena *arena, RDIM_TypeList *out,
|
||||
P2R_Ctx *ctx, CV_TypeId arglist_itype);
|
||||
|
||||
// type info resolution helpers
|
||||
internal RADDBGIC_Type* p2r_type_from_name(P2R_Ctx *ctx, String8 name);
|
||||
internal RDIM_Type* p2r_type_from_name(P2R_Ctx *ctx, String8 name);
|
||||
|
||||
// type fwd map
|
||||
internal void p2r_type_fwd_map_set(Arena *arena, P2R_FwdMap *map,
|
||||
@@ -278,12 +278,12 @@ internal void p2r_symbol_cons(P2R_Ctx *ctx, CV_SymParsed *sym, U32 sym_unique_id
|
||||
internal void p2r_gather_link_names(P2R_Ctx *ctx, CV_SymParsed *sym);
|
||||
|
||||
// "frameproc" map
|
||||
internal void p2r_symbol_frame_proc_write(P2R_Ctx *ctx,RADDBGIC_Symbol *key,
|
||||
internal void p2r_symbol_frame_proc_write(P2R_Ctx *ctx,RDIM_Symbol *key,
|
||||
P2R_FrameProcData *data);
|
||||
internal P2R_FrameProcData* p2r_symbol_frame_proc_read(P2R_Ctx *ctx, RADDBGIC_Symbol *key);
|
||||
internal P2R_FrameProcData* p2r_symbol_frame_proc_read(P2R_Ctx *ctx, RDIM_Symbol *key);
|
||||
|
||||
// scope stack
|
||||
internal void p2r_symbol_push_scope(P2R_Ctx *ctx, RADDBGIC_Scope *scope, RADDBGIC_Symbol *symbol);
|
||||
internal void p2r_symbol_push_scope(P2R_Ctx *ctx, RDIM_Scope *scope, RDIM_Symbol *symbol);
|
||||
internal void p2r_symbol_pop_scope(P2R_Ctx *ctx);
|
||||
internal void p2r_symbol_clear_scope_stack(P2R_Ctx *ctx);
|
||||
|
||||
@@ -302,23 +302,23 @@ internal void p2r_known_global_insert(Arena *arena, P2R_KnownGlobalSet *set,
|
||||
|
||||
|
||||
// location info helpers
|
||||
internal RADDBGIC_Location* p2r_location_from_addr_reg_off(P2R_Ctx *ctx,
|
||||
RADDBGI_RegisterCode reg_code,
|
||||
U32 reg_byte_size,
|
||||
U32 reg_byte_pos,
|
||||
S64 offset,
|
||||
B32 extra_indirection);
|
||||
internal RDIM_Location* p2r_location_from_addr_reg_off(P2R_Ctx *ctx,
|
||||
RADDBGI_RegisterCode reg_code,
|
||||
U32 reg_byte_size,
|
||||
U32 reg_byte_pos,
|
||||
S64 offset,
|
||||
B32 extra_indirection);
|
||||
|
||||
internal CV_EncodedFramePtrReg p2r_cv_encoded_fp_reg_from_proc(P2R_Ctx *ctx,
|
||||
RADDBGIC_Symbol *proc,
|
||||
RDIM_Symbol *proc,
|
||||
B32 param_base);
|
||||
|
||||
internal RADDBGI_RegisterCode p2r_reg_code_from_arch_encoded_fp_reg(RADDBGI_Arch arch,
|
||||
CV_EncodedFramePtrReg encoded_reg);
|
||||
|
||||
internal void p2r_location_over_lvar_addr_range(P2R_Ctx *ctx,
|
||||
RADDBGIC_LocationSet *locset,
|
||||
RADDBGIC_Location *location,
|
||||
RDIM_LocationSet *locset,
|
||||
RDIM_Location *location,
|
||||
CV_LvarAddrRange *range,
|
||||
CV_LvarAddrGap *gaps, U64 gap_count);
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ main(int argc, char **argv){
|
||||
if(out != 0 && out->good_parse && params->output_name.size > 0 && out->good_parse)
|
||||
{
|
||||
String8List baked = {0};
|
||||
raddbgic_bake_file(arena, out->root, &baked);
|
||||
rdim_bake_file(arena, out->root, &baked);
|
||||
for(String8Node *node = baked.first; node != 0; node = node->next)
|
||||
{
|
||||
fwrite(node->string.str, node->string.size, 1, out_file);
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
// Copyright (c) 2024 Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
#include "lib_raddbgi_cons/raddbgi_cons.c"
|
||||
#include "lib_raddbgi_make/raddbgi_make.c"
|
||||
@@ -0,0 +1,46 @@
|
||||
// Copyright (c) 2024 Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
#ifndef RADDBGI_CONS_LOCAL_H
|
||||
#define RADDBGI_CONS_LOCAL_H
|
||||
|
||||
// rjf: base layer memory ops
|
||||
#define RDIM_MEMSET_OVERRIDE
|
||||
#define RDIM_MEMCPY_OVERRIDE
|
||||
#define rdim_memset MemorySet
|
||||
#define rdim_memcpy MemoryCopy
|
||||
|
||||
// rjf: base layer string overrides
|
||||
#define RADDBGI_STRING8_OVERRIDE
|
||||
#define RDIM_String8 String8
|
||||
#define RDIM_String8_BaseMember str
|
||||
#define RDIM_String8_SizeMember size
|
||||
#define RADDBGI_STRING8LIST_OVERRIDE
|
||||
#define RDIM_String8Node String8Node
|
||||
#define RDIM_String8Node_NextPtrMember next
|
||||
#define RDIM_String8Node_StringMember string
|
||||
#define RDIM_String8List String8List
|
||||
#define RDIM_String8List_FirstMember first
|
||||
#define RDIM_String8List_LastMember last
|
||||
#define RDIM_String8List_NodeCountMember node_count
|
||||
#define RDIM_String8List_TotalSizeMember total_size
|
||||
|
||||
// rjf: base layer arena overrides
|
||||
#define RDIM_ARENA_OVERRIDE
|
||||
#define RDIM_Arena Arena
|
||||
#define rdim_arena_alloc arena_alloc
|
||||
#define rdim_arena_release arena_release
|
||||
#define rdim_arena_pos arena_pos
|
||||
#define rdim_arena_push arena_push
|
||||
#define rdim_arena_pop_to arena_pop_to
|
||||
|
||||
// rjf: base layer scratch arena overrides
|
||||
#define RDIM_SCRATCH_OVERRIDE
|
||||
#define RDIM_Temp Temp
|
||||
#define rdim_temp_arena(t) ((t).arena)
|
||||
#define rdim_scratch_begin scratch_begin
|
||||
#define rdim_scratch_end scratch_end
|
||||
|
||||
#include "lib_raddbgi_make/raddbgi_make.h"
|
||||
|
||||
#endif // RADDBGI_CONS_LOCAL_H
|
||||
Reference in New Issue
Block a user