29#ifndef __ARCH_GENERIC_DECODE_CACHE_HH__
30#define __ARCH_GENERIC_DECODE_CACHE_HH__
42template <
typename Decoder,
typename EMI>
62 if (entry.inst && (entry.machInst == mach_inst))
65 entry.machInst = mach_inst;
67 auto iter =
instMap.find(mach_inst);
69 entry.inst = iter->second;
73 entry.inst =
decoder->decodeInst(mach_inst);
74 instMap[mach_inst] = entry.inst;
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,...
decode_cache::InstMap< EMI > instMap
decode_cache::AddrMap< AddrMapEntry > decodePages
StaticInstPtr decode(Decoder *const decoder, EMI mach_inst, Addr addr)
Decode a machine instruction.
A sparse map from an Addr to a Value, stored in page chunks.
std::unordered_map< EMI, StaticInstPtr > InstMap
Hash for decoded instructions.
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.