gcc/libgcc
Michael Meissner a71c0334f7 float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating...
2016-01-21  Michael Meissner  <meissner@linux.vnet.ibm.com>
	    Steven Munroe <munroesj@linux.vnet.ibm.com>
	    Tulio Magno Quites Machado Filho <tulioqm@br.ibm.com>

	* config/rs6000/float128-sed: New files to convert TF names to KF
	names for PowerPC IEEE 128-bit floating point support.
	* config/rs6000/float128-sed-hw: Likewise.

	* config/rs6000/float128-hw.c: New file for ISA 3.0 IEEE 128-bit
	floating point hardware support.

	* config/rs6000/float128-ifunc.c: New file to pick either IEEE
	128-bit floating point software emulation or use ISA 3.0 hardware
	support if it is available.

	* config/rs6000/quad-float128.h: New file to support IEEE 128-bit
	floating point.

	* config/rs6000/extendkftf2-sw.c: New file, convert IEEE 128-bit
	floating point to IBM extended double.

	* config/rs6000/trunctfkf2-sw.c: New file, convert IBM extended
	double to IEEE 128-bit floating point.

	* config/rs6000/t-float128: New Makefile fragments to enable
	building __float128 emulation support.
	* config/rs6000/t-float128-hw: Likewise.

	* config/rs6000/sfp-exceptions.c: New file to provide exception
	support for IEEE 128-bit floating point.

	* config/rs6000/floattikf.c: New files for converting between IEEE
	128-bit floating point and signed/unsigned 128-bit integers.
	* config/rs6000/fixunskfti.c: Likewise.
	* config/rs6000/fixkfti.c: Likewise.
	* config/rs6000/floatuntikf.c: Likewise.

	* config/rs6000/sfp-machine.h (_FP_W_TYPE_SIZE): Use 64-bit types
	when building on 64-bit systems, or when VSX is enabled.
	(_FP_W_TYPE): Likewise.
	(_FP_WS_TYPE): Likewise.
	(_FP_I_TYPE): Likewise.
	(TItype): Define on 64-bit systems.
	(UTItype): Likewise.
	(TI_BITS): Likewise.
	(_FP_MUL_MEAT_D): Add support for using 64-bit types.
	(_FP_MUL_MEAT_Q): Likewise.
	(_FP_DIV_MEAT_D): Likewise.
	(_FP_DIV_MEAT_Q): Likewise.
	(_FP_NANFRAC_D): Likewise.
	(_FP_NANFRAC_Q): Likewise.
	(ISA_BIT): Add exception support if we are being compiled on a
	machine with hardware floating point support to build the IEEE
	128-bit emulation functions.
	(FP_EX_INVALID): Likewise.
	(FP_EX_OVERFLOW): Likewise.
	(FP_EX_UNDERFLOW): Likewise.
	(FP_EX_DIVZERO): Likewise.
	(FP_EX_INEXACT): Likewise.
	(FP_EX_ALL): Likewise.
	(__sfp_handle_exceptions): Likewise.
	(FP_HANDLE_EXCEPTIONS): Likewise.
	(FP_RND_NEAREST): Likewise.
	(FP_RND_ZERO): Likewise.
	(FP_RND_PINF): Likewise.
	(FP_RND_MINF): Likewise.
	(FP_RND_MASK): Likewise.
	(_FP_DECL_EX): Likewise.
	(FP_INIT_ROUNDMODE): Likewise.
	(FP_ROUNDMODE): Likewise.

	* libgcc/config.host (powerpc*-*-linux*): If compiler can compile
	VSX code, enable IEEE 128-bit floating point.  If the compiler can
	compile IEEE 128-bit floating point code with ISA 3.0 IEEE 128-bit
	floating point hardware instructions and it supports declaring
	functions with the ifunc attribute, enable ifunc functions to
	switch between software and hardware support.
	* configure.ac (powerpc*-*-linux*): Likewise.
	* configure: Regenerate.



Co-Authored-By: Steven Munroe <munroesj@linux.vnet.ibm.com>
Co-Authored-By: Tulio Magno Quites Machado Filho <tulioqm@br.ibm.com>

