diff options
author | Dimitar Dimitrov <dimitar@dinux.eu> | 2019-06-12 19:28:51 +0000 |
---|---|---|
committer | Dimitar Dimitrov <dimitar@gcc.gnu.org> | 2019-06-12 19:28:51 +0000 |
commit | ae7deb4b85aad67c64228c19e226b902669032f4 (patch) | |
tree | 338f0df4600d72a06c7ddf11f6c1ddd47722b4cd /libgcc/config/pru/ged.c | |
parent | 3e209f57c029bd585415db47ca867040c0079daf (diff) | |
download | gcc-ae7deb4b85aad67c64228c19e226b902669032f4.tar.gz |
Initial TI PRU libgcc port
libgcc/ChangeLog:
2019-06-12 Dimitar Dimitrov <dimitar@dinux.eu>
* config.host: Add PRU target.
* config/pru/asri.c: New file.
* config/pru/eqd.c: New file.
* config/pru/eqf.c: New file.
* config/pru/ged.c: New file.
* config/pru/gef.c: New file.
* config/pru/gtd.c: New file.
* config/pru/gtf.c: New file.
* config/pru/led.c: New file.
* config/pru/lef.c: New file.
* config/pru/lib2bitcountHI.c: New file.
* config/pru/lib2divHI.c: New file.
* config/pru/lib2divQI.c: New file.
* config/pru/lib2divSI.c: New file.
* config/pru/libgcc-eabi.ver: New file.
* config/pru/ltd.c: New file.
* config/pru/ltf.c: New file.
* config/pru/mpyll.S: New file.
* config/pru/pru-abi.h: New file.
* config/pru/pru-asm.h: New file.
* config/pru/pru-divmod.h: New file.
* config/pru/sfp-machine.h: New file.
* config/pru/t-pru: New file.
From-SVN: r272204
Diffstat (limited to 'libgcc/config/pru/ged.c')
-rw-r--r-- | libgcc/config/pru/ged.c | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/libgcc/config/pru/ged.c b/libgcc/config/pru/ged.c new file mode 100644 index 00000000000..982a994305e --- /dev/null +++ b/libgcc/config/pru/ged.c @@ -0,0 +1,45 @@ +/* Software floating-point emulation. + Return 1 iff a >= b, 0 otherwise. + Copyright (C) 1997-2019 Free Software Foundation, Inc. + Contributed by Richard Henderson (rth@cygnus.com) and + Jakub Jelinek (jj@ultra.linux.cz). + + This file is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + In addition to the permissions in the GNU Lesser General Public + License, the Free Software Foundation gives you unlimited + permission to link the compiled version of this file into + combinations with other programs, and to distribute those + combinations without any restriction coming from the use of this + file. (The Lesser General Public License restrictions do apply in + other respects; for example, they cover modification of the file, + and distribution when not linked into a combine executable.) + + This file is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with GCC; see the file COPYING.LIB. If not see + <http://www.gnu.org/licenses/>. */ + +#include <soft-fp/soft-fp.h> +#include <soft-fp/double.h> + +CMPtype __pruabi_ged(DFtype a, DFtype b) +{ + FP_DECL_EX; + FP_DECL_D(A); FP_DECL_D(B); + CMPtype r; + + FP_UNPACK_RAW_D(A, a); + FP_UNPACK_RAW_D(B, b); + FP_CMP_D(r, A, B, -2, 2); + FP_HANDLE_EXCEPTIONS; + + return r >= 0; +} |