From 60fc5b72702bbae4431f6f7b245e586f5fc542be Mon Sep 17 00:00:00 2001 From: Michael Meissner Date: Mon, 9 Sep 1996 20:10:31 +0000 Subject: Correct tracing of cpfg --- sim/d10v/ChangeLog | 3 +++ sim/d10v/simops.c | 8 ++++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/sim/d10v/ChangeLog b/sim/d10v/ChangeLog index 69d6bd2..6ca3da7 100644 --- a/sim/d10v/ChangeLog +++ b/sim/d10v/ChangeLog @@ -4,6 +4,9 @@ Mon Sep 9 13:27:26 1996 Michael Meissner (OP_3{0,2,4}00): Properly parenthesize test expression. Add error if shift count is too high. (OP_4E{00,02,04,20,22,40,42}): Make tests agree with book. + (OP_4E09): Make cpfg properly trace the input flags. + (op_types): Add OP_FLAG_OUTPUT. + (trace_{input,output}): Support OP_FLAG_OUTPUT. Fri Sep 6 17:56:17 1996 Martin M. Hunt diff --git a/sim/d10v/simops.c b/sim/d10v/simops.c index bb8b913..8618b4f 100644 --- a/sim/d10v/simops.c +++ b/sim/d10v/simops.c @@ -21,6 +21,7 @@ enum op_types { OP_CR_OUTPUT, OP_CR_REVERSE, OP_FLAG, + OP_FLAG_OUTPUT, OP_CONSTANT16, OP_CONSTANT3, OP_CONSTANT4, @@ -171,6 +172,7 @@ trace_input (name, in1, in2, in3) break; case OP_FLAG: + case OP_FLAG_OUTPUT: if (OP[i] == 0) sprintf (p, "%sf0", comma); @@ -178,7 +180,7 @@ trace_input (name, in1, in2, in3) sprintf (p, "%sf1", comma); else - sprintf (p, "%scarry", comma); + sprintf (p, "%sc", comma); p += strlen (p); comma = ","; @@ -211,6 +213,7 @@ trace_input (name, in1, in2, in3) case OP_DREG_OUTPUT: case OP_CR_OUTPUT: case OP_ACCUM_OUTPUT: + case OP_FLAG_OUTPUT: (*d10v_callback->printf_filtered) (d10v_callback, "%*s", SIZE_VALUES, "---"); break; @@ -339,6 +342,7 @@ trace_output (result) break; case OP_FLAG: + case OP_FLAG_OUTPUT: (*d10v_callback->printf_filtered) (d10v_callback, " :: %*s F0=%d F1=%d C=%d\n", SIZE_VALUES, "", State.F0 != 0, State.F1 != 0, State.C != 0); break; @@ -835,7 +839,7 @@ OP_4E09 () { uint8 *src, *dst; - trace_input ("cpfg", OP_FLAG, OP_VOID, OP_VOID); + trace_input ("cpfg", OP_FLAG_OUTPUT, OP_FLAG, OP_VOID); if (OP[0] == 0) dst = &State.F0; else -- cgit v1.1