Commit 0dbca307 by John David Anglin Committed by John David Anglin

quadlib.c (_U_Qfneg): Toggle sign bit instead of subtracting from zero.

	* pa/quadlib.c (_U_Qfneg): Toggle sign bit instead of subtracting from
	zero.

From-SVN: r97961
parent dcec6a4d
2005-04-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* pa/quadlib.c (_U_Qfneg): Toggle sign bit instead of subtracting from
zero.
2005-04-10 Kazu Hirata <kazu@cs.umass.edu> 2005-04-10 Kazu Hirata <kazu@cs.umass.edu>
* config/arm/arm.c: Fix a comment typo. * config/arm/arm.c: Fix a comment typo.
......
/* Subroutines for long double support. /* Subroutines for long double support.
Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc. Copyright (C) 2000, 2002, 2004, 2005 Free Software Foundation, Inc.
This file is part of GCC. This file is part of GCC.
...@@ -160,11 +160,19 @@ _U_Qfcomp (long double a, long double b) ...@@ -160,11 +160,19 @@ _U_Qfcomp (long double a, long double b)
} }
/* This violates the IEEE standard. It is better to multiply by -1.0L. */ /* Negate long double A. */
long double long double
_U_Qfneg (long double a) _U_Qfneg (long double a)
{ {
return (0.0L - a); union
{
long double ld;
int i[4];
} u;
u.ld = a;
u.i[0] ^= 0x80000000;
return u.ld;
} }
#ifdef __LP64__ #ifdef __LP64__
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment