checkpoint in implementing dynamic type resolution in the eval system, for taking a base-class-ptr & by-default patching in the appropriate debug-info-determined derived type

This commit is contained in:
Ryan Fleury
2024-01-16 17:33:17 -08:00
parent adbe42c907
commit d849b83acb
5 changed files with 130 additions and 18 deletions
+3
View File
@@ -1135,6 +1135,8 @@ struct DF_State
DF_RunLocalsCache locals_cache;
B32 member_cache_invalidated;
DF_RunLocalsCache member_cache;
B32 local_dynamic_type_override_cache_invalidated;
DF_RunLocalsCache local_dynamic_type_override_cache;
// rjf: eval view cache
DF_EvalViewCache eval_view_cache;
@@ -1655,6 +1657,7 @@ internal U64 df_query_cached_rip_from_thread(DF_Entity *thread);
internal U64 df_query_cached_rip_from_thread_unwind(DF_Entity *thread, U64 unwind_count);
internal EVAL_String2NumMap *df_query_cached_locals_map_from_binary_voff(DF_Entity *binary, U64 voff);
internal EVAL_String2NumMap *df_query_cached_member_map_from_binary_voff(DF_Entity *binary, U64 voff);
internal EVAL_String2NumMap *df_query_cached_local_dynamic_type_override_map_from_module_voff(DF_Entity *module, U64 voff);
//- rjf: top-level command dispatch
internal void df_push_cmd__root(DF_CmdParams *params, DF_CmdSpec *spec);