summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2000-12-23 21:52:14 +0000
committerBen Elliston <bje@au.ibm.com>2000-12-23 21:52:14 +0000
commit9e4bcbb3335b91b5d7ed3c714a1a06e602c73e63 (patch)
treefcfc5a0da9fb5fd9ac8f36e1fde47cb53e1bad55
parent3ded747f79d6d8b96bd71f7ba8ff1c87615518c4 (diff)
downloadgdb-9e4bcbb3335b91b5d7ed3c714a1a06e602c73e63.tar.gz
2000-12-23 Ben Elliston <bje@redhat.com>
* cgen-trace.c (trace_result): Handle 'f' type operands; output them to the trace stream using sim_fpu_printn_fpu. Include "sim-fpu.h".
-rw-r--r--sim/common/ChangeLog6
-rw-r--r--sim/common/cgen-trace.c14
2 files changed, 20 insertions, 0 deletions
diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog
index c01bd9047d4..1cbbf36e3bb 100644
--- a/sim/common/ChangeLog
+++ b/sim/common/ChangeLog
@@ -1,3 +1,9 @@
+2000-12-23 Ben Elliston <bje@redhat.com>
+
+ * cgen-trace.c (trace_result): Handle 'f' type operands; output
+ them to the trace stream using sim_fpu_printn_fpu. Include
+ "sim-fpu.h".
+
2000-12-15 Ben Elliston <bje@redhat.com>
* sim-fpu.h (sim_fpu_printn_fpu): Declare.
diff --git a/sim/common/cgen-trace.c b/sim/common/cgen-trace.c
index 93ce3e61182..765ab57ab03 100644
--- a/sim/common/cgen-trace.c
+++ b/sim/common/cgen-trace.c
@@ -22,6 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "dis-asm.h"
#include "bfd.h"
#include "sim-main.h"
+#include "sim-fpu.h"
#undef min
#define min(a,b) ((a) < (b) ? (a) : (b))
@@ -235,6 +236,19 @@ trace_result (SIM_CPU *cpu, char *name, int type, ...)
default :
cgen_trace_printf (cpu, "%s <- 0x%x", name, va_arg (args, int));
break;
+ case 'f':
+ {
+ DI di;
+ sim_fpu f;
+
+ /* this is separated from previous line for sunos cc */
+ di = va_arg (args, DI);
+ sim_fpu_64to (&f, di);
+
+ cgen_trace_printf (cpu, "%s <- ", name);
+ sim_fpu_printn_fpu (&f, (sim_fpu_print_func *) cgen_trace_printf, 4, cpu);
+ break;
+ }
case 'D' :
{
DI di;