Deleted Added
sdiff udiff text old ( 2689:dbf969c18a65 ) new ( 2698:d5f35d41e017 )
full compact
1/*
2 * Copyright (c) 2004-2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 22 unchanged lines hidden (view full) ---

31#ifndef __CPU_O3_LSQ_HH__
32#define __CPU_O3_LSQ_HH__
33
34#include <map>
35#include <queue>
36
37#include "config/full_system.hh"
38#include "cpu/inst_seq.hh"
39#include "cpu/o3/lsq_unit.hh"
40#include "mem/port.hh"
41#include "sim/sim_object.hh"
42
43template <class Impl>
44class LSQ {
45 public:
46 typedef typename Impl::Params Params;
47 typedef typename Impl::FullCPU FullCPU;
48 typedef typename Impl::DynInstPtr DynInstPtr;

--- 14 unchanged lines hidden (view full) ---

63 std::string name() const;
64
65 /** Sets the pointer to the list of active threads. */
66 void setActiveThreads(std::list<unsigned> *at_ptr);
67 /** Sets the CPU pointer. */
68 void setCPU(FullCPU *cpu_ptr);
69 /** Sets the IEW stage pointer. */
70 void setIEW(IEW *iew_ptr);
71 /** Switches out the LSQ. */
72 void switchOut();
73 /** Takes over execution from another CPU's thread. */
74 void takeOverFrom();
75
76 /** Number of entries needed for the given amount of threads.*/
77 int entryAmount(int num_threads);
78 void removeEntries(unsigned tid);

--- 193 unchanged lines hidden (view full) ---

272 LSQUnit thread[Impl::MaxThreads];
273
274 /** The CPU pointer. */
275 FullCPU *cpu;
276
277 /** The IEW stage pointer. */
278 IEW *iewStage;
279
280 /** List of Active Threads in System. */
281 std::list<unsigned> *activeThreads;
282
283 /** Total Size of LQ Entries. */
284 unsigned LQEntries;
285 /** Total Size of SQ Entries. */
286 unsigned SQEntries;
287

--- 31 unchanged lines hidden ---