0aaf8ec6b8
address calculation and memory access portions separately. Not currently used by any CPU models, but Kevin says he needs this. Also clean up handling of execution tracing for memory accesses (move it all into isa_desc and out of CPU models). Got rid of some ancient unused code too. arch/alpha/isa_desc: Add execute() methods to EAComp and MemAcc portions of memory access instructions, to allow CPU models to execute the effective address calculation and memory access portions separately. Requires the execution context to remember the effective address across the two invocations. Added setEA() and getEA() methods to execution context to support this. A model that does not use the split execution model can panic if these methods are called. Also added hook to call traceData->setAddr() after EA computation on any load or store operation. arch/isa_parser.py: Call traceData->setData() on memory writes (stores). cpu/simple_cpu/simple_cpu.cc: Get rid of unused code. cpu/simple_cpu/simple_cpu.hh: Add (non-functional) setEA() and getEA() methods for new split memory access execution support. --HG-- extra : convert_revision : bc2d2c758c4ca753812b9fa81f21038e55929ff0 |
||
---|---|---|
.. | ||
full_cpu | ||
memtest | ||
simple_cpu | ||
trace | ||
base_cpu.cc | ||
base_cpu.hh | ||
exec_context.cc | ||
exec_context.hh | ||
exetrace.cc | ||
exetrace.hh | ||
inst_seq.hh | ||
intr_control.cc | ||
intr_control.hh | ||
pc_event.cc | ||
pc_event.hh | ||
static_inst.cc | ||
static_inst.hh |