From bea4c5538e287cd3b5943c1e45e8b24c5b462cb4 Mon Sep 17 00:00:00 2001 From: Oxore Date: Sat, 1 Feb 2025 18:14:31 +0300 Subject: Turn ReferenceRecord chains into a simple linked list --- src/disasm.h | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) (limited to 'src/disasm.h') diff --git a/src/disasm.h b/src/disasm.h index 5b1b4b9..2a6a1d0 100644 --- a/src/disasm.h +++ b/src/disasm.h @@ -20,18 +20,11 @@ enum class ReferenceType { }; struct ReferenceRecord { + ReferenceRecord *next{}; ReferenceType type{}; uint32_t address{}; }; -constexpr size_t kRefsCountPerBuffer = 10; - -struct ReferenceNode { - ReferenceNode *next{}; - ReferenceRecord refs[kRefsCountPerBuffer]; - uint32_t refs_count{}; -}; - enum class NodeType { kTracedInstruction, kRefInstruction, @@ -50,8 +43,8 @@ struct DisasmNode { uint32_t ref1_addr{}; /// Address of second argument reference uint32_t ref2_addr{}; - ReferenceNode *ref_by{}; - ReferenceNode *last_ref_by{}; + ReferenceRecord *ref_by{}; + ReferenceRecord *last_ref_by{}; Op op{}; /*! Disassembles instruction with arguments -- cgit v1.2.3