Fix ARM NAN fraction bits
diff mbox

Message ID alpine.DEB.1.10.1405200119440.12061@tp.orcam.me.uk
State Accepted
Headers show

Commit Message

Maciej W. Rozycki May 20, 2014, 12:28 a.m. UTC
Ian,

On Sat, 17 May 2014, Richard Biener wrote:

> On May 17, 2014 12:22:23 AM CEST, "Maciej W. Rozycki" <macro@codesourcery.com> wrote:
> >On Fri, 16 May 2014, Joseph S. Myers wrote:
> >
> >> > 2014-05-16  Maciej W. Rozycki  <macro@codesourcery.com>
> >> > 
> >> > 	PR libgcc/60166
> >> > 	* sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
> >> > 	(_FP_NANSIGN_Q): Set the quiet bit.
> >> 
> >> OK for glibc.
> >
> > Joseph, thanks for your review, this is now in.
> >
> >Richard, you wrote yesterday that pushing changes to 4.8 would require 
> >explicit approval from release managers, however it is not clear to me
> >who 
> >they are for that branch.  This fix corrects a regression introduced
> >after 
> >4.8.2.  Can you approve it?  If not, then who can?
> 
> If it's not broken in 4.8.2 but broken on the branch head then it's OK 
> for the branch.

 I thought I'd double-check with you that it is fine to push this change 
to trunk first.  OK to apply?

2014-05-20  Maciej W. Rozycki  <macro@codesourcery.com>

	PR libgcc/60166
	libgcc/
	* config/arm/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
	(_FP_NANSIGN_Q): Set the quiet bit.

  Maciej

gcc-soft-fp-arm-nanfrac.diff

Comments

Richard Biener May 20, 2014, 7:57 a.m. UTC | #1
On Tue, 20 May 2014, Maciej W. Rozycki wrote:

> Ian,
> 
> On Sat, 17 May 2014, Richard Biener wrote:
> 
> > On May 17, 2014 12:22:23 AM CEST, "Maciej W. Rozycki" <macro@codesourcery.com> wrote:
> > >On Fri, 16 May 2014, Joseph S. Myers wrote:
> > >
> > >> > 2014-05-16  Maciej W. Rozycki  <macro@codesourcery.com>
> > >> > 
> > >> > 	PR libgcc/60166
> > >> > 	* sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
> > >> > 	(_FP_NANSIGN_Q): Set the quiet bit.
> > >> 
> > >> OK for glibc.
> > >
> > > Joseph, thanks for your review, this is now in.
> > >
> > >Richard, you wrote yesterday that pushing changes to 4.8 would require 
> > >explicit approval from release managers, however it is not clear to me
> > >who 
> > >they are for that branch.  This fix corrects a regression introduced
> > >after 
> > >4.8.2.  Can you approve it?  If not, then who can?
> > 
> > If it's not broken in 4.8.2 but broken on the branch head then it's OK 
> > for the branch.
> 
>  I thought I'd double-check with you that it is fine to push this change 
> to trunk first.  OK to apply?

Of course it should go to trunk (and 4.9 branch) first, but I'm not
the one to approve that.

Richard.

> 2014-05-20  Maciej W. Rozycki  <macro@codesourcery.com>
> 
> 	PR libgcc/60166
> 	libgcc/
> 	* config/arm/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
> 	(_FP_NANSIGN_Q): Set the quiet bit.
> 
>   Maciej
> 
> gcc-soft-fp-arm-nanfrac.diff
> Index: gcc-fsf-trunk-quilt/libgcc/config/arm/sfp-machine.h
> ===================================================================
> --- gcc-fsf-trunk-quilt.orig/libgcc/config/arm/sfp-machine.h	2014-05-16 15:59:06.000000000 +0100
> +++ gcc-fsf-trunk-quilt/libgcc/config/arm/sfp-machine.h	2014-05-20 01:23:36.618434199 +0100
> @@ -21,10 +21,10 @@ typedef int __gcc_CMPtype __attribute__ 
>  
>  /* According to RTABI, QNAN is only with the most significant bit of the
>     significand set, and all other significand bits zero.  */
> -#define _FP_NANFRAC_H		0
> -#define _FP_NANFRAC_S		0
> -#define _FP_NANFRAC_D		0, 0
> -#define _FP_NANFRAC_Q		0, 0, 0, 0
> +#define _FP_NANFRAC_H		_FP_QNANBIT_H
> +#define _FP_NANFRAC_S		_FP_QNANBIT_S
> +#define _FP_NANFRAC_D		_FP_QNANBIT_D, 0
> +#define _FP_NANFRAC_Q		_FP_QNANBIT_Q, 0, 0, 0
>  #define _FP_NANSIGN_H		0
>  #define _FP_NANSIGN_S		0
>  #define _FP_NANSIGN_D		0
> 
>
Richard Earnshaw May 20, 2014, 12:57 p.m. UTC | #2
On 20/05/14 08:57, Richard Biener wrote:
> On Tue, 20 May 2014, Maciej W. Rozycki wrote:
> 
>> Ian,
>>
>> On Sat, 17 May 2014, Richard Biener wrote:
>>
>>> On May 17, 2014 12:22:23 AM CEST, "Maciej W. Rozycki" <macro@codesourcery.com> wrote:
>>>> On Fri, 16 May 2014, Joseph S. Myers wrote:
>>>>
>>>>>> 2014-05-16  Maciej W. Rozycki  <macro@codesourcery.com>
>>>>>>
>>>>>> 	PR libgcc/60166
>>>>>> 	* sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
>>>>>> 	(_FP_NANSIGN_Q): Set the quiet bit.
>>>>>
>>>>> OK for glibc.
>>>>
>>>> Joseph, thanks for your review, this is now in.
>>>>
>>>> Richard, you wrote yesterday that pushing changes to 4.8 would require 
>>>> explicit approval from release managers, however it is not clear to me
>>>> who 
>>>> they are for that branch.  This fix corrects a regression introduced
>>>> after 
>>>> 4.8.2.  Can you approve it?  If not, then who can?
>>>
>>> If it's not broken in 4.8.2 but broken on the branch head then it's OK 
>>> for the branch.
>>
>>  I thought I'd double-check with you that it is fine to push this change 
>> to trunk first.  OK to apply?
> 
> Of course it should go to trunk (and 4.9 branch) first, but I'm not
> the one to approve that.
> 

