diff options
author | Dave Brolley <brolley@redhat.com> | 2003-09-10 20:40:47 +0000 |
---|---|---|
committer | Dave Brolley <brolley@redhat.com> | 2003-09-10 20:40:47 +0000 |
commit | ba9c40534b023210c8a2bd51f94a180f38ff9d7d (patch) | |
tree | 57aa25cfabfa486c8d6327ede598be2e2f8df7ed /sim/frv/profile.c | |
parent | a252afa4cdffd95d8c64453bb808db005796f24e (diff) | |
download | fsf-binutils-gdb-ba9c40534b023210c8a2bd51f94a180f38ff9d7d.zip fsf-binutils-gdb-ba9c40534b023210c8a2bd51f94a180f38ff9d7d.tar.gz fsf-binutils-gdb-ba9c40534b023210c8a2bd51f94a180f38ff9d7d.tar.bz2 |
2003-09-10 Dave Brolley <brolley@redhat.com>
* profile.c (slot_names): FM1 was listed twice. Changed first
instance to FM0. Added IALL, FMALL and FMLOW.
(print_parallel): Don't examine slots with no insns.
Diffstat (limited to 'sim/frv/profile.c')
-rw-r--r-- | sim/frv/profile.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/sim/frv/profile.c b/sim/frv/profile.c index 1a59e4a..822e5d6 100644 --- a/sim/frv/profile.c +++ b/sim/frv/profile.c @@ -1,6 +1,6 @@ /* frv simulator machine independent profiling code. - Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc. Contributed by Red Hat This file is part of the GNU simulators. @@ -1706,12 +1706,15 @@ print_cache (SIM_CPU *cpu, FRV_CACHE *cache, const char *cache_name) sim_io_printf (sd, "\n"); } +/* This table must correspond to the UNIT_ATTR table in + opcodes/frv-desc.h. Only the units up to UNIT_C need be + listed since the others cannot occur after mapping. */ static char * slot_names[] = { "none", - "I0", "I1", "I01", - "FM1", "FM1", "FM01", + "I0", "I1", "I01", "IALL", + "FM0", "FM1", "FM01", "FMALL", "FMLOW", "B0", "B1", "B01", "C" }; @@ -1747,12 +1750,15 @@ print_parallel (SIM_CPU *cpu, int verbose) int max_name_len = 0; for (i = UNIT_NIL + 1; i < UNIT_NUM_UNITS; ++i) { - int len; - if (INSNS_IN_SLOT (i) > max_val) - max_val = INSNS_IN_SLOT (i); - len = strlen (slot_names[i]); - if (len > max_name_len) - max_name_len = len; + if (INSNS_IN_SLOT (i)) + { + int len; + if (INSNS_IN_SLOT (i) > max_val) + max_val = INSNS_IN_SLOT (i); + len = strlen (slot_names[i]); + if (len > max_name_len) + max_name_len = len; + } } if (max_val > 0) { |