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/simple | |
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/simple')
-rw-r--r-- | src/cpu/simple/exec_context.hh | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/cpu/simple/exec_context.hh b/src/cpu/simple/exec_context.hh index aa6ee8ba3..7db7d20d9 100644 --- a/src/cpu/simple/exec_context.hh +++ b/src/cpu/simple/exec_context.hh @@ -361,8 +361,7 @@ class SimpleExecContext : public ExecContext { } void - setMiscRegOperand(const StaticInst *si, int idx, - const RegVal &val) override + setMiscRegOperand(const StaticInst *si, int idx, RegVal val) override { numIntRegWrites++; const RegId& reg = si->destRegIdx(idx); @@ -386,7 +385,7 @@ class SimpleExecContext : public ExecContext { * side effects due to writing that register. */ void - setMiscReg(int misc_reg, const RegVal &val) override + setMiscReg(int misc_reg, RegVal val) override { numIntRegWrites++; thread->setMiscReg(misc_reg, val); |