]>
Commit | Line | Data |
---|---|---|
d5efd131 | 1 | /* Test for inf/-inf |
d4697bc9 | 2 | Copyright (C) 2000-2014 Free Software Foundation, Inc. |
d5efd131 MF |
3 | This file is part of the GNU C Library. |
4 | Contributed by Jes Sorensen <jes@linuxcare.com>, October 2000. | |
5 | ||
6 | The GNU C Library is free software; you can redistribute it and/or | |
7 | modify it under the terms of the GNU Lesser General Public | |
8 | License as published by the Free Software Foundation; either | |
9 | version 2.1 of the License, or (at your option) any later version. | |
10 | ||
11 | The GNU C Library is distributed in the hope that it will be useful, | |
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 | Lesser General Public License for more details. | |
15 | ||
16 | You should have received a copy of the GNU Lesser General Public | |
75efb018 MF |
17 | License along with the GNU C Library; if not, see |
18 | <http://www.gnu.org/licenses/>. */ | |
d5efd131 MF |
19 | |
20 | /* | |
21 | * isinf(x) returns 1 if x is inf, -1 for x == -inf, else 0; | |
22 | */ | |
23 | ||
24 | #include <sysdep.h> | |
25 | #undef ret | |
26 | ||
27 | ENTRY (__isinf) | |
28 | { | |
29 | .mfi | |
30 | fclass.m p6, p7 = farg0, @inf|@pos | |
31 | ;; | |
32 | } | |
33 | { | |
34 | .mfb | |
35 | (p6) mov ret0 = 1 | |
36 | (p7) fclass.m p7, p8 = farg0, @inf|@neg | |
37 | (p6) br.ret.sptk.many rp | |
38 | ;; | |
39 | } | |
40 | { | |
41 | .pred.rel.mutex p7,p8 | |
42 | (p7) mov ret0 = -1 | |
43 | (p8) mov ret0 = 0 | |
44 | br.ret.sptk.many rp | |
45 | } | |
46 | END (__isinf) | |
47 | ||
48 | strong_alias (__isinf, __isinff) | |
49 | strong_alias (__isinf, __isinfl) | |
50 | ||
51 | weak_alias (__isinf, isinf) | |
52 | weak_alias (__isinff, isinff) | |
53 | weak_alias (__isinfl, isinfl) | |
54 | ||
55 | hidden_def (__isinf) | |
56 | hidden_def (__isinff) | |
57 | hidden_def (__isinfl) |