diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2010-06-02 12:58:04 -0500 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2010-06-02 12:58:04 -0500 |
commit | 89060f1fd80b032c92cf4f38c8459901c4f7a898 (patch) | |
tree | ab49cd165a37999c8b4e2c5d80ab8a5059718b6d /src/arch/arm/insts/static_inst.hh | |
parent | aa45fafb2e3667f907a2dcc491c57b9e83f8e940 (diff) | |
download | gem5-89060f1fd80b032c92cf4f38c8459901c4f7a898.tar.xz |
ARM: Rework how unrecognized/unimplemented instructions are handled.
Instead of panic immediately when these instructions are executed, an
UndefinedInstruction fault is returned. In FS mode (not currently
implemented), this is the fault that should, to my knowledge, be triggered in
these situations and should be handled using the normal architected
mechanisms. In SE mode, the fault causes a panic when it's invoked that gives
the same information as the instruction did. When/if support for speculative
execution of ARM is supported, this will allow a mispeculated and unrecognized
and/or unimplemented instruction from causing a panic. Only once the
instruction is going to be committed will the fault be invoked, triggering the
panic.
Diffstat (limited to 'src/arch/arm/insts/static_inst.hh')
-rw-r--r-- | src/arch/arm/insts/static_inst.hh | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/src/arch/arm/insts/static_inst.hh b/src/arch/arm/insts/static_inst.hh index 35dbe6d52..485d6997e 100644 --- a/src/arch/arm/insts/static_inst.hh +++ b/src/arch/arm/insts/static_inst.hh @@ -67,20 +67,6 @@ class ArmStaticInst : public StaticInst { } - inline static std::string - inst2string(MachInst machInst) - { - std::string str = ""; - uint32_t mask = (1 << 31); - - while (mask) { - str += ((machInst & mask) ? "1" : "0"); - mask = mask >> 1; - } - - return str; - } - /// Print a register name for disassembly given the unique /// dependence tag number (FP or int). void printReg(std::ostream &os, int reg) const; |