Commit 0df8fcc8 by Uros Bizjak

re PR target/45476 (libgcc should contain TCmode functions)

libgcc/ChangeLog:

	PR target/45476
	* Makefile.in (sifuncs, difuncs, tifuncs): Filter out
	LIB2FUNCS_EXCLUDE functions.

gcc/ChangeLog:

	PR target/45476
	* config/i386/t-darwin (LIB2FUNCS_EXCLUDE): New.
	* config/i386/darwin.h (LIBGCC2_HAS_TF_MODE,
	LIBGCC2_TF_CEXT, TF_SIZE): New defines.

gcc/testsuite/ChangeLog:

	PR target/45476
	* gcc.target/i386/float128-1.c: Enable for all x86 targets.
	* gcc.target/i386/float128-2.c: Ditto.

From-SVN: r163819
parent ac364a48
2010-09-03 Uros Bizjak <ubizjak@gmail.com>
Iain Sandoe <iains@gcc.gnu.org>
PR target/45476
* config/i386/t-darwin (LIB2FUNCS_EXCLUDE): New.
* config/i386/darwin.h (LIBGCC2_HAS_TF_MODE,
LIBGCC2_TF_CEXT, TF_SIZE): New defines.
2010-09-03 Richard Guenther <rguenther@suse.de> 2010-09-03 Richard Guenther <rguenther@suse.de>
* lto-streamer-out.c (output_function): Output function * lto-streamer-out.c (output_function): Output function
...@@ -29,13 +37,13 @@ ...@@ -29,13 +37,13 @@
initializer folding. initializer folding.
* ipa.c (ipa_discover_readonly_nonaddressable_var, * ipa.c (ipa_discover_readonly_nonaddressable_var,
function_and_variable_visibility): Compute const_value_known. function_and_variable_visibility): Compute const_value_known.
* gimple-fold.c (get_symbol_constant_value): Use varpool for initializer * gimple-fold.c (get_symbol_constant_value): Use varpool for
folding. initializer folding.
* varpool.c (varpool_decide_const_value_known): New function. * varpool.c (varpool_decide_const_value_known): New function.
2010-09-03 Uros Bizjak <ubizjak@gmail.com> 2010-09-03 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md: Remove empty prepartion statements * config/i386/i386.md: Remove empty preparation statements
from splitters. from splitters.
2010-09-03 Jan Hubicka <jh@suse.cz> 2010-09-03 Jan Hubicka <jh@suse.cz>
......
...@@ -148,6 +148,12 @@ extern int darwin_emit_branch_islands; ...@@ -148,6 +148,12 @@ extern int darwin_emit_branch_islands;
#define SHIFT_DOUBLE_OMITS_COUNT 0 #define SHIFT_DOUBLE_OMITS_COUNT 0
/* Put all *tf routines in libgcc. */
#undef LIBGCC2_HAS_TF_MODE
#define LIBGCC2_HAS_TF_MODE 1
#define LIBGCC2_TF_CEXT q
#define TF_SIZE 113
#undef TARGET_ASM_FILE_END #undef TARGET_ASM_FILE_END
#define TARGET_ASM_FILE_END darwin_file_end #define TARGET_ASM_FILE_END darwin_file_end
......
...@@ -2,3 +2,4 @@ MULTILIB_OPTIONS = m64 ...@@ -2,3 +2,4 @@ MULTILIB_OPTIONS = m64
MULTILIB_DIRNAMES = x86_64 MULTILIB_DIRNAMES = x86_64
LIB2_SIDITI_CONV_FUNCS=yes LIB2_SIDITI_CONV_FUNCS=yes
LIB2FUNCS_EXTRA = $(srcdir)/config/darwin-64.c LIB2FUNCS_EXTRA = $(srcdir)/config/darwin-64.c
LIB2FUNCS_EXCLUDE = _fixtfdi _fixunstfdi _floatditf _floatunditf
2010-09-03 Uros Bizjak <ubizjak@gmail.com>
PR target/45476
* gcc.target/i386/float128-1.c: Enable for all x86 targets.
* gcc.target/i386/float128-2.c: Ditto.
2010-09-03 Daniel Kraft <d@domob.eu> 2010-09-03 Daniel Kraft <d@domob.eu>
PR fortran/34162 PR fortran/34162
......
/* { dg-do run { target *-*-linux* } } */ /* { dg-do run } */
/* { dg-options "-O2 -msse2" } */ /* { dg-options "-O2 -msse2" } */
/* { dg-require-effective-target sse2 } */ /* { dg-require-effective-target sse2 } */
......
/* PR target/36710 */ /* PR target/36710 */
/* { dg-do run { target *-*-linux* *-*-darwin* } } */ /* { dg-do run } */
/* { dg-options "-Os -msse2" } */ /* { dg-options "-Os -msse2" } */
/* { dg-require-effective-target sse2 } */ /* { dg-require-effective-target sse2 } */
......
2010-09-03 Uros Bizjak <ubizjak@gmail.com>
Iain Sandoe <iains@gcc.gnu.org>
PR target/45476
* Makefile.in (sifuncs, difuncs, tifuncs): Filter out
LIB2FUNCS_EXCLUDE functions.
2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* configure.ac: Use the GCC_AC_ENABLE_DECIMAL_FLOAT macro. * configure.ac: Use the GCC_AC_ENABLE_DECIMAL_FLOAT macro.
......
...@@ -385,9 +385,9 @@ ifneq ($(LIB2_SIDITI_CONV_FUNCS),) ...@@ -385,9 +385,9 @@ ifneq ($(LIB2_SIDITI_CONV_FUNCS),)
# functions are built with a wordsize of 4; the TImode functions are # functions are built with a wordsize of 4; the TImode functions are
# built with the same labels, but a wordsize of 8. # built with the same labels, but a wordsize of 8.
sifuncs = $(subst XX,si,$(swfloatfuncs)) sifuncs := $(filter-out $(LIB2FUNCS_EXCLUDE),$(subst XX,si,$(swfloatfuncs)))
difuncs = $(subst XX,di,$(dwfloatfuncs)) difuncs := $(filter-out $(LIB2FUNCS_EXCLUDE),$(subst XX,di,$(dwfloatfuncs)))
tifuncs = $(subst XX,ti,$(dwfloatfuncs)) tifuncs := $(filter-out $(LIB2FUNCS_EXCLUDE),$(subst XX,ti,$(dwfloatfuncs)))
iter-items := $(sifuncs) $(difuncs) $(tifuncs) iter-items := $(sifuncs) $(difuncs) $(tifuncs)
iter-labels := $(sifuncs) $(difuncs) $(difuncs) iter-labels := $(sifuncs) $(difuncs) $(difuncs)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment