cpu/base_dyn_inst.cc:
Remove unused commented out code.
cpu/base_dyn_inst.hh:
Fix up comments.
cpu/beta_cpu/2bit_local_pred.cc:
Reorder code to match header file.
cpu/beta_cpu/2bit_local_pred.hh:
Update comments.
cpu/beta_cpu/alpha_dyn_inst.hh:
Remove useless comments.
cpu/beta_cpu/alpha_dyn_inst_impl.hh:
cpu/beta_cpu/alpha_full_cpu_impl.hh:
cpu/beta_cpu/comm.hh:
cpu/beta_cpu/iew_impl.hh:
Remove unused commented code.
cpu/beta_cpu/alpha_full_cpu.hh:
Remove obsolete comment.
cpu/beta_cpu/alpha_impl.hh:
cpu/beta_cpu/full_cpu.hh:
Alphabetize includes.
cpu/beta_cpu/bpred_unit.hh:
Remove unused global history code.
cpu/beta_cpu/btb.hh:
cpu/beta_cpu/free_list.hh:
Use full path in #defines.
cpu/beta_cpu/commit.hh:
cpu/beta_cpu/decode.hh:
Reorder functions.
cpu/beta_cpu/commit_impl.hh:
Remove obsolete commented code.
cpu/beta_cpu/fetch.hh:
Remove obsolete comments.
cpu/beta_cpu/fetch_impl.hh:
cpu/beta_cpu/rename_impl.hh:
Remove commented code.
cpu/beta_cpu/full_cpu.cc:
Remove useless defines.
cpu/beta_cpu/inst_queue.hh:
Use full path for #defines.
cpu/beta_cpu/inst_queue_impl.hh:
Reorder functions to match header file.
cpu/beta_cpu/mem_dep_unit.hh:
Use full path name for #defines.
cpu/beta_cpu/ras.hh:
Use full path names for #defines. Remove mod operation.
cpu/beta_cpu/regfile.hh:
Remove unused commented code, fix up current comments.
cpu/beta_cpu/tournament_pred.cc:
cpu/beta_cpu/tournament_pred.hh:
Update programming style.
--HG--
extra : convert_revision : fb9d18a853f58a1108ff827e3c123d5b52a0608a
55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
#ifndef __CPU_BETA_CPU_ALPHA_IMPL_HH__
|
|
#define __CPU_BETA_CPU_ALPHA_IMPL_HH__
|
|
|
|
#include "arch/alpha/isa_traits.hh"
|
|
|
|
#include "cpu/beta_cpu/alpha_params.hh"
|
|
#include "cpu/beta_cpu/cpu_policy.hh"
|
|
|
|
// Forward declarations.
|
|
template <class Impl>
|
|
class AlphaDynInst;
|
|
|
|
template <class Impl>
|
|
class AlphaFullCPU;
|
|
|
|
/** Implementation specific struct that defines several key things to the
|
|
* CPU, the stages within the CPU, the time buffers, and the DynInst.
|
|
* The struct defines the ISA, the CPU policy, the specific DynInst, the
|
|
* specific FullCPU, and all of the structs from the time buffers to do
|
|
* communication.
|
|
* This is one of the key things that must be defined for each hardware
|
|
* specific CPU implementation.
|
|
*/
|
|
struct AlphaSimpleImpl
|
|
{
|
|
/** The ISA to be used. */
|
|
typedef AlphaISA ISA;
|
|
|
|
/** The type of MachInst. */
|
|
typedef ISA::MachInst MachInst;
|
|
|
|
/** The CPU policy to be used (ie fetch, decode, etc.). */
|
|
typedef SimpleCPUPolicy<AlphaSimpleImpl> CPUPol;
|
|
|
|
/** The DynInst to be used. */
|
|
typedef AlphaDynInst<AlphaSimpleImpl> DynInst;
|
|
|
|
/** The refcounted DynInst pointer to be used. In most cases this is
|
|
* what should be used, and not DynInst *.
|
|
*/
|
|
typedef RefCountingPtr<DynInst> DynInstPtr;
|
|
|
|
/** The FullCPU to be used. */
|
|
typedef AlphaFullCPU<AlphaSimpleImpl> FullCPU;
|
|
|
|
/** The Params to be passed to each stage. */
|
|
typedef AlphaSimpleParams Params;
|
|
|
|
enum {
|
|
MaxWidth = 8
|
|
};
|
|
};
|
|
|
|
#endif // __CPU_BETA_CPU_ALPHA_IMPL_HH__
|