From 9b8c84cb5d2f71b5af4329f9ff6cdad380a6225c Mon Sep 17 00:00:00 2001 From: Robert Hauser <85344819+robhau@users.noreply.github.com> Date: Sat, 13 Jul 2024 05:52:24 +0200 Subject: [PATCH] arch-riscv: Overwrite getEMI() for timing expr (#1346) TimingExpression enables runtime calculation of the commit latency in MinorCPU. For this, machInst is obtained by getEMI() to match it with a given instruction. At default, getEMI() always returns 0 and is therefore overwritten to enable timing expressions for RISC-V. This was already done for ARM (see src/arch/arm/insts/static_inst.hh). Change-Id: I03d669b3439fd24e00cbf893f5db9951dfe56b1f Signed-off-by: Robert Hauser --- src/arch/riscv/insts/static_inst.hh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/arch/riscv/insts/static_inst.hh b/src/arch/riscv/insts/static_inst.hh index 8ccb9a7e65..10f0589fa3 100644 --- a/src/arch/riscv/insts/static_inst.hh +++ b/src/arch/riscv/insts/static_inst.hh @@ -86,6 +86,8 @@ class RiscvStaticInst : public StaticInst tc->pcState(pc); } + uint64_t getEMI() const override { return machInst; } + std::unique_ptr buildRetPC(const PCStateBase &cur_pc, const PCStateBase &call_pc) const override