X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fcpu%2Finorder%2Finorder_dyn_inst.hh;h=4b48a157b7c03bd58e5adbc3f6df354b8eb25adf;hb=750f33a90194f3f827ef887fb7e151235e61c919;hp=de9de5effe3970072e571bd13b2302fd941d45ac;hpb=b7b545bc38bcd9ee54f1b8e45064cd8b7a3070b0;p=gem5.git diff --git a/src/cpu/inorder/inorder_dyn_inst.hh b/src/cpu/inorder/inorder_dyn_inst.hh index de9de5eff..4b48a157b 100644 --- a/src/cpu/inorder/inorder_dyn_inst.hh +++ b/src/cpu/inorder/inorder_dyn_inst.hh @@ -37,7 +37,6 @@ #include #include -#include "arch/faults.hh" #include "arch/isa_traits.hh" #include "arch/mt.hh" #include "arch/types.hh" @@ -45,7 +44,6 @@ #include "base/fast_alloc.hh" #include "base/trace.hh" #include "base/types.hh" -#include "config/full_system.hh" #include "config/the_isa.hh" #include "cpu/inorder/inorder_trace.hh" #include "cpu/inorder/pipeline_traits.hh" @@ -59,6 +57,7 @@ #include "cpu/thread_context.hh" #include "debug/InOrderDynInst.hh" #include "mem/packet.hh" +#include "sim/fault_fwd.hh" #include "sim/system.hh" #if THE_ISA == ALPHA_ISA @@ -71,7 +70,6 @@ */ // Forward declaration. -class StaticInstPtr; class ResourceRequest; class Packet; @@ -105,7 +103,7 @@ class InOrderDynInst : public FastAlloc, public RefCounted enum { MaxInstSrcRegs = TheISA::MaxInstSrcRegs, /// Max source regs - MaxInstDestRegs = TheISA::MaxInstDestRegs, /// Max dest regs + MaxInstDestRegs = TheISA::MaxInstDestRegs /// Max dest regs }; public: @@ -400,6 +398,8 @@ class InOrderDynInst : public FastAlloc, public RefCounted bool isUnverifiable() const { return staticInst->isUnverifiable(); } bool isSyscall() const { return staticInst->isSyscall(); } + bool isMicroop() const { return staticInst->isMicroop(); } + bool isLastMicroop() const { return staticInst->isLastMicroop(); } ///////////////////////////////////////////// @@ -518,18 +518,15 @@ class InOrderDynInst : public FastAlloc, public RefCounted void setCurResSlot(unsigned slot_num) { curResSlot = slot_num; } /** Calls a syscall. */ -#if FULL_SYSTEM /** Calls hardware return from error interrupt. */ Fault hwrei(); /** Traps to handle specified fault. */ void trap(Fault fault); bool simPalCheck(int palFunc); -#else short syscallNum; - /** Calls a syscall. */ + /** Emulates a syscall. */ void syscall(int64_t callnum); -#endif //////////////////////////////////////////////////////////// //