From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cagney To: Ben Elliston Cc: CGEN , gdb@sources.redhat.com Subject: Re: Tracing for floating point values Date: Thu, 14 Dec 2000 17:04:00 -0000 Message-id: <3A396BB0.7CF48446@cygnus.com> References: X-SW-Source: 2000-q4/msg00271.html Ben Elliston wrote: > > Currently, the TRACE_RESULTS web of macros/functions in > sim/common/cgen-trace.c don't know how to handle the 'f' printf-type for SF > and DF operands. Only 'D' and 'x' are handled at present. > > I set about fixing this yesterday. There were two approaches I considered: > > * use the host's native printf %x. Comments in sim-fpu.[hc] > indicate this is a bad mistake. There's no guarantee that the > host will use the same floating point representation as the > target. You would need to be very careful about SNaNs. > * use sim_fpu's sim_fpu_print_fpu to output the real number > using cgen_trace_printf as its callback (which works nicely). > However, we get very detailed output! > > fr <- +1.0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000,0000*2^+0 > > Which way seems right to jump? What about a print function that outputs things in decimal - something like ``%f'' or ``%g''. While the existing print function is really useful for someone debugging the internals it isn't much use to normal users. Andrew