summaryrefslogtreecommitdiff
path: root/cpu/beta_cpu/commit.hh
diff options
context:
space:
mode:
Diffstat (limited to 'cpu/beta_cpu/commit.hh')
-rw-r--r--cpu/beta_cpu/commit.hh28
1 files changed, 13 insertions, 15 deletions
diff --git a/cpu/beta_cpu/commit.hh b/cpu/beta_cpu/commit.hh
index 0e5a96e2a..981d9e78f 100644
--- a/cpu/beta_cpu/commit.hh
+++ b/cpu/beta_cpu/commit.hh
@@ -1,6 +1,4 @@
-// Todo: Squash properly. Have commit be able to send a squash signal
-// to previous stages; will be needed when trap() is implemented.
-// Maybe have a special method for handling interrupts/traps.
+// Todo: Maybe have a special method for handling interrupts/traps.
//
// Traps: Have IEW send a signal to commit saying that there's a trap to
// be handled. Have commit send the PC back to the fetch stage, along
@@ -17,12 +15,11 @@
#ifndef __SIMPLE_COMMIT_HH__
#define __SIMPLE_COMMIT_HH__
-//Includes: ROB, time buffer, structs, memory interface
-#include "arch/alpha/isa_traits.hh"
+//#include "arch/alpha/isa_traits.hh"
#include "base/timebuf.hh"
-#include "cpu/beta_cpu/comm.hh"
-#include "cpu/beta_cpu/rename_map.hh"
-#include "cpu/beta_cpu/rob.hh"
+//#include "cpu/beta_cpu/comm.hh"
+//#include "cpu/beta_cpu/rename_map.hh"
+//#include "cpu/beta_cpu/rob.hh"
#include "mem/memory_interface.hh"
template<class Impl>
@@ -32,14 +29,15 @@ class SimpleCommit
// Typedefs from the Impl.
typedef typename Impl::ISA ISA;
typedef typename Impl::FullCPU FullCPU;
- typedef typename Impl::DynInst DynInst;
+ typedef typename Impl::DynInstPtr DynInstPtr;
typedef typename Impl::Params Params;
+ typedef typename Impl::CPUPol CPUPol;
- typedef typename Impl::CPUPol::ROB ROB;
+ typedef typename CPUPol::ROB ROB;
- typedef typename Impl::TimeStruct TimeStruct;
- typedef typename Impl::IEWStruct IEWStruct;
- typedef typename Impl::RenameStruct RenameStruct;
+ typedef typename CPUPol::TimeStruct TimeStruct;
+ typedef typename CPUPol::IEWStruct IEWStruct;
+ typedef typename CPUPol::RenameStruct RenameStruct;
public:
// I don't believe commit can block, so it will only have two
@@ -83,7 +81,7 @@ class SimpleCommit
void commitInsts();
- bool commitHead(DynInst *head_inst, unsigned inst_num);
+ bool commitHead(DynInstPtr &head_inst, unsigned inst_num);
void getInsts();
@@ -117,7 +115,7 @@ class SimpleCommit
FullCPU *cpu;
/** Pointer to the rename map. DO NOT USE if possible. */
- typename Impl::CPUPol::RenameMap *renameMap;
+// typename Impl::CPUPol::RenameMap *renameMap;
//Store buffer interface? Will need to move committed stores to the
//store buffer