fixunssfti.c revision 1.1.1.5 1 1.1 mrg /* Software floating-point emulation.
2 1.1 mrg Convert IEEE single to 128bit unsigned integer
3 1.1.1.5 mrg Copyright (C) 2007-2018 Free Software Foundation, Inc.
4 1.1 mrg This file is part of the GNU C Library.
5 1.1 mrg Contributed by Uros Bizjak (ubizjak (at) gmail.com).
6 1.1 mrg
7 1.1 mrg The GNU C Library is free software; you can redistribute it and/or
8 1.1 mrg modify it under the terms of the GNU Lesser General Public
9 1.1 mrg License as published by the Free Software Foundation; either
10 1.1 mrg version 2.1 of the License, or (at your option) any later version.
11 1.1 mrg
12 1.1 mrg In addition to the permissions in the GNU Lesser General Public
13 1.1 mrg License, the Free Software Foundation gives you unlimited
14 1.1 mrg permission to link the compiled version of this file into
15 1.1 mrg combinations with other programs, and to distribute those
16 1.1 mrg combinations without any restriction coming from the use of this
17 1.1 mrg file. (The Lesser General Public License restrictions do apply in
18 1.1 mrg other respects; for example, they cover modification of the file,
19 1.1 mrg and distribution when not linked into a combine executable.)
20 1.1 mrg
21 1.1 mrg The GNU C Library is distributed in the hope that it will be useful,
22 1.1 mrg but WITHOUT ANY WARRANTY; without even the implied warranty of
23 1.1 mrg MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 1.1 mrg Lesser General Public License for more details.
25 1.1 mrg
26 1.1 mrg You should have received a copy of the GNU Lesser General Public
27 1.1.1.2 mrg License along with the GNU C Library; if not, see
28 1.1.1.2 mrg <http://www.gnu.org/licenses/>. */
29 1.1 mrg
30 1.1 mrg #include "soft-fp.h"
31 1.1 mrg #include "single.h"
32 1.1 mrg
33 1.1.1.2 mrg UTItype
34 1.1.1.2 mrg __fixunssfti (SFtype a)
35 1.1 mrg {
36 1.1 mrg FP_DECL_EX;
37 1.1.1.2 mrg FP_DECL_S (A);
38 1.1 mrg UTItype r;
39 1.1 mrg
40 1.1.1.2 mrg FP_INIT_EXCEPTIONS;
41 1.1.1.2 mrg FP_UNPACK_RAW_S (A, a);
42 1.1.1.2 mrg FP_TO_INT_S (r, A, TI_BITS, 0);
43 1.1 mrg FP_HANDLE_EXCEPTIONS;
44 1.1 mrg
45 1.1 mrg return r;
46 1.1 mrg }
47