lsq_impl.hh (5494:85c8d296c1cb) lsq_impl.hh (5529:9ae69b9cd7fd)
1/*
2 * Copyright (c) 2005-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;

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

29 */
30
31#include <algorithm>
32#include <list>
33#include <string>
34
35#include "cpu/o3/lsq.hh"
36
1/*
2 * Copyright (c) 2005-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;

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

29 */
30
31#include <algorithm>
32#include <list>
33#include <string>
34
35#include "cpu/o3/lsq.hh"
36
37#include "params/DerivO3CPU.hh"
38
37template<class Impl>
38void
39LSQ<Impl>::DcachePort::setPeer(Port *port)
40{
41 Port::setPeer(port);
42
43#if FULL_SYSTEM
44 // Update the ThreadContext's memory ports (Functional/Virtual

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

106 int curr_retry_tid = lsq->retryTid;
107 // Speculatively clear the retry Tid. This will get set again if
108 // the LSQUnit was unable to complete its access.
109 lsq->retryTid = -1;
110 lsq->thread[curr_retry_tid].recvRetry();
111}
112
113template <class Impl>
39template<class Impl>
40void
41LSQ<Impl>::DcachePort::setPeer(Port *port)
42{
43 Port::setPeer(port);
44
45#if FULL_SYSTEM
46 // Update the ThreadContext's memory ports (Functional/Virtual

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

108 int curr_retry_tid = lsq->retryTid;
109 // Speculatively clear the retry Tid. This will get set again if
110 // the LSQUnit was unable to complete its access.
111 lsq->retryTid = -1;
112 lsq->thread[curr_retry_tid].recvRetry();
113}
114
115template <class Impl>
114LSQ::LSQ(O3CPU *cpu_ptr, IEW *iew_ptr, Params *params)
116LSQ<Impl>::LSQ(O3CPU *cpu_ptr, IEW *iew_ptr, DerivO3CPUParams *params)
115 : cpu(cpu_ptr), iewStage(iew_ptr), dcachePort(this),
116 LQEntries(params->LQEntries),
117 SQEntries(params->SQEntries),
117 : cpu(cpu_ptr), iewStage(iew_ptr), dcachePort(this),
118 LQEntries(params->LQEntries),
119 SQEntries(params->SQEntries),
118 numThreads(params->numberOfThreads),
120 numThreads(params->numThreads),
119 retryTid(-1)
120{
121 dcachePort.snoopRangeSent = false;
122
123 //**********************************************/
124 //************ Handle SMT Parameters ***********/
125 //**********************************************/
126 std::string policy = params->smtLSQPolicy;

--- 501 unchanged lines hidden ---
121 retryTid(-1)
122{
123 dcachePort.snoopRangeSent = false;
124
125 //**********************************************/
126 //************ Handle SMT Parameters ***********/
127 //**********************************************/
128 std::string policy = params->smtLSQPolicy;

--- 501 unchanged lines hidden ---