* Authors: Kevin Lim
*/
+#ifndef __CPU_BASE_DYN_INST_IMPL_HH__
+#define __CPU_BASE_DYN_INST_IMPL_HH__
+
#include <iostream>
#include <set>
#include <sstream>
return true;
}
+
+#endif//__CPU_BASE_DYN_INST_IMPL_HH__
* Geoffrey Blake
*/
+#ifndef __CPU_CHECKER_CPU_IMPL_HH__
+#define __CPU_CHECKER_CPU_IMPL_HH__
+
#include <list>
#include <string>
}
}
+
+#endif//__CPU_CHECKER_CPU_IMPL_HH__
* Authors: Kevin Lim
* Korey Sewell
*/
+#ifndef __CPU_O3_COMMIT_IMPL_HH__
+#define __CPU_O3_COMMIT_IMPL_HH__
#include <algorithm>
#include <set>
return InvalidThreadID;
}
}
+
+#endif//__CPU_O3_COMMIT_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_O3_DECODE_IMPL_HH__
+#define __CPU_O3_DECODE_IMPL_HH__
+
#include "arch/types.hh"
#include "base/trace.hh"
#include "config/the_isa.hh"
wroteToTimeBuffer = true;
}
}
+
+#endif//__CPU_O3_DECODE_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_O3_DYN_INST_IMPL_HH__
+#define __CPU_O3_DYN_INST_IMPL_HH__
+
#include "base/cp_annotate.hh"
#include "cpu/o3/dyn_inst.hh"
#include "sim/full_system.hh"
}
}
+#endif//__CPU_O3_DYN_INST_IMPL_HH__
* Korey Sewell
*/
+#ifndef __CPU_O3_FETCH_IMPL_HH__
+#define __CPU_O3_FETCH_IMPL_HH__
+
#include <algorithm>
#include <cstring>
#include <list>
tid, fetchStatus[tid]);
}
}
+
+#endif//__CPU_O3_FETCH_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_O3_IEW_IMPL_IMPL_HH__
+#define __CPU_O3_IEW_IMPL_IMPL_HH__
+
// @todo: Fix the instantaneous communication among all the stages within
// iew. There's a clear delay between issue and execute, yet backwards
// communication happens simultaneously.
}
}
}
+
+#endif//__CPU_O3_IEW_IMPL_IMPL_HH__
* Korey Sewell
*/
+#ifndef __CPU_O3_INST_QUEUE_IMPL_HH__
+#define __CPU_O3_INST_QUEUE_IMPL_HH__
+
#include <limits>
#include <vector>
++num;
}
}
+
+#endif//__CPU_O3_INST_QUEUE_IMPL_HH__
* Authors: Korey Sewell
*/
+#ifndef __CPU_O3_LSQ_IMPL_HH__
+#define __CPU_O3_LSQ_IMPL_HH__
+
#include <algorithm>
#include <list>
#include <string>
thread[tid].dumpInsts();
}
}
+
+#endif//__CPU_O3_LSQ_IMPL_HH__
* Korey Sewell
*/
+#ifndef __CPU_O3_LSQ_UNIT_IMPL_HH__
+#define __CPU_O3_LSQ_UNIT_IMPL_HH__
+
#include "arch/generic/debugfaults.hh"
#include "arch/locked_mem.hh"
#include "base/str.hh"
cprintf("\n");
}
+
+#endif//__CPU_O3_LSQ_UNIT_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_O3_MEM_DEP_UNIT_IMPL_HH__
+#define __CPU_O3_MEM_DEP_UNIT_IMPL_HH__
+
#include <map>
#include "cpu/o3/inst_queue.hh"
cprintf("Memory dependence entries: %i\n", MemDepEntry::memdep_count);
#endif
}
+
+#endif//__CPU_O3_MEM_DEP_UNIT_IMPL_HH__
* Korey Sewell
*/
+#ifndef __CPU_O3_RENAME_IMPL_HH__
+#define __CPU_O3_RENAME_IMPL_HH__
+
#include <list>
#include "arch/isa_traits.hh"
}
}
}
+
+#endif//__CPU_O3_RENAME_IMPL_HH__
* Korey Sewell
*/
+#ifndef __CPU_O3_ROB_IMPL_HH__
+#define __CPU_O3_ROB_IMPL_HH__
+
#include <list>
#include "cpu/o3/rob.hh"
}
return NULL;
}
+
+#endif//__CPU_O3_ROB_IMPL_HH__
* Korey Sewell
*/
+#ifndef __CPU_O3_THREAD_CONTEXT_IMPL_HH__
+#define __CPU_O3_THREAD_CONTEXT_IMPL_HH__
+
#include "arch/kernel_stats.hh"
#include "arch/registers.hh"
#include "config/the_isa.hh"
conditionalSquash();
}
+#endif//__CPU_O3_THREAD_CONTEXT_IMPL_HH__
template <class Impl>
void
O3ThreadContext<Impl>::setMiscReg(int misc_reg, const MiscReg &val)
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_BACK_END_IMPL_HH__
+#define __CPU_OZONE_BACK_END_IMPL_HH__
+
#include "cpu/ozone/back_end.hh"
#include "encumbered/cpu/full/op_class.hh"
++num;
}
}
+
+#endif//__CPU_OZONE_BACK_END_IMPL_HH__
* Nathan Binkert
*/
+#ifndef __CPU_OZONE_CPU_IMPL_HH__
+#define __CPU_OZONE_CPU_IMPL_HH__
+
#include "arch/alpha/osfpal.hh"
#include "arch/isa_traits.hh" // For MachInst
#include "arch/kernel_stats.hh"
}
}
+#endif//__CPU_OZONE_CPU_IMPL_HH__
+
template <class Impl>
void
OzoneCPU<Impl>::OzoneTC::setMiscReg(int misc_reg, const MiscReg &val)
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_DYN_INST_IMPL_HH__
+#define __CPU_OZONE_DYN_INST_IMPL_HH__
+
#include "config/the_isa.hh"
#include "cpu/ozone/dyn_inst.hh"
#include "kern/kernel_stats.hh"
{
this->cpu->syscall(callnum);
}
+
+#endif//__CPU_OZONE_DYN_INST_IMPL_HH__
*
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_BACK_END_IMPL_HH__
+#define __CPU_OZONE_BACK_END_IMPL_HH__
#include "arch/isa_traits.hh"
#include "arch/utility.hh"
buff_it++;
}
}
+
+#endif//__CPU_OZONE_BACK_END_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_INORDER_BACK_END_IMPL_HH__
+#define __CPU_OZONE_INORDER_BACK_END_IMPL_HH__
+
#include "arch/types.hh"
#include "config/the_isa.hh"
#include "cpu/ozone/inorder_back_end.hh"
{
return "DCache completion";
}
+#endif//__CPU_OZONE_INORDER_BACK_END_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_INST_QUEUE_IMPL_HH__
+#define __CPU_OZONE_INST_QUEUE_IMPL_HH__
+
// Todo:
// Current ordering allows for 0 cycle added-to-scheduled. Could maybe fake
// it; either do in reverse order, or have added instructions put into a
*/
}
}
+
+#define//__CPU_OZONE_INST_QUEUE_IMPL_HH__
*
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_LSQ_UNIT_IMPL_HH__
+#define __CPU_OZONE_LSQ_UNIT_IMPL_HH__
#include "base/str.hh"
#include "config/the_isa.hh"
if (--load_idx < 0)
load_idx += LQEntries;
}
+#endif//__CPU_OZONE_LSQ_UNIT_IMPL_HH__
*
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_LW_BACK_END_IMPL_HH__
+#define __CPU_OZONE_LW_BACK_END_IMPL_HH__
#include "config/the_isa.hh"
#include "cpu/checker/cpu.hh"
}
cprintf("\n");
}
+#endif//__CPU_OZONE_LW_BACK_END_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_LW_LSQ_IMPL_HH__
+#define __CPU_OZONE_LW_LSQ_IMPL_HH__
+
#include "base/str.hh"
#include "config/the_isa.hh"
#include "cpu/checker/cpu.hh"
blockedLoadSeqNum = 0;
}
+
+#endif//__CPU_OZONE_LW_LSQ_IMPL_HH__
*
* Authors: Kevin Lim
*/
+#ifndef __CPU_OZONE_RENAME_TABLE_IMPL_HH__
+#define __CPU_OZONE_RENAME_TABLE_IMPL_HH__
#include <cstdlib> // Not really sure what to include to get NULL
table[i] = table_to_copy.table[i];
}
}
+
+#endif//__CPU_OZONE_RENAME_TABLE_IMPL_HH__
* Authors: Kevin Lim
*/
+#ifndef __CPU_PRED_BPRED_UNIT_IMPL_HH__
+#define __CPU_PRED_BPRED_UNIT_IMPL_HH__
+
#include <algorithm>
#include "arch/isa_traits.hh"
}
}
}
+
+#endif//__CPU_PRED_BPRED_UNIT_IMPL_HH__
* Andreas Sandberg
*/
+#ifndef __MEM_CACHE_CACHE_IMPL_HH__
+#define __MEM_CACHE_CACHE_IMPL_HH__
+
/**
* @file
* Cache definitions.
_queue(*_cache, *this, _label), cache(_cache)
{
}
+
+#endif//__MEM_CACHE_CACHE_IMPL_HH__