mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-11-14 10:10:11 -08:00
rdi_make: ensure terminator line records are sorted *before* records with actual line info, since these are always ending sequences - we always want a line record with an actual file/line info to come *after* terminators. fixes missing line info
This commit is contained in:
1 parent
b2c4dce4b0
commit
c44e4a388e
2 files changed
+4
-3
No files matched your search
@@ -442,7 +442,8 @@ rdim_sort_key_array(RDIM_Arena *arena, RDIM_SortKey *keys, RDI_U64 count)
|
||||
RDI_U64 j2_opl = range2->opl;
|
||||
for(;;)
|
||||
{
|
||||
if(src[j1].key <= src[j2].key)
|
||||
if(src[j1].key < src[j2].key ||
|
||||
(src[j1].key == src[j2].key && src[j1].val == 0 && src[j2].val != 0))
|
||||
{
|
||||
rdim_memcpy(dst + jd, src + j1, sizeof(*src));
|
||||
j1 += 1;
|
||||
|
||||
+2
-2
@@ -1143,7 +1143,6 @@ rb_thread_entry_point(void *p)
|
||||
RDI_Scope *root_scope = rdi_element_from_name_idx(rdi, Scopes, proc->root_scope_idx);
|
||||
if(root_scope->voff_range_opl > root_scope->voff_range_first)
|
||||
{
|
||||
|
||||
// rjf: dump function record
|
||||
RDIM_Rng1U64 voff_range =
|
||||
{
|
||||
@@ -1152,7 +1151,8 @@ rb_thread_entry_point(void *p)
|
||||
};
|
||||
{
|
||||
Temp scratch = scratch_begin(0, 0);
|
||||
str8_list_pushf(arena, out, "FUNC %I64x %I64x %I64x %S\n", voff_range.min, voff_range.max-voff_range.min, 0ull, fully_qualified_str8_from_rdi_symbol(scratch.arena, rdi, proc));
|
||||
String8 name = fully_qualified_str8_from_rdi_symbol(scratch.arena, rdi, proc);
|
||||
str8_list_pushf(arena, out, "FUNC %I64x %I64x %I64x %S\n", voff_range.min, voff_range.max-voff_range.min, 0ull, name);
|
||||
scratch_end(scratch);
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user