]> git.ipfire.org Git - thirdparty/glibc.git/blob - sysdeps/powerpc/fpu/s_fmax.S
Add space inf weak_alias use.
[thirdparty/glibc.git] / sysdeps / powerpc / fpu / s_fmax.S
1 /* Floating-point maximum. PowerPC version.
2 Copyright (C) 1997, 1999 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
4
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
9
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, write to the Free
17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 02111-1307 USA. */
19
20 #include <sysdep.h>
21
22 ENTRY(__fmax)
23 /* double [f1] fmax (double [f1] x, double [f2] y); */
24 fcmpu cr0,fp1,fp2
25 blt cr0,0f /* if x < y, neither x nor y can be NaN... */
26 bnulr+ cr0
27 /* x and y are unordered, so one of x or y must be a NaN... */
28 fcmpu cr1,fp2,fp2
29 bunlr cr1
30 0: fmr fp1,fp2
31 blr
32 END(__fmax)
33
34 weak_alias (__fmax,fmax)
35
36 /* It turns out that it's safe to use this code even for single-precision. */
37 strong_alias(__fmax,__fmaxf)
38 weak_alias (__fmax,fmaxf)
39
40 #ifdef NO_LONG_DOUBLE
41 weak_alias (__fmax,__fmaxl)
42 weak_alias (__fmax,fmaxl)
43 #endif