summaryrefslogtreecommitdiff
path: root/src/arch/sparc
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2007-01-30 00:21:18 -0500
committerGabe Black <gblack@eecs.umich.edu>2007-01-30 00:21:18 -0500
commite3fad2dceaa58a3ccce6ff2f08aa4ec6eb80b6d2 (patch)
treed6443432a27f0289e6a58a783d24fdb4b7fb207a /src/arch/sparc
parent230fc0a0d1dc0ffe8fac620a5767207ca31abbba (diff)
downloadgem5-e3fad2dceaa58a3ccce6ff2f08aa4ec6eb80b6d2.tar.xz
Make the FpUnimpl format actually write the Fsr.
--HG-- extra : convert_revision : 84717cd3a8fa9fb85bd0693304e05ef475b05d07
Diffstat (limited to 'src/arch/sparc')
-rw-r--r--src/arch/sparc/isa/formats/trap.isa15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/arch/sparc/isa/formats/trap.isa b/src/arch/sparc/isa/formats/trap.isa
index 8ac40c16f..66eff35d4 100644
--- a/src/arch/sparc/isa/formats/trap.isa
+++ b/src/arch/sparc/isa/formats/trap.isa
@@ -82,6 +82,19 @@ def template TrapExecute {{
}
}};
+def template FpUnimplExecute {{
+ Fault %(class_name)s::execute(%(CPU_exec_context)s *xc,
+ Trace::InstRecord *traceData) const
+ {
+ Fault fault = NoFault;
+ %(op_decl)s;
+ %(op_rd)s;
+ %(code)s
+ %(op_wb)s;
+ return fault;
+ }
+}};
+
def format Trap(code, *opt_flags) {{
iop = InstObjParams(name, Name, 'Trap', code, opt_flags)
header_output = BasicDeclare.subst(iop)
@@ -117,5 +130,5 @@ def format FpUnimpl(*flags) {{
header_output = BasicDeclare.subst(iop)
decoder_output = BasicConstructor.subst(iop)
decode_block = BasicDecode.subst(iop)
- exec_output = TrapExecute.subst(iop)
+ exec_output = FpUnimplExecute.subst(iop)
}};