From 933786524e8179ddeb0a27740d9b206352f33436 Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Wed, 28 Jul 2010 21:58:22 +0000 Subject: [sim/rx] * README.txt: New. * config.h (CYCLE_ACCURATE, CYCLE_STATS): New. * configure.in (--enable-cycle-accurate, --enable-cycle-stats): New. Default to enabled. * configure: Regenerate. * cpu.h (regs_type): Add cycle tracking info. (reset_pipeline_stats): Declare. (halt_pipeline_stats): Declare. (pipeline_stats): Declare. * main.c (done): Call pipeline_stats(). * mem.h (rx_mem_ptr): Moved to here ... * mem.c (mem_ptr): ... from here. Rename throughout. (mem_put_byte): Move LEDs to Port A. Add Port B to control cycle statistics. Move UART to SCI4. (mem_put_hi): Add TPU 1-2. TPU 1 and 2 count CPU cycles. * reg.c (init_regs): Set Rt reg to -1 (no reg). * rx.c: Add cycle counting and statistics throughout. (rx_get_byte): Optimize for speed. (decode_opcode): Likewise. (reset_pipeline_stats): New. (halt_pipeline_stats): New. (pipeline_stats): New. * trace.c (sim_disasm_one): Print cycle count. [include/opcode] * rx.h (RX_Opcode_ID): Add nop2 and nop3 for statistics. --- sim/rx/main.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sim/rx/main.c') diff --git a/sim/rx/main.c b/sim/rx/main.c index a83794e..27ff0b8 100644 --- a/sim/rx/main.c +++ b/sim/rx/main.c @@ -82,6 +82,8 @@ done (int exit_code) printf ("insns: %14s\n", comma (rx_cycles)); else printf ("insns: %u\n", rx_cycles); + + pipeline_stats (); } exit (exit_code); } -- cgit v1.1