Deleted Added
sdiff udiff text old ( 5529:9ae69b9cd7fd ) new ( 6005:1dc178e53487 )
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;

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

39MemDepUnit<MemDepPred, Impl>::MemDepUnit()
40 : loadBarrier(false), loadBarrierSN(0), storeBarrier(false),
41 storeBarrierSN(0), iqPtr(NULL)
42{
43}
44
45template <class MemDepPred, class Impl>
46MemDepUnit<MemDepPred, Impl>::MemDepUnit(DerivO3CPUParams *params)
47 : _name(params->name + ".memdepunit"),
48 depPred(params->SSITSize, params->LFSTSize), loadBarrier(false),
49 loadBarrierSN(0), storeBarrier(false), storeBarrierSN(0), iqPtr(NULL)
50{
51 DPRINTF(MemDepUnit, "Creating MemDepUnit object.\n");
52}
53
54template <class MemDepPred, class Impl>
55MemDepUnit<MemDepPred, Impl>::~MemDepUnit()
56{

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

72 }
73
74#ifdef DEBUG
75 assert(MemDepEntry::memdep_count == 0);
76#endif
77}
78
79template <class MemDepPred, class Impl>
80void
81MemDepUnit<MemDepPred, Impl>::init(DerivO3CPUParams *params, int tid)
82{
83 DPRINTF(MemDepUnit, "Creating MemDepUnit %i object.\n",tid);
84
85 _name = csprintf("%s.memDep%d", params->name, tid);
86 id = tid;
87
88 depPred.init(params->SSITSize, params->LFSTSize);
89}
90
91template <class MemDepPred, class Impl>
92void
93MemDepUnit<MemDepPred, Impl>::regStats()
94{
95 insertedLoads
96 .name(name() + ".insertedLoads")
97 .desc("Number of loads inserted to the mem dependence unit.");
98
99 insertedStores
100 .name(name() + ".insertedStores")
101 .desc("Number of stores inserted to the mem dependence unit.");
102
103 conflictingLoads
104 .name(name() + ".conflictingLoads")
105 .desc("Number of conflicting loads.");
106
107 conflictingStores
108 .name(name() + ".conflictingStores")
109 .desc("Number of conflicting stores.");
110}
111
112template <class MemDepPred, class Impl>
113void
114MemDepUnit<MemDepPred, Impl>::switchOut()
115{
116 assert(instList[0].empty());

--- 464 unchanged lines hidden ---