1 #ifndef INCLUDE__BasicBlock_hxx
2 #define INCLUDE__BasicBlock_hxx
9 class InformationManager;
13 uint64_t getStartAddress() const {
17 uint64_t getEndAddress() const {
21 uint64_t getNextBlock(size_t index) const {
23 return next_blocks[index];
26 void setNextBlock(size_t index, uint64_t address) {
28 next_blocks[index] = address;
31 void setStartAddress(uint64_t address) {
32 start_address = address;
35 void setEndAddress(uint64_t address) {
36 end_address = address;
39 std::string getName() const {
41 s << "BLOCK_" << std::hex << start_address << '_' << end_address;
45 InformationManager* getManager() const {
49 BasicBlock(uint64_t start_address, InformationManager* manager)
50 : start_address(start_address)
56 uint64_t start_address;
58 Disassembler* disassembler;
59 InformationManager* manager;
60 uint64_t next_blocks[2];
62 friend class InformationManager;