projects
/
gem5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
96e5086
)
Switch the endianness of data that's forwarded. This is the same sort of problem...
author
Gabe Black
<gblack@eecs.umich.edu>
Sat, 16 Dec 2006 14:35:09 +0000
(09:35 -0500)
committer
Gabe Black
<gblack@eecs.umich.edu>
Sat, 16 Dec 2006 14:35:09 +0000
(09:35 -0500)
--HG--
extra : convert_revision :
09fece7ae934f542e51046d33505df3f7ec0b919
src/cpu/o3/lsq_unit.hh
patch
|
blob
|
history
diff --git
a/src/cpu/o3/lsq_unit.hh
b/src/cpu/o3/lsq_unit.hh
index a2e11173e38701ee439bf1abd1f423fcf12651fd..0318175c30d244431ff11f3978536d6e1f7c19a1 100644
(file)
--- a/
src/cpu/o3/lsq_unit.hh
+++ b/
src/cpu/o3/lsq_unit.hh
@@
-561,6
+561,12
@@
LSQUnit<Impl>::read(Request *req, T &data, int load_idx)
// Cast this to type T?
data = storeQueue[store_idx].data >> shift_amt;
+ // When the data comes from the store queue entry, it's in host
+ // order. When it gets sent to the load, it needs to be in guest
+ // order so when the load converts it again, it ends up back
+ // in host order like the inst expects.
+ data = TheISA::htog(data);
+
assert(!load_inst->memData);
load_inst->memData = new uint8_t[64];