Update soft-fp from glibc.

This patch is updating all soft-fp from glibc, most changes are
copyright years update, and changes other than years update are list
bellow, this patch has been tested with riscv32-elf(rv32imac),
riscv64-elf(rv64imac) and nds32le-elf(v3), didn't introduce new test
fail:

soft-fp/op-4.h
  - soft-fp: Use temporary variable in FP_FRAC_SUB_3/FP_FRAC_SUB_4
    - ff48ea6787526d7e669af93ce2681b911d39675c
soft-fp/op-8.h
  - soft-fp: Add implementation for 128 bit self-contained
    - af1d5782c1e3a635fdd13d6688be64de7759857c
soft-fp/op-common.h
- Add narrowing multiply functions.
   - 69a01461ee1417578d2ba20aac935828b50f1118

soft-fp/extended.h
soft-fp/half.h
soft-fp/single.h
soft-fp/double.h
soft-fp/quad.h
- Do not use packed structures in soft-fp.
  - 049375e2b5fc707436fd5d80337c253beededb2d

2018-11-08  Kito Cheng  <kito@andestech.com>

	* soft-fp/adddf3.c: Update from glibc.
	* soft-fp/addsf3.c: Likewise.
	* soft-fp/addtf3.c: Likewise.
	* soft-fp/divdf3.c: Likewise.
	* soft-fp/divsf3.c: Likewise.
	* soft-fp/divtf3.c: Likewise.
	* soft-fp/double.h: Likewise.
	* soft-fp/eqdf2.c: Likewise.
	* soft-fp/eqsf2.c: Likewise.
	* soft-fp/eqtf2.c: Likewise.
	* soft-fp/extenddftf2.c: Likewise.
	* soft-fp/extended.h: Likewise.
	* soft-fp/extendhftf2.c: Likewise.
	* soft-fp/extendsfdf2.c: Likewise.
	* soft-fp/extendsftf2.c: Likewise.
	* soft-fp/extendxftf2.c: Likewise.
	* soft-fp/fixdfdi.c: Likewise.
	* soft-fp/fixdfsi.c: Likewise.
	* soft-fp/fixdfti.c: Likewise.
	* soft-fp/fixhfti.c: Likewise.
	* soft-fp/fixsfdi.c: Likewise.
	* soft-fp/fixsfsi.c: Likewise.
	* soft-fp/fixsfti.c: Likewise.
	* soft-fp/fixtfdi.c: Likewise.
	* soft-fp/fixtfsi.c: Likewise.
	* soft-fp/fixtfti.c: Likewise.
	* soft-fp/fixunsdfdi.c: Likewise.
	* soft-fp/fixunsdfsi.c: Likewise.
	* soft-fp/fixunsdfti.c: Likewise.
	* soft-fp/fixunshfti.c: Likewise.
	* soft-fp/fixunssfdi.c: Likewise.
	* soft-fp/fixunssfsi.c: Likewise.
	* soft-fp/fixunssfti.c: Likewise.
	* soft-fp/fixunstfdi.c: Likewise.
	* soft-fp/fixunstfsi.c: Likewise.
	* soft-fp/fixunstfti.c: Likewise.
	* soft-fp/floatdidf.c: Likewise.
	* soft-fp/floatdisf.c: Likewise.
	* soft-fp/floatditf.c: Likewise.
	* soft-fp/floatsidf.c: Likewise.
	* soft-fp/floatsisf.c: Likewise.
	* soft-fp/floatsitf.c: Likewise.
	* soft-fp/floattidf.c: Likewise.
	* soft-fp/floattihf.c: Likewise.
	* soft-fp/floattisf.c: Likewise.
	* soft-fp/floattitf.c: Likewise.
	* soft-fp/floatundidf.c: Likewise.
	* soft-fp/floatundisf.c: Likewise.
	* soft-fp/floatunditf.c: Likewise.
	* soft-fp/floatunsidf.c: Likewise.
	* soft-fp/floatunsisf.c: Likewise.
	* soft-fp/floatunsitf.c: Likewise.
	* soft-fp/floatuntidf.c: Likewise.
	* soft-fp/floatuntihf.c: Likewise.
	* soft-fp/floatuntisf.c: Likewise.
	* soft-fp/floatuntitf.c: Likewise.
	* soft-fp/gedf2.c: Likewise.
	* soft-fp/gesf2.c: Likewise.
	* soft-fp/getf2.c: Likewise.
	* soft-fp/half.h: Likewise.
	* soft-fp/ledf2.c: Likewise.
	* soft-fp/lesf2.c: Likewise.
	* soft-fp/letf2.c: Likewise.
	* soft-fp/muldf3.c: Likewise.
	* soft-fp/mulsf3.c: Likewise.
	* soft-fp/multf3.c: Likewise.
	* soft-fp/negdf2.c: Likewise.
	* soft-fp/negsf2.c: Likewise.
	* soft-fp/negtf2.c: Likewise.
	* soft-fp/op-1.h: Likewise.
	* soft-fp/op-2.h: Likewise.
	* soft-fp/op-4.h: Likewise.
	* soft-fp/op-8.h: Likewise.
	* soft-fp/op-common.h: Likewise.
	* soft-fp/quad.h: Likewise.
	* soft-fp/single.h: Likewise.
	* soft-fp/soft-fp.h: Likewise.
	* soft-fp/subdf3.c: Likewise.
	* soft-fp/subsf3.c: Likewise.
	* soft-fp/subtf3.c: Likewise.
	* soft-fp/truncdfsf2.c: Likewise.
	* soft-fp/trunctfdf2.c: Likewise.
	* soft-fp/trunctfhf2.c: Likewise.
	* soft-fp/trunctfsf2.c: Likewise.
	* soft-fp/trunctfxf2.c: Likewise.
	* soft-fp/unorddf2.c: Likewise.
	* soft-fp/unordsf2.c: Likewise.
	* soft-fp/unordtf2.c: Likewise.

