diff options
author | Steve Reinhardt <steve.reinhardt@amd.com> | 2016-02-06 17:21:20 -0800 |
---|---|---|
committer | Steve Reinhardt <steve.reinhardt@amd.com> | 2016-02-06 17:21:20 -0800 |
commit | 2d91e741e8ffc8ae3d40f1e849db87e69af7bfa9 (patch) | |
tree | 7516d86052480e28009bb772083ddd7b9eb72415 /src/arch/x86/utility.cc | |
parent | 4e65e25e257f30f2185bc4c4bd06e5b1fdb9688d (diff) | |
download | gem5-2d91e741e8ffc8ae3d40f1e849db87e69af7bfa9.tar.xz |
x86: create function to check miscreg validity
In the process of trying to get rid of an '== false' comparison,
it became apparent that a slightly more involved solution was
needed. Split this out into its own changeset since it's not
a totally trivial local change like the others.
Diffstat (limited to 'src/arch/x86/utility.cc')
-rw-r--r-- | src/arch/x86/utility.cc | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/arch/x86/utility.cc b/src/arch/x86/utility.cc index cf6d2d910..cf3072348 100644 --- a/src/arch/x86/utility.cc +++ b/src/arch/x86/utility.cc @@ -217,11 +217,9 @@ copyMiscRegs(ThreadContext *src, ThreadContext *dest) // need to be considered while copying state. That will likely not be // true in the future. for (int i = 0; i < NUM_MISCREGS; ++i) { - if ( ( i != MISCREG_CR1 && - !(i > MISCREG_CR4 && i < MISCREG_CR8) && - !(i > MISCREG_CR8 && i <= MISCREG_CR15) ) == false) { + if (!isValidMiscReg(i)) continue; - } + dest->setMiscRegNoEffect(i, src->readMiscRegNoEffect(i)); } |