diff options
author | Gabe Black <gabeblack@google.com> | 2018-10-18 17:34:08 -0700 |
---|---|---|
committer | Gabe Black <gabeblack@google.com> | 2019-01-22 21:15:45 +0000 |
commit | 230b892fa3f484a46f4cd77f889f8793416b91e2 (patch) | |
tree | 53b32ed7120d019399e36d04655487745bbba9ee /src/cpu/thread_context.hh | |
parent | 774770a6410abb129e2a19de1ca50d7c0c311fef (diff) | |
download | gem5-230b892fa3f484a46f4cd77f889f8793416b91e2.tar.xz |
arch: cpu: Stop passing around misc registers by reference.
These values are all basic integers (specifically uint64_t now), and
so passing them by const & is actually less efficient since there's a
extra level of indirection and an extra value, and the same sized value
(a 64 bit pointer vs. a 64 bit int) is being passed around.
Change-Id: Ie9956b8dc4c225068ab1afaba233ec2b42b76da3
Reviewed-on: https://gem5-review.googlesource.com/c/13626
Maintainer: Gabe Black <gabeblack@google.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'src/cpu/thread_context.hh')
-rw-r--r-- | src/cpu/thread_context.hh | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/cpu/thread_context.hh b/src/cpu/thread_context.hh index db88227d9..cad073b4f 100644 --- a/src/cpu/thread_context.hh +++ b/src/cpu/thread_context.hh @@ -278,9 +278,9 @@ class ThreadContext virtual RegVal readMiscReg(int misc_reg) = 0; - virtual void setMiscRegNoEffect(int misc_reg, const RegVal &val) = 0; + virtual void setMiscRegNoEffect(int misc_reg, RegVal val) = 0; - virtual void setMiscReg(int misc_reg, const RegVal &val) = 0; + virtual void setMiscReg(int misc_reg, RegVal val) = 0; virtual RegId flattenRegId(const RegId& regId) const = 0; @@ -291,7 +291,7 @@ class ThreadContext } virtual void - setRegOtherThread(const RegId& misc_reg, const RegVal &val, ThreadID tid) + setRegOtherThread(const RegId& misc_reg, RegVal val, ThreadID tid) { } @@ -541,10 +541,10 @@ class ProxyThreadContext : public ThreadContext RegVal readMiscReg(int misc_reg) { return actualTC->readMiscReg(misc_reg); } - void setMiscRegNoEffect(int misc_reg, const RegVal &val) + void setMiscRegNoEffect(int misc_reg, RegVal val) { return actualTC->setMiscRegNoEffect(misc_reg, val); } - void setMiscReg(int misc_reg, const RegVal &val) + void setMiscReg(int misc_reg, RegVal val) { return actualTC->setMiscReg(misc_reg, val); } RegId flattenRegId(const RegId& regId) const |