o3: Use shared_ptr for MemDepEntry

This patch transitions the o3 MemDepEntry from the ad-hoc
RefCountingPtr to the c++11 shared_ptr. There are no changes in
behaviour, and the code modifications are mainly replacing "new" with
"make_shared".
This commit is contained in:
Andreas Hansson 2014-10-16 05:49:49 -04:00
parent db3739682d
commit a769963d16
2 changed files with 6 additions and 6 deletions

View file

@ -44,10 +44,10 @@
#define __CPU_O3_MEM_DEP_UNIT_HH__
#include <list>
#include <memory>
#include <set>
#include "base/hashmap.hh"
#include "base/refcnt.hh"
#include "base/statistics.hh"
#include "cpu/inst_seq.hh"
#include "debug/MemDepUnit.hh"
@ -164,13 +164,13 @@ class MemDepUnit
class MemDepEntry;
typedef RefCountingPtr<MemDepEntry> MemDepEntryPtr;
typedef std::shared_ptr<MemDepEntry> MemDepEntryPtr;
/** Memory dependence entries that track memory operations, marking
* when the instruction is ready to execute and what instructions depend
* upon it.
*/
class MemDepEntry : public RefCounted {
class MemDepEntry {
public:
/** Constructs a memory dependence entry. */
MemDepEntry(DynInstPtr &new_inst)

View file

@ -162,7 +162,7 @@ MemDepUnit<MemDepPred, Impl>::insert(DynInstPtr &inst)
{
ThreadID tid = inst->threadNumber;
MemDepEntryPtr inst_entry = new MemDepEntry(inst);
MemDepEntryPtr inst_entry = std::make_shared<MemDepEntry>(inst);
// Add the MemDepEntry to the hash.
memDepHash.insert(
@ -259,7 +259,7 @@ MemDepUnit<MemDepPred, Impl>::insertNonSpec(DynInstPtr &inst)
{
ThreadID tid = inst->threadNumber;
MemDepEntryPtr inst_entry = new MemDepEntry(inst);
MemDepEntryPtr inst_entry = std::make_shared<MemDepEntry>(inst);
// Insert the MemDepEntry into the hash.
memDepHash.insert(
@ -310,7 +310,7 @@ MemDepUnit<MemDepPred, Impl>::insertBarrier(DynInstPtr &barr_inst)
ThreadID tid = barr_inst->threadNumber;
MemDepEntryPtr inst_entry = new MemDepEntry(barr_inst);
MemDepEntryPtr inst_entry = std::make_shared<MemDepEntry>(barr_inst);
// Add the MemDepEntry to the hash.
memDepHash.insert(