diff options
author | Andreas Hansson <andreas.hansson@arm.com> | 2014-09-27 09:08:36 -0400 |
---|---|---|
committer | Andreas Hansson <andreas.hansson@arm.com> | 2014-09-27 09:08:36 -0400 |
commit | 341dbf266258dcbdb1e5e9f09c244b8ac271faaf (patch) | |
tree | f071f9a91adeb0c1eb0888ae751c3ee0196bd65d /src/sim/faults.cc | |
parent | deb2200671d5b4856ca27d4286253db0d9e12a32 (diff) | |
download | gem5-341dbf266258dcbdb1e5e9f09c244b8ac271faaf.tar.xz |
arch: Use const StaticInstPtr references where possible
This patch optimises the passing of StaticInstPtr by avoiding copying
the reference-counting pointer. This avoids first incrementing and
then decrementing the reference-counting pointer.
Diffstat (limited to 'src/sim/faults.cc')
-rw-r--r-- | src/sim/faults.cc | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/sim/faults.cc b/src/sim/faults.cc index c409aa95b..e2562fca6 100644 --- a/src/sim/faults.cc +++ b/src/sim/faults.cc @@ -39,7 +39,7 @@ #include "sim/full_system.hh" #include "sim/process.hh" -void FaultBase::invoke(ThreadContext * tc, StaticInstPtr inst) +void FaultBase::invoke(ThreadContext * tc, const StaticInstPtr &inst) { if (FullSystem) { DPRINTF(Fault, "Fault %s at PC: %s\n", name(), tc->pcState()); @@ -49,17 +49,17 @@ void FaultBase::invoke(ThreadContext * tc, StaticInstPtr inst) } } -void UnimpFault::invoke(ThreadContext * tc, StaticInstPtr inst) +void UnimpFault::invoke(ThreadContext * tc, const StaticInstPtr &inst) { panic("Unimpfault: %s\n", panicStr.c_str()); } -void ReExec::invoke(ThreadContext *tc, StaticInstPtr inst) +void ReExec::invoke(ThreadContext *tc, const StaticInstPtr &inst) { tc->pcState(tc->pcState()); } -void GenericPageTableFault::invoke(ThreadContext *tc, StaticInstPtr inst) +void GenericPageTableFault::invoke(ThreadContext *tc, const StaticInstPtr &inst) { bool handled = false; if (!FullSystem) { @@ -71,7 +71,7 @@ void GenericPageTableFault::invoke(ThreadContext *tc, StaticInstPtr inst) } -void GenericAlignmentFault::invoke(ThreadContext *tc, StaticInstPtr inst) +void GenericAlignmentFault::invoke(ThreadContext *tc, const StaticInstPtr &inst) { panic("Alignment fault when accessing virtual address %#x\n", vaddr); } |