mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-06-24 12:44:59 -07:00
tweak registers cache lookup rules, to correctly return stale results on failed reads
This commit is contained in:
+1
-1
@@ -47,7 +47,7 @@ commands =
|
||||
{
|
||||
.rjf_f1 =
|
||||
{
|
||||
.win = "build raddbg",
|
||||
.win = "build raddbg telemetry",
|
||||
.linux = "",
|
||||
.out = "*compilation*",
|
||||
.footer_panel = true,
|
||||
|
||||
@@ -1344,11 +1344,15 @@ ctrl_query_cached_reg_block_from_thread(Arena *arena, CTRL_MachineID machine_id,
|
||||
if(node)
|
||||
{
|
||||
U64 current_reg_gen = dmn_reg_gen();
|
||||
if(node->reg_gen != current_reg_gen && dmn_thread_read_reg_block(thread, node->block))
|
||||
if(node->reg_gen != current_reg_gen && dmn_thread_read_reg_block(thread, result))
|
||||
{
|
||||
node->reg_gen = current_reg_gen;
|
||||
MemoryCopy(node->block, result, reg_block_size);
|
||||
}
|
||||
else
|
||||
{
|
||||
MemoryCopy(result, node->block, reg_block_size);
|
||||
}
|
||||
MemoryCopy(result, node->block, reg_block_size);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
|
||||
@@ -3655,8 +3655,7 @@ df_architecture_from_entity(DF_Entity *entity)
|
||||
internal CTRL_Unwind
|
||||
df_push_unwind_from_thread(Arena *arena, DF_Entity *thread)
|
||||
{
|
||||
DF_Entity *process = df_entity_ancestor_from_kind(thread, DF_EntityKind_Process);
|
||||
CTRL_Unwind unwind = ctrl_unwind_from_thread(arena, df_state->ctrl_entity_store, thread->ctrl_machine_id, thread->ctrl_handle, os_now_microseconds()+5000);
|
||||
CTRL_Unwind unwind = ctrl_unwind_from_thread(arena, df_state->ctrl_entity_store, thread->ctrl_machine_id, thread->ctrl_handle, 0);
|
||||
return unwind;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user