rocprofiler-sdk/cxx/codeobj/code_printing.hpp Source File#
Rocprofiler SDK Developer API 0.5.0
ROCm Profiling API and tools
|
code_printing.hpp
Go to the documentation of this file.
Translates virtual addresses to elf file offsets.
Definition code_printing.hpp:338
virtual void addDecoder(const char *filepath, marker_id_t id, uint64_t load_addr, uint64_t memsize) override
Definition code_printing.hpp:345
~CodeobjAddressTranslate() override=default
std::unique_ptr< Instruction > get(uint64_t vaddr)
Definition code_printing.hpp:371
virtual void addDecoder(const void *data, unsigned long memory_size, marker_id_t id, uint64_t load_addr, uint64_t memsize) override
Definition code_printing.hpp:355
std::map< uint64_t, SymbolInfo > getSymbolMap() const
Definition code_printing.hpp:395
std::map< uint64_t, SymbolInfo > getSymbolMap(marker_id_t id) const
Definition code_printing.hpp:409
virtual bool removeDecoder(marker_id_t id, uint64_t load_addr)
Definition code_printing.hpp:366
std::unique_ptr< Instruction > get(marker_id_t id, uint64_t offset)
Definition code_printing.hpp:377
const char * getSymbolName(uint64_t vaddr)
Definition code_printing.hpp:385
CodeobjAddressTranslate()=default
CodeobjDecoderComponent(const char *codeobj_data, uint64_t codeobj_size)
Definition code_printing.hpp:87
std::optional< uint64_t > va2fo(uint64_t vaddr)
Definition code_printing.hpp:167
std::map< segment::address_range_t, std::string > m_line_number_map
Definition code_printing.hpp:192
~CodeobjDecoderComponent()
Definition code_printing.hpp:165
std::unique_ptr< DisassemblyInstance > disassembly
Definition code_printing.hpp:190
std::unique_ptr< Instruction > disassemble_instruction(uint64_t faddr, uint64_t vaddr)
Definition code_printing.hpp:173
std::vector< std::shared_ptr< Instruction > > instructions
Definition code_printing.hpp:189
std::map< uint64_t, SymbolInfo > m_symbol_map
Definition code_printing.hpp:188
Maps ID and offsets into instructions.
Definition code_printing.hpp:280
virtual bool removeDecoderbyId(marker_id_t id)
Definition code_printing.hpp:303
std::unordered_map< marker_id_t, std::shared_ptr< LoadedCodeobjDecoder > > decoders
Definition code_printing.hpp:331
const char * getSymbolName(marker_id_t id, uint64_t offset)
Definition code_printing.hpp:318
virtual void addDecoder(const void *data, unsigned long memory_size, marker_id_t id, uint64_t load_addr, uint64_t memsize)
Definition code_printing.hpp:293
virtual void addDecoder(const char *filepath, marker_id_t id, uint64_t load_addr, uint64_t memsize)
Definition code_printing.hpp:285
CodeobjMap()=default
virtual ~CodeobjMap()=default
std::unique_ptr< Instruction > get(marker_id_t id, uint64_t offset)
Definition code_printing.hpp:305
uint64_t size() const
Definition code_printing.hpp:250
uint64_t begin() const
Definition code_printing.hpp:248
LoadedCodeobjDecoder(const void *data, uint64_t size, uint64_t _load_addr, unsigned long _memsize)
Definition code_printing.hpp:227
const uint64_t load_addr
Definition code_printing.hpp:268
LoadedCodeobjDecoder(const char *filepath, uint64_t _load_addr, uint64_t _memsize)
Definition code_printing.hpp:198
bool inrange(uint64_t addr) const
Definition code_printing.hpp:251
std::map< uint64_t, SymbolInfo > & getSymbolMap() const
Definition code_printing.hpp:263
uint64_t end() const
Definition code_printing.hpp:249
const char * getSymbolName(uint64_t addr) const
Definition code_printing.hpp:253
std::unique_ptr< Instruction > get(uint64_t ld_addr)
Definition code_printing.hpp:234
Finds a candidate codeobj for the given vaddr.
Definition segment.hpp:65
bool remove(const address_range_t &range)
Definition segment.hpp:81
address_range_t find_codeobj_in_range(uint64_t addr)
Definition segment.hpp:69
segment::marker_id_t marker_id_t
Definition code_printing.hpp:49
Definition code_printing.hpp:42
STL namespace.
unsigned long size
Definition code_printing.hpp:62
uint64_t faddr
Definition code_printing.hpp:60
uint64_t vaddr
Definition code_printing.hpp:61
std::string inst
Definition code_printing.hpp:58
Instruction(std::string &&_inst, unsigned long _size)
Definition code_printing.hpp:54
std::string comment
Definition code_printing.hpp:59
uint64_t ld_addr
Definition code_printing.hpp:63
Instruction()=default
marker_id_t codeobj_id
Definition code_printing.hpp:64
Generated by 1.9.8