summaryrefslogtreecommitdiff
path: root/src/cpu/inorder/resources
diff options
context:
space:
mode:
authorKorey Sewell <ksewell@umich.edu>2011-06-19 21:43:41 -0400
committerKorey Sewell <ksewell@umich.edu>2011-06-19 21:43:41 -0400
commit2dae0e87358e693f120c2da925801944a4727a91 (patch)
treeb2f70ef7b5fa9e763ba49e0c475fad15af7b0d78 /src/cpu/inorder/resources
parent8c0def8d0347e9a7b84f21895c5cbd94eba9a09a (diff)
downloadgem5-2dae0e87358e693f120c2da925801944a4727a91.tar.xz
inorder: use separate float-reg bits function in dyninst
this will make sure we get the correct view of a FP register
Diffstat (limited to 'src/cpu/inorder/resources')
-rw-r--r--src/cpu/inorder/resources/use_def.cc7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/cpu/inorder/resources/use_def.cc b/src/cpu/inorder/resources/use_def.cc
index f7376c83c..9d0100565 100644
--- a/src/cpu/inorder/resources/use_def.cc
+++ b/src/cpu/inorder/resources/use_def.cc
@@ -404,18 +404,18 @@ UseDefUnit::execute(int slot_idx)
regDepMap[tid]->removeFront(reg_type, flat_idx, inst);
if (inst->resultType(ud_idx) ==
- InOrderDynInst::Integer) {
+ InOrderDynInst::FloatBits) {
DPRINTF(InOrderUseDef, "[tid:%i]: [sn:%i]: Writing FP-Bits "
"Result %08f (bits:0x%x) to register "
"idx %i (%i).\n",
tid, seq_num,
inst->readFloatResult(ud_idx),
- inst->readIntResult(ud_idx),
+ inst->readFloatBitsResult(ud_idx),
reg_idx - FP_Base_DepTag, flat_idx);
// Check for FloatRegBits Here
cpu->setFloatRegBits(flat_idx,
- inst->readIntResult(ud_idx),
+ inst->readFloatBitsResult(ud_idx),
inst->readTid());
} else if (inst->resultType(ud_idx) ==
InOrderDynInst::Float) {
@@ -439,7 +439,6 @@ UseDefUnit::execute(int slot_idx)
inst->readIntResult(ud_idx),
reg_idx - FP_Base_DepTag, flat_idx);
- // Check for FloatRegBits Here
cpu->setFloatReg(flat_idx,
inst->readFloatResult(ud_idx),
inst->readTid());