I can...  Based on Joseph's review, OK.

R.

> Richard.
> 
>> 2014-05-20  Maciej W. Rozycki  <macro@codesourcery.com>
>>
>> 	PR libgcc/60166
>> 	libgcc/
>> 	* config/arm/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D)
>> 	(_FP_NANSIGN_Q): Set the quiet bit.
>>
>>   Maciej
>>
>> gcc-soft-fp-arm-nanfrac.diff
>> Index: gcc-fsf-trunk-quilt/libgcc/config/arm/sfp-machine.h
>> ===================================================================
>> --- gcc-fsf-trunk-quilt.orig/libgcc/config/arm/sfp-machine.h	2014-05-16 15:59:06.000000000 +0100
>> +++ gcc-fsf-trunk-quilt/libgcc/config/arm/sfp-machine.h	2014-05-20 01:23:36.618434199 +0100
>> @@ -21,10 +21,10 @@ typedef int __gcc_CMPtype __attribute__ 
>>  
>>  /* According to RTABI, QNAN is only with the most significant bit of the
>>     significand set, and all other significand bits zero.  */
>> -#define _FP_NANFRAC_H		0
>> -#define _FP_NANFRAC_S		0
>> -#define _FP_NANFRAC_D		0, 0
>> -#define _FP_NANFRAC_Q		0, 0, 0, 0
>> +#define _FP_NANFRAC_H		_FP_QNANBIT_H
>> +#define _FP_NANFRAC_S		_FP_QNANBIT_S
>> +#define _FP_NANFRAC_D		_FP_QNANBIT_D, 0
>> +#define _FP_NANFRAC_Q		_FP_QNANBIT_Q, 0, 0, 0
>>  #define _FP_NANSIGN_H		0
>>  #define _FP_NANSIGN_S		0
>>  #define _FP_NANSIGN_D		0
>>
>>
>
Maciej W. Rozycki May 21, 2014, 2:16 a.m. UTC | #3
On Tue, 20 May 2014, Richard Earnshaw wrote:

> >>> If it's not broken in 4.8.2 but broken on the branch head then it's OK 
> >>> for the branch.
> >>
> >>  I thought I'd double-check with you that it is fine to push this change 
> >> to trunk first.  OK to apply?
> > 
> > Of course it should go to trunk (and 4.9 branch) first, but I'm not
> > the one to approve that.
> > 
> 
> I can...  Based on Joseph's review, OK.

 I have now applied it to trunk and backported to 4.9 and 4.8.  Thank you 
both for the review.

  Maciej

Patch
diff mbox

Index: gcc-fsf-trunk-quilt/libgcc/config/arm/sfp-machine.h
===================================================================
--- gcc-fsf-trunk-quilt.orig/libgcc/config/arm/sfp-machine.h	2014-05-16 15:59:06.000000000 +0100
+++ gcc-fsf-trunk-quilt/libgcc/config/arm/sfp-machine.h	2014-05-20 01:23:36.618434199 +0100
@@ -21,10 +21,10 @@  typedef int __gcc_CMPtype __attribute__ 
 
 /* According to RTABI, QNAN is only with the most significant bit of the
    significand set, and all other significand bits zero.  */
-#define _FP_NANFRAC_H		0
-#define _FP_NANFRAC_S		0
-#define _FP_NANFRAC_D		0, 0
-#define _FP_NANFRAC_Q		0, 0, 0, 0
+#define _FP_NANFRAC_H		_FP_QNANBIT_H
+#define _FP_NANFRAC_S		_FP_QNANBIT_S
+#define _FP_NANFRAC_D		_FP_QNANBIT_D, 0
+#define _FP_NANFRAC_Q		_FP_QNANBIT_Q, 0, 0, 0
 #define _FP_NANSIGN_H		0
 #define _FP_NANSIGN_S		0
 #define _FP_NANSIGN_D		0