summaryrefslogtreecommitdiff
path: root/src/arch/arm/insts/static_inst.cc
diff options
context:
space:
mode:
authoryuetsu.kodama <yuetsu.kodama@riken.jp>2018-10-20 11:58:54 +0900
committerAndreas Sandberg <andreas.sandberg@arm.com>2018-10-26 12:47:46 +0000
commit59e3585a84ef172eba57c9936680c0248f9a97db (patch)
tree8bf691977e16156e5d05d18c087cb2a77af19212 /src/arch/arm/insts/static_inst.cc
parentd4b3e064adeeace3c3e7d106801f95c14637c12f (diff)
downloadgem5-59e3585a84ef172eba57c9936680c0248f9a97db.tar.xz
arch-arm: We add PRFM PST instruction for arm
Note current PRFM supports only PLD, but PST (prefetch for store) is also important for latency hiding. We also bug fix in disassembler to display prfop correctly. Change-Id: I9144e7233900aa2d555e1c1a6a2c2e41d837aa13 Signed-off-by: Yuetsu Kodama <yuetsu.kodama@riken.jp> Reviewed-on: https://gem5-review.googlesource.com/c/13675 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Diffstat (limited to 'src/arch/arm/insts/static_inst.cc')
-rw-r--r--src/arch/arm/insts/static_inst.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/arch/arm/insts/static_inst.cc b/src/arch/arm/insts/static_inst.cc
index bd6f11521..f245cd4f0 100644
--- a/src/arch/arm/insts/static_inst.cc
+++ b/src/arch/arm/insts/static_inst.cc
@@ -324,6 +324,16 @@ ArmStaticInst::printIntReg(std::ostream &os, RegIndex reg_idx) const
}
}
+void ArmStaticInst::printPFflags(std::ostream &os, int flag) const
+{
+ const char *flagtoprfop[]= { "PLD", "PLI", "PST", "Reserved"};
+ const char *flagtotarget[] = { "L1", "L2", "L3", "Reserved"};
+ const char *flagtopolicy[] = { "KEEP", "STRM"};
+
+ ccprintf(os, "%s%s%s", flagtoprfop[(flag>>3)&3],
+ flagtotarget[(flag>>1)&3], flagtopolicy[flag&1]);
+}
+
void
ArmStaticInst::printFloatReg(std::ostream &os, RegIndex reg_idx) const
{