changeset 85011e8eaad9 in /z/repo/gem5
details: http://repo.gem5.org/gem5?cmd=changeset;node=85011e8eaad9
description:
x86: Force strict ordering for memory mapped m5ops
Normal MMAPPED_IPR requests are allowed to execute speculatively under
the
assumption that they have no side effects. The special case of m5ops
that are
treated like MMAPPED_IPR should not be allowed to execute
speculatively, since
they can have side-effects. Adding the STRICT_ORDER flag to these
requests
blocks execution until the associated instruction hits the ROB head.
diffstat:
src/arch/x86/tlb.cc | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diffs (13 lines):
diff -r fe32a5238754 -r 85011e8eaad9 src/arch/x86/tlb.cc
--- a/src/arch/x86/tlb.cc Tue Sep 13 23:17:42 2016 -0400
+++ b/src/arch/x86/tlb.cc Tue Sep 13 23:18:34 2016 -0400
@@ -235,7 +235,8 @@
if (m5opRange.contains(paddr)) {
if (m5opRange.contains(paddr)) {
- req->setFlags(Request::MMAPPED_IPR | Request::GENERIC_IPR);
+ req->setFlags(Request::MMAPPED_IPR | Request::GENERIC_IPR |
+ Request::STRICT_ORDER);
req->setPaddr(GenericISA::iprAddressPseudoInst(
(paddr >> 8) & 0xFF,
paddr & 0xFF));
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev