diff options
author | Richard Sandiford <richard@codesourcery.com> | 2006-05-19 08:05:39 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2006-05-19 08:05:39 +0000 |
commit | baffad1f3d30a473263e56f86b1420dbc7371ab3 (patch) | |
tree | cf643de5bba2d973c8fea4043b4125197d2df44c /gcc/libgcc2.c | |
parent | 41990f964687332cd2ea2ad59a02c18ed499db6c (diff) | |
download | gcc-baffad1f3d30a473263e56f86b1420dbc7371ab3.zip gcc-baffad1f3d30a473263e56f86b1420dbc7371ab3.tar.gz gcc-baffad1f3d30a473263e56f86b1420dbc7371ab3.tar.bz2 |
re PR target/22209 (libgfortran unresolvable symbols on irix6.5)
* libgcc2.c (MIN_UNITS_PER_WORD): Move default definition from
libgcc2.h.
(LIBGCC2_UNITS_PER_WORD): Provide default definition, using old
MIN_UNITS_PER_WORD logic from libgcc2.h. Do nothing if
LIBGCC2_UNITS_PER_WORD > MIN_UNITS_PER_WORD.
* libgcc2.h (MIN_UNITS_PER_WORD): Remove definition from here.
Use LIBGCC2_UNITS_PER_WORD rather than MIN_UNITS_PER_WORD to
determine the size of Wtype, etc.
* mklibgcc.in (LIB2_SIDITI_CONV_FUNCS): New argument.
(swfloatfuncs): New variable.
(dwfloatfuncs): Likewise.
(lib2funcs): Remove floating-point conversion functions from
initial assignment. Use LIB2_SIDITI_CONV_FUNCS to determine
the set of conversion routines needed. Allow entries to specify
an object name, filename and word size. Update users accordingly.
* Makefile.in (libgcc.mk): Pass LIB2_SIDITI_CONV_FUNCS.
* config/mips/t-mips (LIB2_SIDITI_CONV_FUNCS): Define.
Revert:
2006-02-08 Roger Sayle <roger@eyesopen.com>
PR target/22209
* config/fixtfdi.c: New libgcc source file.
* config/fixunstfdi.c: New source file.
* config/floatditf.c: New source file.
* config/floatunditf.c: New souce file.
* config/mips/t-iris6 (LIB2FUNCS_EXTRA): Include the new source
files above instead of config/mips/_tilib.c.
* config/mips/t-linux64 (LIB2FUNCS_EXTRA): Likewise.
From-SVN: r113903
Diffstat (limited to 'gcc/libgcc2.c')
-rw-r--r-- | gcc/libgcc2.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index 97717a4..3fce731 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -40,6 +40,23 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #define ATTRIBUTE_HIDDEN #endif +#ifndef MIN_UNITS_PER_WORD +#define MIN_UNITS_PER_WORD UNITS_PER_WORD +#endif + +#ifndef LIBGCC2_UNITS_PER_WORD +# if MIN_UNITS_PER_WORD > 4 +# define LIBGCC2_UNITS_PER_WORD 8 +# elif (MIN_UNITS_PER_WORD > 2 \ + || (MIN_UNITS_PER_WORD > 1 && LONG_LONG_TYPE_SIZE > 32)) +# define LIBGCC2_UNITS_PER_WORD 4 +# else +# define LIBGCC2_UNITS_PER_WORD MIN_UNITS_PER_WORD +# endif +#endif + +#if LIBGCC2_UNITS_PER_WORD <= MIN_UNITS_PER_WORD + #include "libgcc2.h" #ifdef DECLARE_LIBRARY_RENAMES @@ -2162,3 +2179,4 @@ func_ptr __DTOR_LIST__[2]; #endif #endif /* no INIT_SECTION_ASM_OP and not CTOR_LISTS_DEFINED_EXTERNALLY */ #endif /* L_ctors */ +#endif /* LIBGCC2_UNITS_PER_WORD <= MIN_UNITS_PER_WORD */ |