summaryrefslogtreecommitdiff
path: root/sim/cris
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2006-01-10 07:05:44 +0000
committerHans-Peter Nilsson <hp@axis.com>2006-01-10 07:05:44 +0000
commit4fc9958a54ad8a9e8decbcc1b7368375985b6257 (patch)
tree3b22beebf9bfa4c326d1281613d1243d8761e04a /sim/cris
parentda51a89c2a5217fbbf57fe952b29d86676a90e70 (diff)
downloadbinutils-4fc9958a54ad8a9e8decbcc1b7368375985b6257.tar.gz
binutils-4fc9958a54ad8a9e8decbcc1b7368375985b6257.tar.bz2
binutils-4fc9958a54ad8a9e8decbcc1b7368375985b6257.zip
* cris/cris-tmpl.c (MY (f_model_insn_before)): Only display basic
cycle count for the current insn.
Diffstat (limited to 'sim/cris')
-rw-r--r--sim/cris/cris-tmpl.c29
1 files changed, 11 insertions, 18 deletions
diff --git a/sim/cris/cris-tmpl.c b/sim/cris/cris-tmpl.c
index 678ac01d38c..5061105ea78 100644
--- a/sim/cris/cris-tmpl.c
+++ b/sim/cris/cris-tmpl.c
@@ -119,6 +119,8 @@ MY (f_model_insn_before) (SIM_CPU *current_cpu, int first_p ATTRIBUTE_UNUSED)
{
int i;
char flags[7];
+ unsigned64 cycle_count;
+
SIM_DESC sd = CPU_STATE (current_cpu);
cris_trace_printf (sd, current_cpu, "%lx ",
@@ -138,33 +140,24 @@ MY (f_model_insn_before) (SIM_CPU *current_cpu, int first_p ATTRIBUTE_UNUSED)
flags[5] = GET_H_CBIT () != 0 ? 'C' : 'c';
flags[6] = 0;
+ /* For anything else than basic tracing we'd add stall cycles for
+ e.g. unaligned accesses. FIXME: add --cris-trace=x options to
+ match --cris-cycles=x. */
+ cycle_count
+ = (CPU_CRIS_MISC_PROFILE (current_cpu)->basic_cycle_count
+ - CPU_CRIS_PREV_MISC_PROFILE (current_cpu)->basic_cycle_count);
+
/* Emit ACR after flags and cycle count for this insn. */
if (BASENUM == 32)
cris_trace_printf (sd, current_cpu, "%s %d %lx\n", flags,
- (int)
- ((CPU_CRIS_MISC_PROFILE (current_cpu)
- ->basic_cycle_count
- - CPU_CRIS_PREV_MISC_PROFILE (current_cpu)
- ->basic_cycle_count)
- + (CPU_CRIS_MISC_PROFILE (current_cpu)
- ->unaligned_mem_dword_count
- - CPU_CRIS_PREV_MISC_PROFILE (current_cpu)
- ->unaligned_mem_dword_count)),
+ (int) cycle_count,
0xffffffffUL
& (unsigned long) (XCONCAT3(crisv,BASENUM,
f_h_gr_get) (current_cpu,
15)));
else
cris_trace_printf (sd, current_cpu, "%s %d\n", flags,
- (int)
- ((CPU_CRIS_MISC_PROFILE (current_cpu)
- ->basic_cycle_count
- - CPU_CRIS_PREV_MISC_PROFILE (current_cpu)
- ->basic_cycle_count)
- + (CPU_CRIS_MISC_PROFILE (current_cpu)
- ->unaligned_mem_dword_count
- - CPU_CRIS_PREV_MISC_PROFILE (current_cpu)
- ->unaligned_mem_dword_count)));
+ (int) cycle_count);
CPU_CRIS_PREV_MISC_PROFILE (current_cpu)[0]
= CPU_CRIS_MISC_PROFILE (current_cpu)[0];