This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils 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: PATCH: Fix real10 and add real16 for ia64


On Wed, Apr 30, 2003 at 12:07:27PM -0400, Jim Wilson wrote:
> > +  if (type == 'X')
> > +    {
> > +      /* It is 10 byte floating point with 6 byte padding.  */
> > +      prec = 8;
> > +      *size = prec * sizeof (LITTLENUM_TYPE);
> > +      while (prec-- >= 5)
> > +	words [prec] = 0;
> > +    }
> >    return 0;
> >  }
> 
> It looks good except for this part.  words[] is a 5-element array, and 
> you are writing to 3 elements past the end of it.  You are also writing 
> to the wrong object.  You should be writing to *lit instead of to words[].
> 

Thanks. I will fix that.

> Did you consider endianness issues here?  We might need to do something 
> different for big-endian than little-endian.  It seems unlikely that 
> your new testcase would work for a big-endian target.  I see that you 
> even put LSB in the testcase.

That is why I put .lsb there. But the whole .lsb/.msb directives are
broken. I am working on a patch for that. Should I combine them since
md_atof is different after my endian fix?

> 
> Your gas/testsuite/gas/ia64/ia64.exp patch doesn't match the trunk.  It 
> looks like you have other stuff in your copy which hasn't been checked 
> in yet, which makes this part of the patch useless.

All my ia64 patches should be self-contained. You only need to apply 
this single line by hand.

> 
> Did you report the documentation bug to Intel?
> 

Yes.


H.J.


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