gcc/libgcc/config/i386
H.J. Lu c637141af0 Add -mlong-double-64/-mlong-double-80 to i386
gcc/

	* doc/invoke.texi: Document -mlong-double-64/-mlong-double-80.

	* config/i386/i386.c (flag_opts): Add -mlong-double-64.
	(TARGET_HAS_BIONIC): Default long double to 64-bit for Bionic.

	* config/i386/i386.h (LONG_DOUBLE_TYPE_SIZE): Use 64 if
	TARGET_LONG_DOUBLE_64 is true.
	(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): New macro.
	(WIDEST_HARDWARE_FP_SIZE): Defined to 80.

	* config/i386/i386.opt (mlong-double-80): New option.
	(mlong-double-64): Likewise.

	* config/i386/i386-c.c (ix86_target_macros): Define
	__LONG_DOUBLE_64__ for TARGET_LONG_DOUBLE_64.

gcc/testsuite/

	* gcc.target/i386/long-double-64-1.c: New file.
	* gcc.target/i386/long-double-64-2.c: Likewise.
	* gcc.target/i386/long-double-64-3.c: Likewise.
	* gcc.target/i386/long-double-64-4.c: Likewise.
	* gcc.target/i386/long-double-80-1.c: Likewise.
	* gcc.target/i386/long-double-80-2.c: Likewise.
	* gcc.target/i386/long-double-80-3.c: Likewise.
	* gcc.target/i386/long-double-80-4.c: Likewise.
	* gcc.target/i386/long-double-80-5.c: Likewise.
	* gcc.target/i386/long-double-80-6.c: Likewise.
	* gcc.target/i386/long-double-80-7.c: Likewise.

libgcc/

	* config/i386/t-linux (HOST_LIBGCC2_CFLAGS): New.

From-SVN: r190599
2012-08-22 12:46:28 -07:00
..
32 sfp-machine.h (_FP_NANSIGN_S, [...]): Move ... 2012-06-13 17:23:12 +02:00
64 sfp-machine.h (_FP_NANSIGN_S, [...]): Move ... 2012-06-13 17:23:12 +02:00
cpuinfo.c Use i386-cpuinfo.c on all i386 targets 2012-05-10 08:51:39 +00:00
crtfastmath.c
crti.S
crtn.S
crtprec.c
cygming-crtbegin.c
cygming-crtend.c
cygwin.S
darwin-lib.h
enable-execute-stack-mingw32.c
gthr-win32.c
gthr-win32.h
libgcc-bsd.ver libgcc-bsd.ver: Version symbol __cpu_indicator_init. 2012-06-12 02:55:20 +00:00
libgcc-cygming.ver eh_personality.cc (__gxx_personality_seh0): New function. 2012-07-19 07:29:24 +00:00
libgcc-darwin.10.4.ver
libgcc-darwin.10.5.ver
libgcc-glibc.ver libgcc-bsd.ver: Version symbol __cpu_indicator_init. 2012-06-12 02:55:20 +00:00
libgcc-sol2.ver libgcc-bsd.ver: Version symbol __cpu_indicator_init. 2012-06-12 02:55:20 +00:00
linux-unwind.h struct siginfo vs. siginfo_t 2012-04-20 09:44:50 +02:00
morestack.S morestack.S (__morestack_non_split): Increase amount of space allocated for non-split code stack. 2012-08-21 20:51:42 +00:00
sfp-exceptions.c sfp-machine.h (__gcc_CMPtype, [...]): Move ... 2012-06-09 19:32:27 +02:00
sfp-machine.h sfp-machine.h (FP_HANDLE_EXCEPTIONS): Use __builtin_expect when checking for exceptions. 2012-06-17 15:54:53 +02:00
sol2-c1.S
sol2-unwind.h
t-chkstk
t-cpuinfo Use i386-cpuinfo.c on all i386 targets 2012-05-10 08:51:39 +00:00
t-crtfm
t-crtpc
t-crtstuff
t-cygming
t-cygwin
t-darwin
t-dlldir
t-dlldir-x
t-dw2-eh
t-freebsd
t-gthr-win32
t-interix
t-linux Add -mlong-double-64/-mlong-double-80 to i386 2012-08-22 12:46:28 -07:00
t-mingw-pthread
t-mingw32
t-nto
t-seh-eh eh_personality.cc (__gxx_personality_seh0): New function. 2012-07-19 07:29:24 +00:00
t-sjlj-eh
t-slibgcc-cygming eh_personality.cc (__gxx_personality_seh0): New function. 2012-07-19 07:29:24 +00:00
t-softfp sfp-machine.h (__gcc_CMPtype, [...]): Move ... 2012-06-09 19:32:27 +02:00
t-sol2
t-stack-i386
value-unwind.h
w32-unwind.h