From-SVN: r232685
2016-01-21 17:52:33 +00:00
..
config float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating... 2016-01-21 17:52:33 +00:00
soft-fp Update soft-fp from glibc. 2015-09-28 22:50:22 +01:00
ChangeLog float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating... 2016-01-21 17:52:33 +00:00
config.host float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating... 2016-01-21 17:52:33 +00:00
config.in Support PIE on Solaris 2015-09-24 09:00:22 +00:00
configure float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating... 2016-01-21 17:52:33 +00:00
configure.ac float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating... 2016-01-21 17:52:33 +00:00
crtstuff.c Update copyright years. 2016-01-04 15:30:50 +01:00
dfp-bit.c Update copyright years. 2016-01-04 15:30:50 +01:00
dfp-bit.h Update copyright years. 2016-01-04 15:30:50 +01:00
divmod.c Update copyright years. 2016-01-04 15:30:50 +01:00
empty.mk
emutls.c Update copyright years. 2016-01-04 15:30:50 +01:00
enable-execute-stack-empty.c
enable-execute-stack-mprotect.c Update copyright years. 2016-01-04 15:30:50 +01:00
find-symver.awk Update copyright years. 2016-01-04 15:30:50 +01:00
fixed-bit.c Update copyright years. 2016-01-04 15:30:50 +01:00
fixed-bit.h Update copyright years. 2016-01-04 15:30:50 +01:00
fixed-obj.mk
floatunsidf.c
floatunsisf.c
floatunsitf.c
floatunsixf.c
fp-bit.c Update copyright years. 2016-01-04 15:30:50 +01:00
fp-bit.h Update copyright years. 2016-01-04 15:30:50 +01:00
gbl-ctors.h Update copyright years. 2016-01-04 15:30:50 +01:00
gen-fixed.sh
generic-morestack-thread.c Update copyright years. 2016-01-04 15:30:50 +01:00
generic-morestack.c Update copyright years. 2016-01-04 15:30:50 +01:00
generic-morestack.h Update copyright years. 2016-01-04 15:30:50 +01:00
gstdint.h
gthr-posix.h Update copyright years. 2016-01-04 15:30:50 +01:00
gthr-single.h Update copyright years. 2016-01-04 15:30:50 +01:00
gthr.h Update copyright years. 2016-01-04 15:30:50 +01:00
libgcc2.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcc2.h Update copyright years. 2016-01-04 15:30:50 +01:00
libgcc-std.ver.in Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov-driver-system.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov-driver.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov-interface.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov-merge.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov-profiler.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov-util.c Update copyright years. 2016-01-04 15:30:50 +01:00
libgcov.h Update copyright years. 2016-01-04 15:30:50 +01:00
Makefile.in Update copyright years. 2016-01-04 15:30:50 +01:00
memcmp.c
memcpy.c
memmove.c
memset.c
mkheader.sh Update copyright years. 2016-01-04 15:30:50 +01:00
mkmap-flat.awk Update copyright years. 2016-01-04 15:30:50 +01:00
mkmap-symver.awk Update copyright years. 2016-01-04 15:30:50 +01:00
offloadstuff.c Update copyright years. 2016-01-04 15:30:50 +01:00
shared-object.mk
siditi-object.mk
static-object.mk
sync.c Update copyright years. 2016-01-04 15:30:50 +01:00
udivmod.c Update copyright years. 2016-01-04 15:30:50 +01:00
udivmodsi4.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-arm-common.inc Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-c.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-compat.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-compat.h Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-dw2-fde-compat.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-dw2-fde-dip.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-dw2-fde.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-dw2-fde.h Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-dw2.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-dw2.h Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-generic.h Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-pe.h Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-seh.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind-sjlj.c Update copyright years. 2016-01-04 15:30:50 +01:00
unwind.inc Update copyright years. 2016-01-04 15:30:50 +01:00
vtv_end_preinit.c Update copyright years. 2016-01-04 15:30:50 +01:00
vtv_end.c Update copyright years. 2016-01-04 15:30:50 +01:00
vtv_start_preinit.c Update copyright years. 2016-01-04 15:30:50 +01:00
vtv_start.c Update copyright years. 2016-01-04 15:30:50 +01:00