summaryrefslogtreecommitdiff
path: root/src/arch/arm/insts/pseudo.hh
diff options
context:
space:
mode:
authorGiacomo Travaglini <giacomo.travaglini@arm.com>2018-10-25 11:14:47 +0100
committerGiacomo Travaglini <giacomo.travaglini@arm.com>2019-01-22 09:17:22 +0000
commit12eac0c88e21ddc76593079127a4507558cddc40 (patch)
tree00cd013d61e15795421a8ea9d5cafe6c6c62ba33 /src/arch/arm/insts/pseudo.hh
parenta0649ee1e90e6c71f74425457c381e8b6c5d0d43 (diff)
downloadgem5-12eac0c88e21ddc76593079127a4507558cddc40.tar.xz
arch-arm: Move AArch32 IMPLEMENTATION DEFINED registers
Moving AArch32 instruction accessing IMPLEMENTATION DEFINED registers from pseudo.[cc/hh] to misc.[cc/hh] in order to symmetrically match with AArch64 implementation. Change-Id: I27b0d65925d7965589b765269ae54129426e4c88 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/15735 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Diffstat (limited to 'src/arch/arm/insts/pseudo.hh')
-rw-r--r--src/arch/arm/insts/pseudo.hh42
1 files changed, 0 insertions, 42 deletions
diff --git a/src/arch/arm/insts/pseudo.hh b/src/arch/arm/insts/pseudo.hh
index 9065c6281..c7ed08d30 100644
--- a/src/arch/arm/insts/pseudo.hh
+++ b/src/arch/arm/insts/pseudo.hh
@@ -120,48 +120,6 @@ class WarnUnimplemented : public ArmStaticInst
};
/**
- * Certain mrc/mcr instructions act as nops or flush the pipe based on what
- * register the instruction is trying to access. This inst/class exists so that
- * we can still check for hyp traps, as the normal nop instruction
- * does not.
- */
-class McrMrcMiscInst : public ArmStaticInst
-{
- protected:
- uint64_t iss;
- MiscRegIndex miscReg;
-
- public:
- McrMrcMiscInst(const char *_mnemonic, ExtMachInst _machInst,
- uint64_t _iss, MiscRegIndex _miscReg);
-
- Fault execute(ExecContext *xc,
- Trace::InstRecord *traceData) const override;
-
- std::string generateDisassembly(
- Addr pc, const SymbolTable *symtab) const override;
-
-};
-
-/**
- * This class is also used for IMPLEMENTATION DEFINED registers, whose mcr/mrc
- * behaviour is trappable even for unimplemented registers.
- */
-class McrMrcImplDefined : public McrMrcMiscInst
-{
- public:
- McrMrcImplDefined(const char *_mnemonic, ExtMachInst _machInst,
- uint64_t _iss, MiscRegIndex _miscReg);
-
- Fault execute(ExecContext *xc,
- Trace::InstRecord *traceData) const override;
-
- std::string generateDisassembly(
- Addr pc, const SymbolTable *symtab) const override;
-
-};
-
-/**
* This class is modelling instructions which are not going to be
* executed since they are flagged as Illegal Execution Instructions
* (PSTATE.IL = 1 or CPSR.IL = 1).