aboutsummaryrefslogtreecommitdiff
path: root/sim/d10v/d10v_sim.h
diff options
context:
space:
mode:
authorMichael Meissner <gnu@the-meissners.org>1996-10-22 19:49:37 +0000
committerMichael Meissner <gnu@the-meissners.org>1996-10-22 19:49:37 +0000
commitaeb1f26ba82ba8624f71a4e43b9f28cd739e6f36 (patch)
treea1951abd8353ea7dc4e947261dd9ccdfc1f8b46f /sim/d10v/d10v_sim.h
parenta3fac17e0b4288f6abc8957dc8028a9448159afb (diff)
downloadfsf-binutils-gdb-aeb1f26ba82ba8624f71a4e43b9f28cd739e6f36.zip
fsf-binutils-gdb-aeb1f26ba82ba8624f71a4e43b9f28cd739e6f36.tar.gz
fsf-binutils-gdb-aeb1f26ba82ba8624f71a4e43b9f28cd739e6f36.tar.bz2
Provide better statistics, particularly for doing VLIW work; Fix ldb to correctly sign extend
Diffstat (limited to 'sim/d10v/d10v_sim.h')
-rw-r--r--sim/d10v/d10v_sim.h27
1 files changed, 19 insertions, 8 deletions
diff --git a/sim/d10v/d10v_sim.h b/sim/d10v/d10v_sim.h
index 3ecdc7a..d120a6c 100644
--- a/sim/d10v/d10v_sim.h
+++ b/sim/d10v/d10v_sim.h
@@ -73,17 +73,28 @@ struct simops
enum _ins_type
{
- INS_UNKNOWN,
- INS_LEFT,
- INS_RIGHT,
- INS_LEFT_PARALLEL,
- INS_RIGHT_PARALLEL,
- INS_LONG,
+ INS_UNKNOWN, /* unknown instruction */
+ INS_LONG, /* long instruction (both containers) */
+ INS_COND_TRUE, /* # times EXExxx executed other instruction */
+ INS_COND_FALSE, /* # times EXExxx did not execute other instruction */
+ INS_CYCLES, /* # cycles */
+
+ INS_LEFT, /* normal left instructions */
+ INS_LEFT_PARALLEL, /* left side of || */
+ INS_LEFT_COND_TEST, /* EXExx test on left side */
+ INS_LEFT_COND_EXE, /* execution after EXExxx test on right side succeeded */
+ INS_LEFT_NOPS, /* NOP on left side */
+
+ INS_RIGHT, /* normal right instructions */
+ INS_RIGHT_PARALLEL, /* right side of || */
+ INS_RIGHT_COND_TEST, /* EXExx test on right side */
+ INS_RIGHT_COND_EXE, /* execution after EXExxx test on left side succeeded */
+ INS_RIGHT_NOPS, /* NOP on right side */
+
INS_MAX
};
-extern long ins_type_counters[ (int)INS_MAX ];
-extern long left_nops, right_nops;
+extern unsigned long ins_type_counters[ (int)INS_MAX ];
struct _state
{