This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] Decimal Floating Point support for GDB (Part 1: patch)


On Wed, Oct 12, 2005 at 10:46:22PM +0800, Wu Zhou wrote:
> > Or just use the decNumber packed representation, in value_contents().
> > Take a look at all the references to FLOATFORMAT to see how we handle
> > floating point types.
> 
> I did had some looks at FLOATFORMAT, but found that there are quite
> some difference between DFP encoding format and normal binary floating
> encoding format: for example, dfp's fields is composed of combinator
> bits, exponent continuation bits and coefficient continuation bits.  
> While most bfp floatformat is composed of two fields (exponent bits 
> and coefficient bits).  And they also have different representation 
> for non-finite number (infinity and NaN).  

Yes, sorry - I wasn't suggesting that you define floatformats for
these, just that you handle them in the same set of places that we
handle floatformats.

> So I am now thinking of adding a builtin type other than TYPE_CODE_FLT to
> represent dfp.  This type (I am thinking of using TYPE_CODE_DECFLT) will 
> have three fundamental type like TYPE_CODE_FLT for different sizes. In the
> fields it will have four fields: signedness, combinator, exponent 
> continuation and coefficient continuation.  And these fields will merged 
> together into value.aligner.contents.  In this way, we can not only 
> support the setting and printing of dfp types (constants or variables), 
> but also can add other feature (such as arithmetic operation) as needed. 
> 
> Is there any clear deficiency in this method?  Do you think that it is 
> feasible? and also extensible?  I will start to code in this direction if 
> there is not any obvous weakness.

This may be what you're saying, but the only copy of the data should be
in value_contents, not duplicated in unpacked form elsewhere.

Yes, I think introducing a new type code is a good idea; that will be
more robust than reusing TYPE_CODE_FLT.  There are 230 references to
TYPE_CODE_FLT in gdb; many of them you'd want to handle DECFLT the same
way, but many you wouldn't.  For instance, calling functions which take
decimal floating point arguments.

-- 
Daniel Jacobowitz
CodeSourcery, LLC


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]