Added cycle estimator and remove deprecated functions
This commit is contained in:
		| @@ -205,7 +205,7 @@ status riscv_target_adapter<ARCH>::read_single_register(unsigned int reg_no, std | ||||
|         // auto reg_size = arch::traits<ARCH>::reg_bit_width(static_cast<typename | ||||
|         // arch::traits<ARCH>::reg_e>(reg_no))/8; | ||||
|         auto *reg_base = core->get_regs_base_ptr(); | ||||
|         auto reg_width = arch::traits<ARCH>::reg_bit_width(static_cast<typename arch::traits<ARCH>::reg_e>(reg_no)) / 8; | ||||
|         auto reg_width = arch::traits<ARCH>::reg_bit_width(reg_no) / 8; | ||||
|         data.resize(reg_width); | ||||
|         avail.resize(reg_width); | ||||
|         auto offset = traits<ARCH>::reg_byte_offset(reg_no); | ||||
| @@ -319,12 +319,14 @@ template <typename ARCH> status riscv_target_adapter<ARCH>::remove_break(int typ | ||||
|  | ||||
| template <typename ARCH> status riscv_target_adapter<ARCH>::resume_from_addr(bool step, int sig, uint64_t addr, rp_thread_ref thread, | ||||
|         std::function<void(unsigned)> stop_callback) { | ||||
|     unsigned reg_no = arch::traits<ARCH>::PC; | ||||
|     std::vector<uint8_t> data(8); | ||||
|     *(reinterpret_cast<uint64_t *>(&data[0])) = addr; | ||||
|     core->set_reg(reg_no, data); | ||||
|     auto* reg_base = core->get_regs_base_ptr(); | ||||
|     auto reg_width = arch::traits<ARCH>::reg_bit_width(arch::traits<ARCH>::PC) / 8; | ||||
|     auto offset = traits<ARCH>::reg_byte_offset(arch::traits<ARCH>::PC); | ||||
|     const uint8_t* iter = reinterpret_cast<const uint8_t*>(&addr); | ||||
|     std::copy(iter, iter + reg_width, reg_base); | ||||
|     return resume_from_current(step, sig, thread, stop_callback); | ||||
| } | ||||
|  | ||||
| template <typename ARCH> status riscv_target_adapter<ARCH>::target_xml_query(std::string& out_buf) { | ||||
|     const std::string res{ | ||||
|         "<?xml version=\"1.0\"?><!DOCTYPE target SYSTEM \"gdb-target.dtd\">" | ||||
|   | ||||
		Reference in New Issue
	
	Block a user