From-SVN: r265925
This commit is contained in:
Kito Cheng 2018-11-08 16:26:28 +00:00 committed by Joseph Myers
parent 20ce1f50f6
commit 222cfefa71
89 changed files with 329 additions and 122 deletions

View File

@ -1,3 +1,94 @@
2018-11-08 Kito Cheng <kito@andestech.com>
* soft-fp/adddf3.c: Update from glibc.
* soft-fp/addsf3.c: Likewise.
* soft-fp/addtf3.c: Likewise.
* soft-fp/divdf3.c: Likewise.
* soft-fp/divsf3.c: Likewise.
* soft-fp/divtf3.c: Likewise.
* soft-fp/double.h: Likewise.
* soft-fp/eqdf2.c: Likewise.
* soft-fp/eqsf2.c: Likewise.
* soft-fp/eqtf2.c: Likewise.
* soft-fp/extenddftf2.c: Likewise.
* soft-fp/extended.h: Likewise.
* soft-fp/extendhftf2.c: Likewise.
* soft-fp/extendsfdf2.c: Likewise.
* soft-fp/extendsftf2.c: Likewise.
* soft-fp/extendxftf2.c: Likewise.
* soft-fp/fixdfdi.c: Likewise.
* soft-fp/fixdfsi.c: Likewise.
* soft-fp/fixdfti.c: Likewise.
* soft-fp/fixhfti.c: Likewise.
* soft-fp/fixsfdi.c: Likewise.
* soft-fp/fixsfsi.c: Likewise.
* soft-fp/fixsfti.c: Likewise.
* soft-fp/fixtfdi.c: Likewise.
* soft-fp/fixtfsi.c: Likewise.
* soft-fp/fixtfti.c: Likewise.
* soft-fp/fixunsdfdi.c: Likewise.
* soft-fp/fixunsdfsi.c: Likewise.
* soft-fp/fixunsdfti.c: Likewise.
* soft-fp/fixunshfti.c: Likewise.
* soft-fp/fixunssfdi.c: Likewise.
* soft-fp/fixunssfsi.c: Likewise.
* soft-fp/fixunssfti.c: Likewise.
* soft-fp/fixunstfdi.c: Likewise.
* soft-fp/fixunstfsi.c: Likewise.
* soft-fp/fixunstfti.c: Likewise.
* soft-fp/floatdidf.c: Likewise.
* soft-fp/floatdisf.c: Likewise.
* soft-fp/floatditf.c: Likewise.
* soft-fp/floatsidf.c: Likewise.
* soft-fp/floatsisf.c: Likewise.
* soft-fp/floatsitf.c: Likewise.
* soft-fp/floattidf.c: Likewise.
* soft-fp/floattihf.c: Likewise.
* soft-fp/floattisf.c: Likewise.
* soft-fp/floattitf.c: Likewise.
* soft-fp/floatundidf.c: Likewise.
* soft-fp/floatundisf.c: Likewise.
* soft-fp/floatunditf.c: Likewise.
* soft-fp/floatunsidf.c: Likewise.
* soft-fp/floatunsisf.c: Likewise.
* soft-fp/floatunsitf.c: Likewise.
* soft-fp/floatuntidf.c: Likewise.
* soft-fp/floatuntihf.c: Likewise.
* soft-fp/floatuntisf.c: Likewise.
* soft-fp/floatuntitf.c: Likewise.
* soft-fp/gedf2.c: Likewise.
* soft-fp/gesf2.c: Likewise.
* soft-fp/getf2.c: Likewise.
* soft-fp/half.h: Likewise.
* soft-fp/ledf2.c: Likewise.
* soft-fp/lesf2.c: Likewise.
* soft-fp/letf2.c: Likewise.
* soft-fp/muldf3.c: Likewise.
* soft-fp/mulsf3.c: Likewise.
* soft-fp/multf3.c: Likewise.
* soft-fp/negdf2.c: Likewise.
* soft-fp/negsf2.c: Likewise.
* soft-fp/negtf2.c: Likewise.
* soft-fp/op-1.h: Likewise.
* soft-fp/op-2.h: Likewise.
* soft-fp/op-4.h: Likewise.
* soft-fp/op-8.h: Likewise.
* soft-fp/op-common.h: Likewise.
* soft-fp/quad.h: Likewise.
* soft-fp/single.h: Likewise.
* soft-fp/soft-fp.h: Likewise.
* soft-fp/subdf3.c: Likewise.
* soft-fp/subsf3.c: Likewise.
* soft-fp/subtf3.c: Likewise.
* soft-fp/truncdfsf2.c: Likewise.
* soft-fp/trunctfdf2.c: Likewise.
* soft-fp/trunctfhf2.c: Likewise.
* soft-fp/trunctfsf2.c: Likewise.
* soft-fp/trunctfxf2.c: Likewise.
* soft-fp/unorddf2.c: Likewise.
* soft-fp/unordsf2.c: Likewise.
* soft-fp/unordtf2.c: Likewise.
2018-11-04 Venkataramanan Kumar <Venkataramanan.kumar@amd.com>
* config/i386/cpuinfo.c: (get_amd_cpu): Add znver2.

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a + b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a + b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a + b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a / b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a / b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a / b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Definitions for IEEE Double Precision
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),
@ -89,7 +89,7 @@ union _FP_UNION_D
unsigned exp : _FP_EXPBITS_D;
unsigned sign : 1;
# endif
} bits __attribute__ ((packed));
} bits;
};
# define FP_DECL_D(X) _FP_DECL (2, X)
@ -210,7 +210,7 @@ union _FP_UNION_D
unsigned exp : _FP_EXPBITS_D;
unsigned sign : 1;
# endif
} bits __attribute__ ((packed));
} bits;
};
# define FP_DECL_D(X) _FP_DECL (1, X)

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 otherwise
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 otherwise
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 otherwise
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a converted to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Definitions for IEEE Extended Precision.
Copyright (C) 1999-2016 Free Software Foundation, Inc.
Copyright (C) 1999-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jakub Jelinek (jj@ultra.linux.cz).
@ -88,7 +88,7 @@ union _FP_UNION_E
unsigned exp : _FP_EXPBITS_E;
unsigned sign : 1;
# endif /* not bigendian */
} bits __attribute__ ((packed));
} bits;
};

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return an IEEE half converted to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a converted to IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a converted to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a converted to IEEE quad
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 64bit signed integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 32bit signed integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE double to 128bit signed integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE half to 128bit signed integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 64bit signed integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 32bit signed integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE single to 128bit signed integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 64bit signed integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 32bit signed integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE quad to 128bit signed integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 64bit unsigned integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 32bit unsigned integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE double to 128bit unsigned integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE half to 128bit unsigned integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 64bit unsigned integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 32bit unsigned integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE single to 128bit unsigned integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 64bit unsigned integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a to 32bit unsigned integer
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert IEEE quad to 128bit unsigned integer
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 64bit signed integer to IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 64bit signed integer to IEEE single
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 64bit signed integer to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 32bit signed integer to IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 32bit signed integer to IEEE single
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 32bit signed integer to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit signed integer to IEEE double
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit signed integer to IEEE half
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit signed integer to IEEE single
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit signed integer to IEEE quad
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 64bit unsigned integer to IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 64bit unsigned integer to IEEE single
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 64bit unsigned integer to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 32bit unsigned integer to IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 32bit unsigned integer to IEEE single
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 32bit unsigned integer to IEEE quad
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit unsigned integer to IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit unsigned integer to IEEE half.
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit unsigned integer to IEEE single
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Convert a 128bit unsigned integer to IEEE quad
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 iff a > b, -2 iff a ? b, -1 iff a < b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 iff a > b, -2 iff a ? b, -1 iff a < b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 iff a > b, -2 iff a ? b, -1 iff a < b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Definitions for IEEE Half Precision.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -75,7 +75,7 @@ union _FP_UNION_H
unsigned exp : _FP_EXPBITS_H;
unsigned sign : 1;
#endif
} bits __attribute__ ((packed));
} bits;
};
#define FP_DECL_H(X) _FP_DECL (1, X)

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 iff a > b, 2 iff a ? b, -1 iff a < b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 iff a > b, 2 iff a ? b, -1 iff a < b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 0 iff a == b, 1 iff a > b, 2 iff a ? b, -1 iff a < b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a * b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a * b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a * b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return -a
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return -a
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return -a
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Basic one-word fraction declaration and manipulation.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Basic two-word fraction declaration and manipulation.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Basic four-word fraction declaration and manipulation.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),
@ -696,39 +696,46 @@
#endif
#ifndef __FP_FRAC_SUB_3
# define __FP_FRAC_SUB_3(r2, r1, r0, x2, x1, x0, y2, y1, y0) \
do \
{ \
_FP_W_TYPE __FP_FRAC_SUB_3_c1, __FP_FRAC_SUB_3_c2; \
r0 = x0 - y0; \
__FP_FRAC_SUB_3_c1 = r0 > x0; \
r1 = x1 - y1; \
__FP_FRAC_SUB_3_c2 = r1 > x1; \
r1 -= __FP_FRAC_SUB_3_c1; \
__FP_FRAC_SUB_3_c2 |= __FP_FRAC_SUB_3_c1 && (y1 == x1); \
r2 = x2 - y2 - __FP_FRAC_SUB_3_c2; \
} \
# define __FP_FRAC_SUB_3(r2, r1, r0, x2, x1, x0, y2, y1, y0) \
do \
{ \
_FP_W_TYPE __FP_FRAC_SUB_3_tmp[2]; \
_FP_W_TYPE __FP_FRAC_SUB_3_c1, __FP_FRAC_SUB_3_c2; \
__FP_FRAC_SUB_3_tmp[0] = x0 - y0; \
__FP_FRAC_SUB_3_c1 = __FP_FRAC_SUB_3_tmp[0] > x0; \
__FP_FRAC_SUB_3_tmp[1] = x1 - y1; \
__FP_FRAC_SUB_3_c2 = __FP_FRAC_SUB_3_tmp[1] > x1; \
__FP_FRAC_SUB_3_tmp[1] -= __FP_FRAC_SUB_3_c1; \
__FP_FRAC_SUB_3_c2 |= __FP_FRAC_SUB_3_c1 && (y1 == x1); \
r2 = x2 - y2 - __FP_FRAC_SUB_3_c2; \
r1 = __FP_FRAC_SUB_3_tmp[1]; \
r0 = __FP_FRAC_SUB_3_tmp[0]; \
} \
while (0)
#endif
#ifndef __FP_FRAC_SUB_4
# define __FP_FRAC_SUB_4(r3, r2, r1, r0, x3, x2, x1, x0, y3, y2, y1, y0) \
do \
{ \
_FP_W_TYPE __FP_FRAC_SUB_4_c1, __FP_FRAC_SUB_4_c2; \
_FP_W_TYPE __FP_FRAC_SUB_4_c3; \
r0 = x0 - y0; \
__FP_FRAC_SUB_4_c1 = r0 > x0; \
r1 = x1 - y1; \
__FP_FRAC_SUB_4_c2 = r1 > x1; \
r1 -= __FP_FRAC_SUB_4_c1; \
__FP_FRAC_SUB_4_c2 |= __FP_FRAC_SUB_4_c1 && (y1 == x1); \
r2 = x2 - y2; \
__FP_FRAC_SUB_4_c3 = r2 > x2; \
r2 -= __FP_FRAC_SUB_4_c2; \
__FP_FRAC_SUB_4_c3 |= __FP_FRAC_SUB_4_c2 && (y2 == x2); \
r3 = x3 - y3 - __FP_FRAC_SUB_4_c3; \
} \
do \
{ \
_FP_W_TYPE __FP_FRAC_SUB_4_tmp[3]; \
_FP_W_TYPE __FP_FRAC_SUB_4_c1, __FP_FRAC_SUB_4_c2; \
_FP_W_TYPE __FP_FRAC_SUB_4_c3; \
__FP_FRAC_SUB_4_tmp[0] = x0 - y0; \
__FP_FRAC_SUB_4_c1 = __FP_FRAC_SUB_4_tmp[0] > x0; \
__FP_FRAC_SUB_4_tmp[1] = x1 - y1; \
__FP_FRAC_SUB_4_c2 = __FP_FRAC_SUB_4_tmp[1] > x1; \
__FP_FRAC_SUB_4_tmp[1] -= __FP_FRAC_SUB_4_c1; \
__FP_FRAC_SUB_4_c2 |= __FP_FRAC_SUB_4_c1 && (y1 == x1); \
__FP_FRAC_SUB_4_tmp[2] = x2 - y2; \
__FP_FRAC_SUB_4_c3 = __FP_FRAC_SUB_4_tmp[2] > x2; \
__FP_FRAC_SUB_4_tmp[2] -= __FP_FRAC_SUB_4_c2; \
__FP_FRAC_SUB_4_c3 |= __FP_FRAC_SUB_4_c2 && (y2 == x2); \
r3 = x3 - y3 - __FP_FRAC_SUB_4_c3; \
r2 = __FP_FRAC_SUB_4_tmp[2]; \
r1 = __FP_FRAC_SUB_4_tmp[1]; \
r0 = __FP_FRAC_SUB_4_tmp[0]; \
} \
while (0)
#endif

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Basic eight-word fraction declaration and manipulation.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz) and
@ -35,6 +35,7 @@
/* We need just a few things from here for op-4, if we ever need some
other macros, they can be added. */
#define _FP_FRAC_DECL_8(X) _FP_W_TYPE X##_f[8]
#define _FP_FRAC_SET_8(X, I) __FP_FRAC_SET_8 (X, I)
#define _FP_FRAC_HIGH_8(X) (X##_f[7])
#define _FP_FRAC_LOW_8(X) (X##_f[0])
#define _FP_FRAC_WORD_8(X, w) (X##_f[w])
@ -147,4 +148,91 @@
} \
while (0)
#define _FP_FRAC_ADD_8(R, X, Y) \
do \
{ \
_FP_W_TYPE _FP_FRAC_ADD_8_c = 0; \
_FP_I_TYPE _FP_FRAC_ADD_8_i; \
for (_FP_FRAC_ADD_8_i = 0; _FP_FRAC_ADD_8_i < 8; ++_FP_FRAC_ADD_8_i) \
{ \
R##_f[_FP_FRAC_ADD_8_i] \
= (X##_f[_FP_FRAC_ADD_8_i] + Y##_f[_FP_FRAC_ADD_8_i] \
+ _FP_FRAC_ADD_8_c); \
_FP_FRAC_ADD_8_c \
= (_FP_FRAC_ADD_8_c \
? R##_f[_FP_FRAC_ADD_8_i] <= X##_f[_FP_FRAC_ADD_8_i] \
: R##_f[_FP_FRAC_ADD_8_i] < X##_f[_FP_FRAC_ADD_8_i]); \
} \
} \
while (0)
#define _FP_FRAC_SUB_8(R, X, Y) \
do \
{ \
_FP_W_TYPE _FP_FRAC_SUB_8_tmp[8]; \
_FP_W_TYPE _FP_FRAC_SUB_8_c = 0; \
_FP_I_TYPE _FP_FRAC_SUB_8_i; \
for (_FP_FRAC_SUB_8_i = 0; _FP_FRAC_SUB_8_i < 8; ++_FP_FRAC_SUB_8_i) \
{ \
_FP_FRAC_SUB_8_tmp[_FP_FRAC_SUB_8_i] \
= (X##_f[_FP_FRAC_SUB_8_i] - Y##_f[_FP_FRAC_SUB_8_i] \
- _FP_FRAC_SUB_8_c); \
_FP_FRAC_SUB_8_c \
= (_FP_FRAC_SUB_8_c \
? (_FP_FRAC_SUB_8_tmp[_FP_FRAC_SUB_8_i] \
>= X##_f[_FP_FRAC_SUB_8_i]) \
: (_FP_FRAC_SUB_8_tmp[_FP_FRAC_SUB_8_i] \
> X##_f[_FP_FRAC_SUB_8_i])); \
} \
for (_FP_FRAC_SUB_8_i = 0; _FP_FRAC_SUB_8_i < 8; ++_FP_FRAC_SUB_8_i) \
R##_f[_FP_FRAC_SUB_8_i] = _FP_FRAC_SUB_8_tmp[_FP_FRAC_SUB_8_i]; \
} \
while (0)
#define _FP_FRAC_CLZ_8(R, X) \
do \
{ \
_FP_I_TYPE _FP_FRAC_CLZ_8_i; \
for (_FP_FRAC_CLZ_8_i = 7; _FP_FRAC_CLZ_8_i > 0; _FP_FRAC_CLZ_8_i--) \
if (X##_f[_FP_FRAC_CLZ_8_i]) \
break; \
__FP_CLZ ((R), X##_f[_FP_FRAC_CLZ_8_i]); \
(R) += _FP_W_TYPE_SIZE * (7 - _FP_FRAC_CLZ_8_i); \
} \
while (0)
#define _FP_MINFRAC_8 0, 0, 0, 0, 0, 0, 0, 1
#define _FP_FRAC_NEGP_8(X) ((_FP_WS_TYPE) X##_f[7] < 0)
#define _FP_FRAC_ZEROP_8(X) \
((X##_f[0] | X##_f[1] | X##_f[2] | X##_f[3] \
| X##_f[4] | X##_f[5] | X##_f[6] | X##_f[7]) == 0)
#define _FP_FRAC_HIGHBIT_DW_8(fs, X) \
(_FP_FRAC_HIGH_DW_##fs (X) & _FP_HIGHBIT_DW_##fs)
#define _FP_FRAC_COPY_4_8(D, S) \
do \
{ \
D##_f[0] = S##_f[0]; \
D##_f[1] = S##_f[1]; \
D##_f[2] = S##_f[2]; \
D##_f[3] = S##_f[3]; \
} \
while (0)
#define _FP_FRAC_COPY_8_4(D, S) \
do \
{ \
D##_f[0] = S##_f[0]; \
D##_f[1] = S##_f[1]; \
D##_f[2] = S##_f[2]; \
D##_f[3] = S##_f[3]; \
D##_f[4] = D##_f[5] = D##_f[6] = D##_f[7]= 0; \
} \
while (0)
#define __FP_FRAC_SET_8(X, I7, I6, I5, I4, I3, I2, I1, I0) \
(X##_f[7] = I7, X##_f[6] = I6, X##_f[5] = I5, X##_f[4] = I4, \
X##_f[3] = I3, X##_f[2] = I2, X##_f[1] = I1, X##_f[0] = I0)
#endif /* !SOFT_FP_OP_8_H */

View File

@ -1,5 +1,5 @@
/* Software floating-point emulation. Common operations.
Copyright (C) 1997-2017 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),
@ -2041,6 +2041,27 @@
} \
while (0)
/* Truncate from a wider floating-point format to a narrower one.
Input and output are cooked. */
#define FP_TRUNC_COOKED(dfs, sfs, dwc, swc, D, S) \
do \
{ \
_FP_STATIC_ASSERT (_FP_FRACBITS_##sfs >= _FP_FRACBITS_##dfs, \
"destination mantissa wider than source"); \
if (S##_c == FP_CLS_NAN) \
_FP_FRAC_SRL_##swc (S, (_FP_WFRACBITS_##sfs \
- _FP_WFRACBITS_##dfs)); \
else \
_FP_FRAC_SRS_##swc (S, (_FP_WFRACBITS_##sfs \
- _FP_WFRACBITS_##dfs), \
_FP_WFRACBITS_##sfs); \
_FP_FRAC_COPY_##dwc##_##swc (D, S); \
D##_e = S##_e; \
D##_c = S##_c; \
D##_s = S##_s; \
} \
while (0)
/* Helper primitives. */
/* Count leading zeros in a word. */

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Definitions for IEEE Quad Precision.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),
@ -93,7 +93,7 @@ union _FP_UNION_Q
unsigned exp : _FP_EXPBITS_Q;
unsigned sign : 1;
# endif /* not bigendian */
} bits __attribute__ ((packed));
} bits;
};

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Definitions for IEEE Single Precision.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),
@ -82,7 +82,7 @@ union _FP_UNION_S
unsigned exp : _FP_EXPBITS_S;
unsigned sign : 1;
#endif
} bits __attribute__ ((packed));
} bits;
};
#define FP_DECL_S(X) _FP_DECL (1, X)

View File

@ -1,5 +1,5 @@
/* Software floating-point emulation.
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com),
Jakub Jelinek (jj@ultra.linux.cz),

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a - b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a - b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return a - b
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Truncate IEEE double into IEEE single
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Truncate IEEE quad into IEEE double
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Truncate IEEE quad into IEEE half.
Copyright (C) 1997-2015 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Truncate IEEE quad into IEEE single
Copyright (C) 1997-2016 Free Software Foundation, Inc.
Copyright (C) 1997-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Richard Henderson (rth@cygnus.com) and
Jakub Jelinek (jj@ultra.linux.cz).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Truncate IEEE quad into IEEE extended
Copyright (C) 2007-2016 Free Software Foundation, Inc.
Copyright (C) 2007-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Uros Bizjak (ubizjak@gmail.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 1 iff a or b is a NaN, 0 otherwise.
Copyright (C) 2006-2016 Free Software Foundation, Inc.
Copyright (C) 2006-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Joseph Myers (joseph@codesourcery.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 1 iff a or b is a NaN, 0 otherwise.
Copyright (C) 2006-2016 Free Software Foundation, Inc.
Copyright (C) 2006-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Joseph Myers (joseph@codesourcery.com).

View File

@ -1,6 +1,6 @@
/* Software floating-point emulation.
Return 1 iff a or b is a NaN, 0 otherwise.
Copyright (C) 2006-2016 Free Software Foundation, Inc.
Copyright (C) 2006-2018 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Joseph Myers (joseph@codesourcery.com).