summaryrefslogtreecommitdiffstats
path: root/src/extension/script/js/fdlibm/s_nextafter.c
diff options
context:
space:
mode:
authorBob Jamison <ishmalius@gmail.com>2006-01-16 09:50:17 +0000
committerishmal <ishmal@users.sourceforge.net>2006-01-16 09:50:17 +0000
commit2d00762bebfb3257161115add4805a57aef25bde (patch)
tree2e5dfe871d77655fd43912917160602c9ec83e3c /src/extension/script/js/fdlibm/s_nextafter.c
parent* src/svg/Makefile_insert: Updated to reflect a previous header (diff)
downloadinkscape-2d00762bebfb3257161115add4805a57aef25bde.tar.gz
inkscape-2d00762bebfb3257161115add4805a57aef25bde.zip
Remove duplicate Javascript tree. This dupe was probably an artifact of the migration.
(bzr r3)
Diffstat (limited to 'src/extension/script/js/fdlibm/s_nextafter.c')
-rw-r--r--src/extension/script/js/fdlibm/s_nextafter.c124
1 files changed, 0 insertions, 124 deletions
diff --git a/src/extension/script/js/fdlibm/s_nextafter.c b/src/extension/script/js/fdlibm/s_nextafter.c
deleted file mode 100644
index f71c5c835..000000000
--- a/src/extension/script/js/fdlibm/s_nextafter.c
+++ /dev/null
@@ -1,124 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
- *
- * ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is Mozilla Communicator client code, released
- * March 31, 1998.
- *
- * The Initial Developer of the Original Code is
- * Sun Microsystems, Inc.
- * Portions created by the Initial Developer are Copyright (C) 1998
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either of the GNU General Public License Version 2 or later (the "GPL"),
- * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-
-/* @(#)s_nextafter.c 1.3 95/01/18 */
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunSoft, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/* IEEE functions
- * nextafter(x,y)
- * return the next machine floating-point number of x in the
- * direction toward y.
- * Special cases:
- */
-
-#include "fdlibm.h"
-
-#ifdef __STDC__
- double fd_nextafter(double x, double y)
-#else
- double fd_nextafter(x,y)
- double x,y;
-#endif
-{
- int hx,hy,ix,iy;
- unsigned lx,ly;
- fd_twoints ux, uy;
-
- ux.d = x; uy.d = y;
- hx = __HI(ux); /* high word of x */
- lx = __LO(ux); /* low word of x */
- hy = __HI(uy); /* high word of y */
- ly = __LO(uy); /* low word of y */
- ix = hx&0x7fffffff; /* |x| */
- iy = hy&0x7fffffff; /* |y| */
-
- if(((ix>=0x7ff00000)&&((ix-0x7ff00000)|lx)!=0) || /* x is nan */
- ((iy>=0x7ff00000)&&((iy-0x7ff00000)|ly)!=0)) /* y is nan */
- return x+y;
- if(x==y) return x; /* x=y, return x */
- if((ix|lx)==0) { /* x == 0 */
- ux.d = x;
- __HI(ux) = hy&0x80000000; /* return +-minsubnormal */
- __LO(ux) = 1;
- x = ux.d;
- y = x*x;
- if(y==x) return y; else return x; /* raise underflow flag */
- }
- if(hx>=0) { /* x > 0 */
- if(hx>hy||((hx==hy)&&(lx>ly))) { /* x > y, x -= ulp */
- if(lx==0) hx -= 1;
- lx -= 1;
- } else { /* x < y, x += ulp */
- lx += 1;
- if(lx==0) hx += 1;
- }
- } else { /* x < 0 */
- if(hy>=0||hx>hy||((hx==hy)&&(lx>ly))){/* x < y, x -= ulp */
- if(lx==0) hx -= 1;
- lx -= 1;
- } else { /* x > y, x += ulp */
- lx += 1;
- if(lx==0) hx += 1;
- }
- }
- hy = hx&0x7ff00000;
- if(hy>=0x7ff00000) return x+x; /* overflow */
- if(hy<0x00100000) { /* underflow */
- y = x*x;
- if(y!=x) { /* raise underflow flag */
- uy.d = y;
- __HI(uy) = hx; __LO(uy) = lx;
- y = uy.d;
- return y;
- }
- }
- ux.d = x;
- __HI(ux) = hx; __LO(ux) = lx;
- x = ux.d;
- return x;
-}