From patchwork Fri May 13 16:10:15 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bernd Schmidt X-Patchwork-Id: 95496 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id 3793CB6EF2 for ; Sat, 14 May 2011 02:11:53 +1000 (EST) Received: (qmail 15590 invoked by alias); 13 May 2011 16:11:47 -0000 Received: (qmail 15496 invoked by uid 22791); 13 May 2011 16:11:30 -0000 X-SWARE-Spam-Status: No, hits=4.3 required=5.0 tests=AWL, BAYES_50, TW_BD, TW_BH, TW_BQ, TW_BT, TW_BV, TW_BX, TW_CL, TW_CP, TW_CX, TW_DD, TW_DF, TW_DH, TW_DQ, TW_DT, TW_EG, TW_EQ, TW_FD, TW_FH, TW_FQ, TW_FT, TW_FX, TW_GD, TW_GQ, TW_GT, TW_GU, TW_GV, TW_GX, TW_HQ, TW_HR, TW_IH, TW_IQ, TW_IU, TW_IV, TW_IX, TW_LH, TW_LQ, TW_LX, TW_LZ, TW_MK, TW_PH, TW_PQ, TW_PT, TW_QD, TW_QH, TW_QQ, TW_QS, TW_QT, TW_QX, TW_RH, TW_RQ, TW_SD, TW_SF, TW_SQ, TW_SV, TW_SX, TW_TD, TW_TQ, TW_TX, TW_UC, TW_UQ, TW_VD, TW_VH, TW_VQ, TW_VS, TW_VT, TW_VU, TW_VX, TW_XD, TW_XF, TW_XS, TW_XX, T_RP_MATCHES_RCVD, URIBL_BLACK X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 13 May 2011 16:11:03 +0000 Received: (qmail 28918 invoked from network); 13 May 2011 16:11:00 -0000 Received: from unknown (HELO ?84.152.211.163?) (bernds@127.0.0.2) by mail.codesourcery.com with ESMTPA; 13 May 2011 16:11:00 -0000 Message-ID: <4DCD57E7.9020909@codesourcery.com> Date: Fri, 13 May 2011 18:10:15 +0200 From: Bernd Schmidt User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110505 Lightning/1.0b3pre Thunderbird/3.1.10 MIME-Version: 1.0 To: "Joseph S. Myers" CC: GCC Patches , "Henderson, Stuart" , Mike Frysinger Subject: Re: Prefixes for libgcc symbols (C6X 9.5/11) References: <4DC956D0.3040306@codesourcery.com> <4DCD34BC.3080506@codesourcery.com> In-Reply-To: Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org On 05/13/2011 04:26 PM, Joseph S. Myers wrote: > On Fri, 13 May 2011, Bernd Schmidt wrote: > >> The following patch adds a target hook and a corresponding LIBGCC2_ >> macro which control the generation of library function names. It also >> makes libgcc-std.ver a generated file, built from libgcc-std.ver.in by >> replacing some placeholders with the correct prefixes. While I was >> there, I also added functionality to generate a version of this file >> with an extra underscore for the Blackfin port. > > But the linker was changed to use C symbol names in linker scripts and I > was told that this script in GCC would be removed in consequence. > > http://sourceware.org/ml/binutils/2010-12/msg00375.html Oh well. Dropped. > Any new target macro for use only in target libraries should, in my view, > be poisoned in the host system.h from the start to ensure that no-one > accidentally adds definitions to the host tm.h. This would be alongside > the existing > > /* Target macros only used for code built for the target, that have > moved to libgcc-tm.h. */ > #pragma GCC poison DECLARE_LIBRARY_RENAMES Done. New patch below, now testing. Bernd gcc/ * libgcc2.h (__NW, __NDW): Define using a __gnu_ prefix if LIBGCC2_GNU_PREFIX is defined. (__N): New macro. (__powisf2, __powidf2, __powitf2, __powixf2, __bswapsi2, __bswapdi2, __mulsc3, __muldc3, __mulxc3, __multc3, __divsc3, __divdc3, __divxc3, __divtc3, __udiv_w_sdiv, __clear_cache, __enable_execute_stack, __clz_tab): Define using __N. (__absvsi2, __negvsi2, __addvsi3, __subvsi3, __mulvsi3): Likewise if COMPAT_SIMODE_TRAPPING_ARITHMETIC. * target.def (libfunc_gnu_prefix): New hook. * doc/tm.texi.in (LIBGCC2_GNU_PREFIX): Document. (TARGET_LIBFUNC_GNU_PREFIX): Add hook. * doc/tm.texi: Regenerate. * system.h (LIBGCC2_GNU_PREFIX): Poison. * optabs.c (gen_libfunc): Take the libfunc_gnu_prefix hook into account. (gen_interclass_conv_libfunc, gen_intraclass_conv_libfunc): Likewise. (init_optabs): Likewise for the bswap libfuncs. * tree.c (build_common_builtin_nodes): Likewise for complex multiply and divide. * config/t-slibgcc-elf-ver (SHLIB_MAPFILES): Use $$(libgcc_objdir). * config/t-slibgcc-sld (SHLIB_MAPFILES): Likewise. * libgcc-std.ver: Remove. * Makefile.in (srcdirify): Handle $$(libgcc_objdir). * config/frv/t-linux (SHLIB_MAPFILES): Use $$(libgcc_objdir) for libgcc-std.ver. * config/i386/t-linux (SHLIB_MAPFILES): Likewise. * config/mips/t-slibgcc-irix (SHLIB_MAPFILES): Likewise. * config/rs6000/t-aix43 (SHLIB_MAPFILES): Likewise. * config/rs6000/t-aix52 (SHLIB_MAPFILES): Likewise. * config/sparc/t-linux (SHLIB_MAPFILES): Likewise. * config/i386/t-linux (SHLIB_MAPFILES): Likewise. * config/i386/t-linux (SHLIB_MAPFILES): Likewise. * config/fixed-bit.h (FIXED_OP): Define differently depending on LIBGCC2_GNU_PREFIX. All uses changed not to pass leading underscores. (FIXED_CONVERT_OP, FIXED_CONVERT_OP2): Likewise. libgcc/ * libgcc-std.ver.in: New file. * Makefile.in (LIBGCC_VER_GNU_PREFIX, LIBGCC_VER_SYMBOLS_PREFIX): New variables. (libgcc-std.ver): New rule. * config/t-gnu-prefix: New file. Index: trunk/gcc/libgcc2.h =================================================================== --- trunk.orig/gcc/libgcc2.h +++ trunk/gcc/libgcc2.h @@ -193,8 +193,13 @@ typedef int shift_count_type __attribute #define UHWtype UDItype #define DWtype TItype #define UDWtype UTItype +#ifdef LIBGCC2_GNU_PREFIX +#define __NW(a,b) __gnu_ ## a ## di ## b +#define __NDW(a,b) __gnu_ ## a ## ti ## b +#else #define __NW(a,b) __ ## a ## di ## b #define __NDW(a,b) __ ## a ## ti ## b +#endif #define COMPAT_SIMODE_TRAPPING_ARITHMETIC #elif LIBGCC2_UNITS_PER_WORD == 4 #define W_TYPE_SIZE (4 * BITS_PER_UNIT) @@ -204,8 +209,13 @@ typedef int shift_count_type __attribute #define UHWtype USItype #define DWtype DItype #define UDWtype UDItype +#ifdef LIBGCC2_GNU_PREFIX +#define __NW(a,b) __gnu_ ## a ## si ## b +#define __NDW(a,b) __gnu_ ## a ## di ## b +#else #define __NW(a,b) __ ## a ## si ## b #define __NDW(a,b) __ ## a ## di ## b +#endif #elif LIBGCC2_UNITS_PER_WORD == 2 #define W_TYPE_SIZE (2 * BITS_PER_UNIT) #define Wtype HItype @@ -214,8 +224,13 @@ typedef int shift_count_type __attribute #define UHWtype UHItype #define DWtype SItype #define UDWtype USItype +#ifdef LIBGCC2_GNU_PREFIX +#define __NW(a,b) __gnu_ ## a ## hi ## b +#define __NDW(a,b) __gnu_ ## a ## si ## b +#else #define __NW(a,b) __ ## a ## hi ## b #define __NDW(a,b) __ ## a ## si ## b +#endif #else #define W_TYPE_SIZE BITS_PER_UNIT #define Wtype QItype @@ -224,10 +239,20 @@ typedef int shift_count_type __attribute #define UHWtype UQItype #define DWtype HItype #define UDWtype UHItype +#ifdef LIBGCC2_GNU_PREFIX +#define __NW(a,b) __gnu_ ## a ## qi ## b +#define __NDW(a,b) __gnu_ ## a ## hi ## b +#else #define __NW(a,b) __ ## a ## qi ## b #define __NDW(a,b) __ ## a ## hi ## b #endif +#endif +#ifdef LIBGCC2_GNU_PREFIX +#define __N(a) __gnu_ ## a +#else +#define __N(a) __ ## a +#endif #define Wtype_MAX ((Wtype)(((UWtype)1 << (W_TYPE_SIZE - 1)) - 1)) #define Wtype_MIN (- Wtype_MAX - 1) @@ -298,6 +323,25 @@ typedef int shift_count_type __attribute #define __popcountDI2 __NDW(popcount,2) #define __parityDI2 __NDW(parity,2) +#define __clz_tab __N(clz_tab) +#define __powisf2 __N(powisf2) +#define __powidf2 __N(powidf2) +#define __powitf2 __N(powitf2) +#define __powixf2 __N(powixf2) +#define __bswapsi2 __N(bswapsi2) +#define __bswapdi2 __N(bswapdi2) +#define __mulsc3 __N(mulsc3) +#define __muldc3 __N(muldc3) +#define __mulxc3 __N(mulxc3) +#define __multc3 __N(multc3) +#define __divsc3 __N(divsc3) +#define __divdc3 __N(divdc3) +#define __divxc3 __N(divxc3) +#define __divtc3 __N(divtc3) +#define __udiv_w_sdiv __N(udiv_w_sdiv) +#define __clear_cache __N(clear_cache) +#define __enable_execute_stack __N(enable_execute_stack) + extern DWtype __muldi3 (DWtype, DWtype); extern DWtype __divdi3 (DWtype, DWtype); extern UDWtype __udivdi3 (UDWtype, UDWtype); @@ -347,6 +391,12 @@ extern DWtype __mulvDI3 (DWtype, DWtype) extern DWtype __negvDI2 (DWtype); #ifdef COMPAT_SIMODE_TRAPPING_ARITHMETIC +#define __absvsi2 __N(absvsi2) +#define __negvsi2 __N(negvsi2) +#define __addvsi3 __N(addvsi3) +#define __subvsi3 __N(subvsi3) +#define __mulvsi3 __N(mulvsi3) + extern SItype __absvsi2 (SItype); extern SItype __addvsi3 (SItype, SItype); extern SItype __subvsi3 (SItype, SItype); Index: trunk/gcc/target.def =================================================================== --- trunk.orig/gcc/target.def +++ trunk/gcc/target.def @@ -1258,6 +1258,16 @@ DEFHOOK void, (void), hook_void_void) + /* Add a __gnu_ prefix to library functions rather than just __. */ +DEFHOOKPOD +(libfunc_gnu_prefix, + "This hook can be used to override the default prefix given to library\n\ +routines. Normally, this is just two underscores, @code{__}, but\n\ +it if changed to true, then for example a name like @code{__gnu_muldi3}\n\ +is used instead of the default @code{__muldi3}. This applies only to\n\ +functions defined in @file{libgcc2.c}.", + bool, false) + /* Given a decl, a section name, and whether the decl initializer has relocs, choose attributes for the section. */ /* ??? Should be merged with SELECT_SECTION and UNIQUE_SECTION. */ Index: trunk/gcc/doc/tm.texi =================================================================== --- trunk.orig/gcc/doc/tm.texi +++ trunk/gcc/doc/tm.texi @@ -1588,6 +1588,15 @@ anyway. If you don't define this and @c is 128 then the default is 1, otherwise it is 0. @end defmac +@defmac LIBGCC2_GNU_PREFIX +This macro corresponds to the @code{TARGET_LIBFUNC_GNU_PREFIX} target +hook and should be defined if this hook is overriden to be true. It +causes function names in libgcc to be changed to use a @code{__gnu_} +prefix for their name rather than the default @code{__}. A port which +uses this macro should also arrange to use @file{t-gnu-prefix} in +the libgcc @file{config.host}. +@end defmac + @defmac SF_SIZE @defmacx DF_SIZE @defmacx XF_SIZE @@ -5260,6 +5269,14 @@ library routines. The default is to do nothing. Most ports don't need to define this hook. @end deftypefn +@deftypevr {Target Hook} bool TARGET_LIBFUNC_GNU_PREFIX +This hook can be used to override the default prefix given to library +routines. Normally, this is just two underscores, @code{__}, but +it if changed to true, then for example a name like @code{__gnu_muldi3} +is used instead of the default @code{__muldi3}. This applies only to +functions defined in @file{libgcc2.c}. +@end deftypevr + @defmac FLOAT_LIB_COMPARE_RETURNS_BOOL (@var{mode}, @var{comparison}) This macro should return @code{true} if the library routine that implements the floating point comparison operator @var{comparison} in Index: trunk/gcc/doc/tm.texi.in =================================================================== --- trunk.orig/gcc/doc/tm.texi.in +++ trunk/gcc/doc/tm.texi.in @@ -1578,6 +1578,15 @@ anyway. If you don't define this and @c is 128 then the default is 1, otherwise it is 0. @end defmac +@defmac LIBGCC2_GNU_PREFIX +This macro corresponds to the @code{TARGET_LIBFUNC_GNU_PREFIX} target +hook and should be defined if this hook is overriden to be true. It +causes function names in libgcc to be changed to use a @code{__gnu_} +prefix for their name rather than the default @code{__}. A port which +uses this macro should also arrange to use @file{t-gnu-prefix} in +the libgcc @file{config.host}. +@end defmac + @defmac SF_SIZE @defmacx DF_SIZE @defmacx XF_SIZE @@ -5208,6 +5217,8 @@ library routines. The default is to do nothing. Most ports don't need to define this hook. @end deftypefn +@hook TARGET_LIBFUNC_GNU_PREFIX + @defmac FLOAT_LIB_COMPARE_RETURNS_BOOL (@var{mode}, @var{comparison}) This macro should return @code{true} if the library routine that implements the floating point comparison operator @var{comparison} in Index: trunk/gcc/optabs.c =================================================================== --- trunk.orig/gcc/optabs.c +++ trunk/gcc/optabs.c @@ -5152,13 +5152,22 @@ gen_libfunc (optab optable, const char * unsigned opname_len = strlen (opname); const char *mname = GET_MODE_NAME (mode); unsigned mname_len = strlen (mname); - char *libfunc_name = XALLOCAVEC (char, 2 + opname_len + mname_len + 1 + 1); + int prefix_len = targetm.libfunc_gnu_prefix ? 6 : 2; + int len = prefix_len + opname_len + mname_len + 1 + 1; + char *libfunc_name = XALLOCAVEC (char, len); char *p; const char *q; p = libfunc_name; *p++ = '_'; *p++ = '_'; + if (targetm.libfunc_gnu_prefix) + { + *p++ = 'g'; + *p++ = 'n'; + *p++ = 'u'; + *p++ = '_'; + } for (q = opname; *q; ) *p++ = *q++; for (q = mname; *q; q++) @@ -5362,6 +5371,7 @@ gen_interclass_conv_libfunc (convert_opt const char *fname, *tname; const char *q; + int prefix_len = targetm.libfunc_gnu_prefix ? 6 : 2; char *libfunc_name, *suffix; char *nondec_name, *dec_name, *nondec_suffix, *dec_suffix; char *p; @@ -5372,11 +5382,19 @@ gen_interclass_conv_libfunc (convert_opt mname_len = strlen (GET_MODE_NAME (tmode)) + strlen (GET_MODE_NAME (fmode)); - nondec_name = XALLOCAVEC (char, 2 + opname_len + mname_len + 1 + 1); + nondec_name = XALLOCAVEC (char, prefix_len + opname_len + mname_len + 1 + 1); nondec_name[0] = '_'; nondec_name[1] = '_'; - memcpy (&nondec_name[2], opname, opname_len); - nondec_suffix = nondec_name + opname_len + 2; + if (targetm.libfunc_gnu_prefix) + { + nondec_name[2] = 'g'; + nondec_name[3] = 'n'; + nondec_name[4] = 'u'; + nondec_name[5] = '_'; + } + + memcpy (&nondec_name[prefix_len], opname, opname_len); + nondec_suffix = nondec_name + opname_len + prefix_len; dec_name = XALLOCAVEC (char, 2 + dec_len + opname_len + mname_len + 1 + 1); dec_name[0] = '_'; @@ -5487,6 +5505,7 @@ gen_intraclass_conv_libfunc (convert_opt const char *fname, *tname; const char *q; + int prefix_len = targetm.libfunc_gnu_prefix ? 6 : 2; char *nondec_name, *dec_name, *nondec_suffix, *dec_suffix; char *libfunc_name, *suffix; char *p; @@ -5500,8 +5519,15 @@ gen_intraclass_conv_libfunc (convert_opt nondec_name = XALLOCAVEC (char, 2 + opname_len + mname_len + 1 + 1); nondec_name[0] = '_'; nondec_name[1] = '_'; - memcpy (&nondec_name[2], opname, opname_len); - nondec_suffix = nondec_name + opname_len + 2; + if (targetm.libfunc_gnu_prefix) + { + nondec_name[2] = 'g'; + nondec_name[3] = 'n'; + nondec_name[4] = 'u'; + nondec_name[5] = '_'; + } + memcpy (&nondec_name[prefix_len], opname, opname_len); + nondec_suffix = nondec_name + opname_len + prefix_len; dec_name = XALLOCAVEC (char, 2 + dec_len + opname_len + mname_len + 1 + 1); dec_name[0] = '_'; @@ -6231,8 +6257,16 @@ init_optabs (void) /* Explicitly initialize the bswap libfuncs since we need them to be valid for things other than word_mode. */ - set_optab_libfunc (bswap_optab, SImode, "__bswapsi2"); - set_optab_libfunc (bswap_optab, DImode, "__bswapdi2"); + if (targetm.libfunc_gnu_prefix) + { + set_optab_libfunc (bswap_optab, SImode, "__gnu_bswapsi2"); + set_optab_libfunc (bswap_optab, DImode, "__gnu_bswapdi2"); + } + else + { + set_optab_libfunc (bswap_optab, SImode, "__bswapsi2"); + set_optab_libfunc (bswap_optab, DImode, "__bswapdi2"); + } /* Use cabs for double complex abs, since systems generally have cabs. Don't define any libcall for float complex, so that cabs will be used. */ Index: trunk/gcc/config/t-slibgcc-elf-ver =================================================================== --- trunk.orig/gcc/config/t-slibgcc-elf-ver +++ trunk/gcc/config/t-slibgcc-elf-ver @@ -53,4 +53,4 @@ SHLIB_INSTALL = \ rm -f $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK); \ $(SHLIB_INSTALL_SOLINK) SHLIB_MKMAP = $(srcdir)/mkmap-symver.awk -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver Index: trunk/gcc/config/t-slibgcc-sld =================================================================== --- trunk.orig/gcc/config/t-slibgcc-sld +++ trunk/gcc/config/t-slibgcc-sld @@ -47,4 +47,4 @@ SHLIB_INSTALL = \ $(LN_S) $(SHLIB_SONAME) \ $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK) SHLIB_MKMAP = $(srcdir)/mkmap-symver.awk -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver +SHLIB_MAPFILES = $(libgcc_objdir)/libgcc-std.ver Index: trunk/gcc/libgcc-std.ver =================================================================== --- trunk.orig/gcc/libgcc-std.ver +++ /dev/null @@ -1,1921 +0,0 @@ -# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, -# 2008, 2010 Free Software Foundation, Inc. -# -# This file is part of GCC. -# -# GCC is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3, or (at your option) -# any later version. -# -# GCC is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GCC; see the file COPYING3. If not see -# . - -GCC_3.0 { - # libgcc1 integer symbols - __absvsi2 - __addvsi3 - __ashlsi3 - __ashrsi3 - __divsi3 - __lshrsi3 - __modsi3 - __mulsi3 - __mulvsi3 - __negvsi2 - __subvsi3 - __udivsi3 - __umodsi3 - - # libgcc1 floating point symbols - __addsf3 - __adddf3 - __addxf3 - __addtf3 - __divsf3 - __divdf3 - __divxf3 - __divtf3 - __eqsf2 - __eqdf2 - __eqxf2 - __eqtf2 - __extenddfxf2 - __extenddftf2 - __extendsfdf2 - __extendsfxf2 - __extendsftf2 - __fixsfsi - __fixdfsi - __fixxfsi - __fixtfsi - __floatsisf - __floatsidf - __floatsixf - __floatsitf - __gesf2 - __gedf2 - __gexf2 - __getf2 - __gtsf2 - __gtdf2 - __gtxf2 - __gttf2 - __lesf2 - __ledf2 - __lexf2 - __letf2 - __ltsf2 - __ltdf2 - __ltxf2 - __lttf2 - __mulsf3 - __muldf3 - __mulxf3 - __multf3 - __negsf2 - __negdf2 - __negxf2 - __negtf2 - __nesf2 - __nedf2 - __nexf2 - __netf2 - __subsf3 - __subdf3 - __subxf3 - __subtf3 - __truncdfsf2 - __truncxfsf2 - __trunctfsf2 - __truncxfdf2 - __trunctfdf2 - - # libgcc2 DImode arithmetic (for 32-bit targets). - __absvdi2 - __addvdi3 - __ashldi3 - __ashrdi3 - __cmpdi2 - __divdi3 - __ffsdi2 - __fixdfdi - __fixsfdi - __fixtfdi - __fixxfdi - __fixunsdfdi - __fixunsdfsi - __fixunssfsi - __fixunssfdi - __fixunstfdi - __fixunstfsi - __fixunsxfdi - __fixunsxfsi - __floatdidf - __floatdisf - __floatdixf - __floatditf - __lshrdi3 - __moddi3 - __muldi3 - __mulvdi3 - __negdi2 - __negvdi2 - __subvdi3 - __ucmpdi2 - __udivdi3 - __udivmoddi4 - __umoddi3 - - # libgcc2 TImode arithmetic (for 64-bit targets). - __ashlti3 - __ashrti3 - __cmpti2 - __divti3 - __ffsti2 - __fixdfti - __fixsfti - __fixtfti - __fixxfti - __lshrti3 - __modti3 - __multi3 - __negti2 - __ucmpti2 - __udivmodti4 - __udivti3 - __umodti3 - __fixunsdfti - __fixunssfti - __fixunstfti - __fixunsxfti - __floattidf - __floattisf - __floattixf - __floattitf - - # Used to deal with trampoline initialization on some platforms - __clear_cache - - # EH symbols - _Unwind_DeleteException - _Unwind_Find_FDE - _Unwind_ForcedUnwind - _Unwind_GetGR - _Unwind_GetIP - _Unwind_GetLanguageSpecificData - _Unwind_GetRegionStart - _Unwind_GetTextRelBase - _Unwind_GetDataRelBase - _Unwind_RaiseException - _Unwind_Resume - _Unwind_SetGR - _Unwind_SetIP - __deregister_frame - __deregister_frame_info - __deregister_frame_info_bases - __register_frame - __register_frame_info - __register_frame_info_bases - __register_frame_info_table - __register_frame_info_table_bases - __register_frame_table - - # SjLj EH symbols - _Unwind_SjLj_Register - _Unwind_SjLj_Unregister - _Unwind_SjLj_RaiseException - _Unwind_SjLj_ForcedUnwind - _Unwind_SjLj_Resume -} - -%inherit GCC_3.3 GCC_3.0 -GCC_3.3 { - _Unwind_FindEnclosingFunction - _Unwind_GetCFA - _Unwind_Backtrace - _Unwind_Resume_or_Rethrow - _Unwind_SjLj_Resume_or_Rethrow -} - -%inherit GCC_3.3.1 GCC_3.3 -GCC_3.3.1 { - __gcc_personality_sj0 - __gcc_personality_v0 -} - -%inherit GCC_3.3.2 GCC_3.3.1 -GCC_3.3.2 { -} - -%inherit GCC_3.3.4 GCC_3.3.2 -GCC_3.3.4 { - __unorddf2 - __unordsf2 -} - -%inherit GCC_3.4 GCC_3.3.4 -GCC_3.4 { - # bit scanning and counting built-ins - __clzsi2 - __clzdi2 - __clzti2 - __ctzsi2 - __ctzdi2 - __ctzti2 - __popcountsi2 - __popcountdi2 - __popcountti2 - __paritysi2 - __paritydi2 - __parityti2 -} - -%inherit GCC_3.4.2 GCC_3.4 -GCC_3.4.2 { - # Used to deal with trampoline initialization on some platforms - __enable_execute_stack - __trampoline_setup -} - -%inherit GCC_3.4.4 GCC_3.4.2 -GCC_3.4.4 { - # libgcc2 TImode arithmetic (for 64-bit targets). - __absvti2 - __addvti3 - __mulvti3 - __negvti2 - __subvti3 -} - -%inherit GCC_4.0.0 GCC_3.4.4 -GCC_4.0.0 { - # libgcc2 __builtin_powi helpers. - __powisf2 - __powidf2 - __powixf2 - __powitf2 - - # c99 compliant complex arithmetic - __divsc3 - __divdc3 - __divxc3 - __divtc3 - __mulsc3 - __muldc3 - __mulxc3 - __multc3 -} - -%inherit GCC_4.1.0 GCC_4.0.0 -GCC_4.1.0 { -} - -%inherit GCC_4.2.0 GCC_4.1.0 -GCC_4.2.0 { - # unsigned-to-floating conversions - __floatunsisf - __floatunsidf - __floatunsixf - __floatunsitf - __floatundidf - __floatundisf - __floatundixf - __floatunditf - __floatuntidf - __floatuntisf - __floatuntixf - __floatuntitf - _Unwind_GetIPInfo -} - -%inherit GCC_4.3.0 GCC_4.2.0 -GCC_4.3.0 { - # byte swapping routines - __bswapsi2 - __bswapdi2 - __emutls_get_address - __emutls_register_common - __ffssi2 - __extendxftf2 - __trunctfxf2 - - # fixed-point routines - __addqq3 - __addhq3 - __addsq3 - __adddq3 - __addtq3 - __adduqq3 - __adduhq3 - __addusq3 - __addudq3 - __addutq3 - __addha3 - __addsa3 - __addda3 - __addta3 - __adduha3 - __addusa3 - __adduda3 - __adduta3 - __ssaddqq3 - __ssaddhq3 - __ssaddsq3 - __ssadddq3 - __ssaddtq3 - __ssaddha3 - __ssaddsa3 - __ssaddda3 - __ssaddta3 - __usadduqq3 - __usadduhq3 - __usaddusq3 - __usaddudq3 - __usaddutq3 - __usadduha3 - __usaddusa3 - __usadduda3 - __usadduta3 - __subqq3 - __subhq3 - __subsq3 - __subdq3 - __subtq3 - __subuqq3 - __subuhq3 - __subusq3 - __subudq3 - __subutq3 - __subha3 - __subsa3 - __subda3 - __subta3 - __subuha3 - __subusa3 - __subuda3 - __subuta3 - __sssubqq3 - __sssubhq3 - __sssubsq3 - __sssubdq3 - __sssubtq3 - __sssubha3 - __sssubsa3 - __sssubda3 - __sssubta3 - __ussubuqq3 - __ussubuhq3 - __ussubusq3 - __ussubudq3 - __ussubutq3 - __ussubuha3 - __ussubusa3 - __ussubuda3 - __ussubuta3 - __mulqq3 - __mulhq3 - __mulsq3 - __muldq3 - __multq3 - __muluqq3 - __muluhq3 - __mulusq3 - __muludq3 - __mulutq3 - __mulha3 - __mulsa3 - __mulda3 - __multa3 - __muluha3 - __mulusa3 - __muluda3 - __muluta3 - __ssmulqq3 - __ssmulhq3 - __ssmulsq3 - __ssmuldq3 - __ssmultq3 - __ssmulha3 - __ssmulsa3 - __ssmulda3 - __ssmulta3 - __usmuluqq3 - __usmuluhq3 - __usmulusq3 - __usmuludq3 - __usmulutq3 - __usmuluha3 - __usmulusa3 - __usmuluda3 - __usmuluta3 - __divqq3 - __divhq3 - __divsq3 - __divdq3 - __divtq3 - __divha3 - __divsa3 - __divda3 - __divta3 - __udivuqq3 - __udivuhq3 - __udivusq3 - __udivudq3 - __udivutq3 - __udivuha3 - __udivusa3 - __udivuda3 - __udivuta3 - __ssdivqq3 - __ssdivhq3 - __ssdivsq3 - __ssdivdq3 - __ssdivtq3 - __ssdivha3 - __ssdivsa3 - __ssdivda3 - __ssdivta3 - __usdivuqq3 - __usdivuhq3 - __usdivusq3 - __usdivudq3 - __usdivutq3 - __usdivuha3 - __usdivusa3 - __usdivuda3 - __usdivuta3 - __negqq2 - __neghq2 - __negsq2 - __negdq2 - __negtq2 - __neguqq2 - __neguhq2 - __negusq2 - __negudq2 - __negutq2 - __negha2 - __negsa2 - __negda2 - __negta2 - __neguha2 - __negusa2 - __neguda2 - __neguta2 - __ssnegqq2 - __ssneghq2 - __ssnegsq2 - __ssnegdq2 - __ssnegtq2 - __ssnegha2 - __ssnegsa2 - __ssnegda2 - __ssnegta2 - __usneguqq2 - __usneguhq2 - __usnegusq2 - __usnegudq2 - __usnegutq2 - __usneguha2 - __usnegusa2 - __usneguda2 - __usneguta2 - __ashlqq3 - __ashlhq3 - __ashlsq3 - __ashldq3 - __ashltq3 - __ashluqq3 - __ashluhq3 - __ashlusq3 - __ashludq3 - __ashlutq3 - __ashlha3 - __ashlsa3 - __ashlda3 - __ashlta3 - __ashluha3 - __ashlusa3 - __ashluda3 - __ashluta3 - __ashrqq3 - __ashrhq3 - __ashrsq3 - __ashrdq3 - __ashrtq3 - __ashrha3 - __ashrsa3 - __ashrda3 - __ashrta3 - __lshruqq3 - __lshruhq3 - __lshrusq3 - __lshrudq3 - __lshrutq3 - __lshruha3 - __lshrusa3 - __lshruda3 - __lshruta3 - __ssashlqq3 - __ssashlhq3 - __ssashlsq3 - __ssashldq3 - __ssashltq3 - __ssashlha3 - __ssashlsa3 - __ssashlda3 - __ssashlta3 - __usashluqq3 - __usashluhq3 - __usashlusq3 - __usashludq3 - __usashlutq3 - __usashluha3 - __usashlusa3 - __usashluda3 - __usashluta3 - __cmpqq2 - __cmphq2 - __cmpsq2 - __cmpdq2 - __cmptq2 - __cmpuqq2 - __cmpuhq2 - __cmpusq2 - __cmpudq2 - __cmputq2 - __cmpha2 - __cmpsa2 - __cmpda2 - __cmpta2 - __cmpuha2 - __cmpusa2 - __cmpuda2 - __cmputa2 - __fractqqhq2 - __fractqqsq2 - __fractqqdq2 - __fractqqtq2 - __fractqqha - __fractqqsa - __fractqqda - __fractqqta - __fractqquqq - __fractqquhq - __fractqqusq - __fractqqudq - __fractqqutq - __fractqquha - __fractqqusa - __fractqquda - __fractqquta - __fractqqqi - __fractqqhi - __fractqqsi - __fractqqdi - __fractqqti - __fractqqsf - __fractqqdf - __fracthqqq2 - __fracthqsq2 - __fracthqdq2 - __fracthqtq2 - __fracthqha - __fracthqsa - __fracthqda - __fracthqta - __fracthquqq - __fracthquhq - __fracthqusq - __fracthqudq - __fracthqutq - __fracthquha - __fracthqusa - __fracthquda - __fracthquta - __fracthqqi - __fracthqhi - __fracthqsi - __fracthqdi - __fracthqti - __fracthqsf - __fracthqdf - __fractsqqq2 - __fractsqhq2 - __fractsqdq2 - __fractsqtq2 - __fractsqha - __fractsqsa - __fractsqda - __fractsqta - __fractsquqq - __fractsquhq - __fractsqusq - __fractsqudq - __fractsqutq - __fractsquha - __fractsqusa - __fractsquda - __fractsquta - __fractsqqi - __fractsqhi - __fractsqsi - __fractsqdi - __fractsqti - __fractsqsf - __fractsqdf - __fractdqqq2 - __fractdqhq2 - __fractdqsq2 - __fractdqtq2 - __fractdqha - __fractdqsa - __fractdqda - __fractdqta - __fractdquqq - __fractdquhq - __fractdqusq - __fractdqudq - __fractdqutq - __fractdquha - __fractdqusa - __fractdquda - __fractdquta - __fractdqqi - __fractdqhi - __fractdqsi - __fractdqdi - __fractdqti - __fractdqsf - __fractdqdf - __fracttqqq2 - __fracttqhq2 - __fracttqsq2 - __fracttqdq2 - __fracttqha - __fracttqsa - __fracttqda - __fracttqta - __fracttquqq - __fracttquhq - __fracttqusq - __fracttqudq - __fracttqutq - __fracttquha - __fracttqusa - __fracttquda - __fracttquta - __fracttqqi - __fracttqhi - __fracttqsi - __fracttqdi - __fracttqti - __fracttqsf - __fracttqdf - __fracthaqq - __fracthahq - __fracthasq - __fracthadq - __fracthatq - __fracthasa2 - __fracthada2 - __fracthata2 - __fracthauqq - __fracthauhq - __fracthausq - __fracthaudq - __fracthautq - __fracthauha - __fracthausa - __fracthauda - __fracthauta - __fracthaqi - __fracthahi - __fracthasi - __fracthadi - __fracthati - __fracthasf - __fracthadf - __fractsaqq - __fractsahq - __fractsasq - __fractsadq - __fractsatq - __fractsaha2 - __fractsada2 - __fractsata2 - __fractsauqq - __fractsauhq - __fractsausq - __fractsaudq - __fractsautq - __fractsauha - __fractsausa - __fractsauda - __fractsauta - __fractsaqi - __fractsahi - __fractsasi - __fractsadi - __fractsati - __fractsasf - __fractsadf - __fractdaqq - __fractdahq - __fractdasq - __fractdadq - __fractdatq - __fractdaha2 - __fractdasa2 - __fractdata2 - __fractdauqq - __fractdauhq - __fractdausq - __fractdaudq - __fractdautq - __fractdauha - __fractdausa - __fractdauda - __fractdauta - __fractdaqi - __fractdahi - __fractdasi - __fractdadi - __fractdati - __fractdasf - __fractdadf - __fracttaqq - __fracttahq - __fracttasq - __fracttadq - __fracttatq - __fracttaha2 - __fracttasa2 - __fracttada2 - __fracttauqq - __fracttauhq - __fracttausq - __fracttaudq - __fracttautq - __fracttauha - __fracttausa - __fracttauda - __fracttauta - __fracttaqi - __fracttahi - __fracttasi - __fracttadi - __fracttati - __fracttasf - __fracttadf - __fractuqqqq - __fractuqqhq - __fractuqqsq - __fractuqqdq - __fractuqqtq - __fractuqqha - __fractuqqsa - __fractuqqda - __fractuqqta - __fractuqquhq2 - __fractuqqusq2 - __fractuqqudq2 - __fractuqqutq2 - __fractuqquha - __fractuqqusa - __fractuqquda - __fractuqquta - __fractuqqqi - __fractuqqhi - __fractuqqsi - __fractuqqdi - __fractuqqti - __fractuqqsf - __fractuqqdf - __fractuhqqq - __fractuhqhq - __fractuhqsq - __fractuhqdq - __fractuhqtq - __fractuhqha - __fractuhqsa - __fractuhqda - __fractuhqta - __fractuhquqq2 - __fractuhqusq2 - __fractuhqudq2 - __fractuhqutq2 - __fractuhquha - __fractuhqusa - __fractuhquda - __fractuhquta - __fractuhqqi - __fractuhqhi - __fractuhqsi - __fractuhqdi - __fractuhqti - __fractuhqsf - __fractuhqdf - __fractusqqq - __fractusqhq - __fractusqsq - __fractusqdq - __fractusqtq - __fractusqha - __fractusqsa - __fractusqda - __fractusqta - __fractusquqq2 - __fractusquhq2 - __fractusqudq2 - __fractusqutq2 - __fractusquha - __fractusqusa - __fractusquda - __fractusquta - __fractusqqi - __fractusqhi - __fractusqsi - __fractusqdi - __fractusqti - __fractusqsf - __fractusqdf - __fractudqqq - __fractudqhq - __fractudqsq - __fractudqdq - __fractudqtq - __fractudqha - __fractudqsa - __fractudqda - __fractudqta - __fractudquqq2 - __fractudquhq2 - __fractudqusq2 - __fractudqutq2 - __fractudquha - __fractudqusa - __fractudquda - __fractudquta - __fractudqqi - __fractudqhi - __fractudqsi - __fractudqdi - __fractudqti - __fractudqsf - __fractudqdf - __fractutqqq - __fractutqhq - __fractutqsq - __fractutqdq - __fractutqtq - __fractutqha - __fractutqsa - __fractutqda - __fractutqta - __fractutquqq2 - __fractutquhq2 - __fractutqusq2 - __fractutqudq2 - __fractutquha - __fractutqusa - __fractutquda - __fractutquta - __fractutqqi - __fractutqhi - __fractutqsi - __fractutqdi - __fractutqti - __fractutqsf - __fractutqdf - __fractuhaqq - __fractuhahq - __fractuhasq - __fractuhadq - __fractuhatq - __fractuhaha - __fractuhasa - __fractuhada - __fractuhata - __fractuhauqq - __fractuhauhq - __fractuhausq - __fractuhaudq - __fractuhautq - __fractuhausa2 - __fractuhauda2 - __fractuhauta2 - __fractuhaqi - __fractuhahi - __fractuhasi - __fractuhadi - __fractuhati - __fractuhasf - __fractuhadf - __fractusaqq - __fractusahq - __fractusasq - __fractusadq - __fractusatq - __fractusaha - __fractusasa - __fractusada - __fractusata - __fractusauqq - __fractusauhq - __fractusausq - __fractusaudq - __fractusautq - __fractusauha2 - __fractusauda2 - __fractusauta2 - __fractusaqi - __fractusahi - __fractusasi - __fractusadi - __fractusati - __fractusasf - __fractusadf - __fractudaqq - __fractudahq - __fractudasq - __fractudadq - __fractudatq - __fractudaha - __fractudasa - __fractudada - __fractudata - __fractudauqq - __fractudauhq - __fractudausq - __fractudaudq - __fractudautq - __fractudauha2 - __fractudausa2 - __fractudauta2 - __fractudaqi - __fractudahi - __fractudasi - __fractudadi - __fractudati - __fractudasf - __fractudadf - __fractutaqq - __fractutahq - __fractutasq - __fractutadq - __fractutatq - __fractutaha - __fractutasa - __fractutada - __fractutata - __fractutauqq - __fractutauhq - __fractutausq - __fractutaudq - __fractutautq - __fractutauha2 - __fractutausa2 - __fractutauda2 - __fractutaqi - __fractutahi - __fractutasi - __fractutadi - __fractutati - __fractutasf - __fractutadf - __fractqiqq - __fractqihq - __fractqisq - __fractqidq - __fractqitq - __fractqiha - __fractqisa - __fractqida - __fractqita - __fractqiuqq - __fractqiuhq - __fractqiusq - __fractqiudq - __fractqiutq - __fractqiuha - __fractqiusa - __fractqiuda - __fractqiuta - __fracthiqq - __fracthihq - __fracthisq - __fracthidq - __fracthitq - __fracthiha - __fracthisa - __fracthida - __fracthita - __fracthiuqq - __fracthiuhq - __fracthiusq - __fracthiudq - __fracthiutq - __fracthiuha - __fracthiusa - __fracthiuda - __fracthiuta - __fractsiqq - __fractsihq - __fractsisq - __fractsidq - __fractsitq - __fractsiha - __fractsisa - __fractsida - __fractsita - __fractsiuqq - __fractsiuhq - __fractsiusq - __fractsiudq - __fractsiutq - __fractsiuha - __fractsiusa - __fractsiuda - __fractsiuta - __fractdiqq - __fractdihq - __fractdisq - __fractdidq - __fractditq - __fractdiha - __fractdisa - __fractdida - __fractdita - __fractdiuqq - __fractdiuhq - __fractdiusq - __fractdiudq - __fractdiutq - __fractdiuha - __fractdiusa - __fractdiuda - __fractdiuta - __fracttiqq - __fracttihq - __fracttisq - __fracttidq - __fracttitq - __fracttiha - __fracttisa - __fracttida - __fracttita - __fracttiuqq - __fracttiuhq - __fracttiusq - __fracttiudq - __fracttiutq - __fracttiuha - __fracttiusa - __fracttiuda - __fracttiuta - __fractsfqq - __fractsfhq - __fractsfsq - __fractsfdq - __fractsftq - __fractsfha - __fractsfsa - __fractsfda - __fractsfta - __fractsfuqq - __fractsfuhq - __fractsfusq - __fractsfudq - __fractsfutq - __fractsfuha - __fractsfusa - __fractsfuda - __fractsfuta - __fractdfqq - __fractdfhq - __fractdfsq - __fractdfdq - __fractdftq - __fractdfha - __fractdfsa - __fractdfda - __fractdfta - __fractdfuqq - __fractdfuhq - __fractdfusq - __fractdfudq - __fractdfutq - __fractdfuha - __fractdfusa - __fractdfuda - __fractdfuta - __satfractqqhq2 - __satfractqqsq2 - __satfractqqdq2 - __satfractqqtq2 - __satfractqqha - __satfractqqsa - __satfractqqda - __satfractqqta - __satfractqquqq - __satfractqquhq - __satfractqqusq - __satfractqqudq - __satfractqqutq - __satfractqquha - __satfractqqusa - __satfractqquda - __satfractqquta - __satfracthqqq2 - __satfracthqsq2 - __satfracthqdq2 - __satfracthqtq2 - __satfracthqha - __satfracthqsa - __satfracthqda - __satfracthqta - __satfracthquqq - __satfracthquhq - __satfracthqusq - __satfracthqudq - __satfracthqutq - __satfracthquha - __satfracthqusa - __satfracthquda - __satfracthquta - __satfractsqqq2 - __satfractsqhq2 - __satfractsqdq2 - __satfractsqtq2 - __satfractsqha - __satfractsqsa - __satfractsqda - __satfractsqta - __satfractsquqq - __satfractsquhq - __satfractsqusq - __satfractsqudq - __satfractsqutq - __satfractsquha - __satfractsqusa - __satfractsquda - __satfractsquta - __satfractdqqq2 - __satfractdqhq2 - __satfractdqsq2 - __satfractdqtq2 - __satfractdqha - __satfractdqsa - __satfractdqda - __satfractdqta - __satfractdquqq - __satfractdquhq - __satfractdqusq - __satfractdqudq - __satfractdqutq - __satfractdquha - __satfractdqusa - __satfractdquda - __satfractdquta - __satfracttqqq2 - __satfracttqhq2 - __satfracttqsq2 - __satfracttqdq2 - __satfracttqha - __satfracttqsa - __satfracttqda - __satfracttqta - __satfracttquqq - __satfracttquhq - __satfracttqusq - __satfracttqudq - __satfracttqutq - __satfracttquha - __satfracttqusa - __satfracttquda - __satfracttquta - __satfracthaqq - __satfracthahq - __satfracthasq - __satfracthadq - __satfracthatq - __satfracthasa2 - __satfracthada2 - __satfracthata2 - __satfracthauqq - __satfracthauhq - __satfracthausq - __satfracthaudq - __satfracthautq - __satfracthauha - __satfracthausa - __satfracthauda - __satfracthauta - __satfractsaqq - __satfractsahq - __satfractsasq - __satfractsadq - __satfractsatq - __satfractsaha2 - __satfractsada2 - __satfractsata2 - __satfractsauqq - __satfractsauhq - __satfractsausq - __satfractsaudq - __satfractsautq - __satfractsauha - __satfractsausa - __satfractsauda - __satfractsauta - __satfractdaqq - __satfractdahq - __satfractdasq - __satfractdadq - __satfractdatq - __satfractdaha2 - __satfractdasa2 - __satfractdata2 - __satfractdauqq - __satfractdauhq - __satfractdausq - __satfractdaudq - __satfractdautq - __satfractdauha - __satfractdausa - __satfractdauda - __satfractdauta - __satfracttaqq - __satfracttahq - __satfracttasq - __satfracttadq - __satfracttatq - __satfracttaha2 - __satfracttasa2 - __satfracttada2 - __satfracttauqq - __satfracttauhq - __satfracttausq - __satfracttaudq - __satfracttautq - __satfracttauha - __satfracttausa - __satfracttauda - __satfracttauta - __satfractuqqqq - __satfractuqqhq - __satfractuqqsq - __satfractuqqdq - __satfractuqqtq - __satfractuqqha - __satfractuqqsa - __satfractuqqda - __satfractuqqta - __satfractuqquhq2 - __satfractuqqusq2 - __satfractuqqudq2 - __satfractuqqutq2 - __satfractuqquha - __satfractuqqusa - __satfractuqquda - __satfractuqquta - __satfractuhqqq - __satfractuhqhq - __satfractuhqsq - __satfractuhqdq - __satfractuhqtq - __satfractuhqha - __satfractuhqsa - __satfractuhqda - __satfractuhqta - __satfractuhquqq2 - __satfractuhqusq2 - __satfractuhqudq2 - __satfractuhqutq2 - __satfractuhquha - __satfractuhqusa - __satfractuhquda - __satfractuhquta - __satfractusqqq - __satfractusqhq - __satfractusqsq - __satfractusqdq - __satfractusqtq - __satfractusqha - __satfractusqsa - __satfractusqda - __satfractusqta - __satfractusquqq2 - __satfractusquhq2 - __satfractusqudq2 - __satfractusqutq2 - __satfractusquha - __satfractusqusa - __satfractusquda - __satfractusquta - __satfractudqqq - __satfractudqhq - __satfractudqsq - __satfractudqdq - __satfractudqtq - __satfractudqha - __satfractudqsa - __satfractudqda - __satfractudqta - __satfractudquqq2 - __satfractudquhq2 - __satfractudqusq2 - __satfractudqutq2 - __satfractudquha - __satfractudqusa - __satfractudquda - __satfractudquta - __satfractutqqq - __satfractutqhq - __satfractutqsq - __satfractutqdq - __satfractutqtq - __satfractutqha - __satfractutqsa - __satfractutqda - __satfractutqta - __satfractutquqq2 - __satfractutquhq2 - __satfractutqusq2 - __satfractutqudq2 - __satfractutquha - __satfractutqusa - __satfractutquda - __satfractutquta - __satfractuhaqq - __satfractuhahq - __satfractuhasq - __satfractuhadq - __satfractuhatq - __satfractuhaha - __satfractuhasa - __satfractuhada - __satfractuhata - __satfractuhauqq - __satfractuhauhq - __satfractuhausq - __satfractuhaudq - __satfractuhautq - __satfractuhausa2 - __satfractuhauda2 - __satfractuhauta2 - __satfractusaqq - __satfractusahq - __satfractusasq - __satfractusadq - __satfractusatq - __satfractusaha - __satfractusasa - __satfractusada - __satfractusata - __satfractusauqq - __satfractusauhq - __satfractusausq - __satfractusaudq - __satfractusautq - __satfractusauha2 - __satfractusauda2 - __satfractusauta2 - __satfractudaqq - __satfractudahq - __satfractudasq - __satfractudadq - __satfractudatq - __satfractudaha - __satfractudasa - __satfractudada - __satfractudata - __satfractudauqq - __satfractudauhq - __satfractudausq - __satfractudaudq - __satfractudautq - __satfractudauha2 - __satfractudausa2 - __satfractudauta2 - __satfractutaqq - __satfractutahq - __satfractutasq - __satfractutadq - __satfractutatq - __satfractutaha - __satfractutasa - __satfractutada - __satfractutata - __satfractutauqq - __satfractutauhq - __satfractutausq - __satfractutaudq - __satfractutautq - __satfractutauha2 - __satfractutausa2 - __satfractutauda2 - __satfractqiqq - __satfractqihq - __satfractqisq - __satfractqidq - __satfractqitq - __satfractqiha - __satfractqisa - __satfractqida - __satfractqita - __satfractqiuqq - __satfractqiuhq - __satfractqiusq - __satfractqiudq - __satfractqiutq - __satfractqiuha - __satfractqiusa - __satfractqiuda - __satfractqiuta - __satfracthiqq - __satfracthihq - __satfracthisq - __satfracthidq - __satfracthitq - __satfracthiha - __satfracthisa - __satfracthida - __satfracthita - __satfracthiuqq - __satfracthiuhq - __satfracthiusq - __satfracthiudq - __satfracthiutq - __satfracthiuha - __satfracthiusa - __satfracthiuda - __satfracthiuta - __satfractsiqq - __satfractsihq - __satfractsisq - __satfractsidq - __satfractsitq - __satfractsiha - __satfractsisa - __satfractsida - __satfractsita - __satfractsiuqq - __satfractsiuhq - __satfractsiusq - __satfractsiudq - __satfractsiutq - __satfractsiuha - __satfractsiusa - __satfractsiuda - __satfractsiuta - __satfractdiqq - __satfractdihq - __satfractdisq - __satfractdidq - __satfractditq - __satfractdiha - __satfractdisa - __satfractdida - __satfractdita - __satfractdiuqq - __satfractdiuhq - __satfractdiusq - __satfractdiudq - __satfractdiutq - __satfractdiuha - __satfractdiusa - __satfractdiuda - __satfractdiuta - __satfracttiqq - __satfracttihq - __satfracttisq - __satfracttidq - __satfracttitq - __satfracttiha - __satfracttisa - __satfracttida - __satfracttita - __satfracttiuqq - __satfracttiuhq - __satfracttiusq - __satfracttiudq - __satfracttiutq - __satfracttiuha - __satfracttiusa - __satfracttiuda - __satfracttiuta - __satfractsfqq - __satfractsfhq - __satfractsfsq - __satfractsfdq - __satfractsftq - __satfractsfha - __satfractsfsa - __satfractsfda - __satfractsfta - __satfractsfuqq - __satfractsfuhq - __satfractsfusq - __satfractsfudq - __satfractsfutq - __satfractsfuha - __satfractsfusa - __satfractsfuda - __satfractsfuta - __satfractdfqq - __satfractdfhq - __satfractdfsq - __satfractdfdq - __satfractdftq - __satfractdfha - __satfractdfsa - __satfractdfda - __satfractdfta - __satfractdfuqq - __satfractdfuhq - __satfractdfusq - __satfractdfudq - __satfractdfutq - __satfractdfuha - __satfractdfusa - __satfractdfuda - __satfractdfuta - __fractunsqqqi - __fractunsqqhi - __fractunsqqsi - __fractunsqqdi - __fractunsqqti - __fractunshqqi - __fractunshqhi - __fractunshqsi - __fractunshqdi - __fractunshqti - __fractunssqqi - __fractunssqhi - __fractunssqsi - __fractunssqdi - __fractunssqti - __fractunsdqqi - __fractunsdqhi - __fractunsdqsi - __fractunsdqdi - __fractunsdqti - __fractunstqqi - __fractunstqhi - __fractunstqsi - __fractunstqdi - __fractunstqti - __fractunshaqi - __fractunshahi - __fractunshasi - __fractunshadi - __fractunshati - __fractunssaqi - __fractunssahi - __fractunssasi - __fractunssadi - __fractunssati - __fractunsdaqi - __fractunsdahi - __fractunsdasi - __fractunsdadi - __fractunsdati - __fractunstaqi - __fractunstahi - __fractunstasi - __fractunstadi - __fractunstati - __fractunsuqqqi - __fractunsuqqhi - __fractunsuqqsi - __fractunsuqqdi - __fractunsuqqti - __fractunsuhqqi - __fractunsuhqhi - __fractunsuhqsi - __fractunsuhqdi - __fractunsuhqti - __fractunsusqqi - __fractunsusqhi - __fractunsusqsi - __fractunsusqdi - __fractunsusqti - __fractunsudqqi - __fractunsudqhi - __fractunsudqsi - __fractunsudqdi - __fractunsudqti - __fractunsutqqi - __fractunsutqhi - __fractunsutqsi - __fractunsutqdi - __fractunsutqti - __fractunsuhaqi - __fractunsuhahi - __fractunsuhasi - __fractunsuhadi - __fractunsuhati - __fractunsusaqi - __fractunsusahi - __fractunsusasi - __fractunsusadi - __fractunsusati - __fractunsudaqi - __fractunsudahi - __fractunsudasi - __fractunsudadi - __fractunsudati - __fractunsutaqi - __fractunsutahi - __fractunsutasi - __fractunsutadi - __fractunsutati - __fractunsqiqq - __fractunsqihq - __fractunsqisq - __fractunsqidq - __fractunsqitq - __fractunsqiha - __fractunsqisa - __fractunsqida - __fractunsqita - __fractunsqiuqq - __fractunsqiuhq - __fractunsqiusq - __fractunsqiudq - __fractunsqiutq - __fractunsqiuha - __fractunsqiusa - __fractunsqiuda - __fractunsqiuta - __fractunshiqq - __fractunshihq - __fractunshisq - __fractunshidq - __fractunshitq - __fractunshiha - __fractunshisa - __fractunshida - __fractunshita - __fractunshiuqq - __fractunshiuhq - __fractunshiusq - __fractunshiudq - __fractunshiutq - __fractunshiuha - __fractunshiusa - __fractunshiuda - __fractunshiuta - __fractunssiqq - __fractunssihq - __fractunssisq - __fractunssidq - __fractunssitq - __fractunssiha - __fractunssisa - __fractunssida - __fractunssita - __fractunssiuqq - __fractunssiuhq - __fractunssiusq - __fractunssiudq - __fractunssiutq - __fractunssiuha - __fractunssiusa - __fractunssiuda - __fractunssiuta - __fractunsdiqq - __fractunsdihq - __fractunsdisq - __fractunsdidq - __fractunsditq - __fractunsdiha - __fractunsdisa - __fractunsdida - __fractunsdita - __fractunsdiuqq - __fractunsdiuhq - __fractunsdiusq - __fractunsdiudq - __fractunsdiutq - __fractunsdiuha - __fractunsdiusa - __fractunsdiuda - __fractunsdiuta - __fractunstiqq - __fractunstihq - __fractunstisq - __fractunstidq - __fractunstitq - __fractunstiha - __fractunstisa - __fractunstida - __fractunstita - __fractunstiuqq - __fractunstiuhq - __fractunstiusq - __fractunstiudq - __fractunstiutq - __fractunstiuha - __fractunstiusa - __fractunstiuda - __fractunstiuta - __satfractunsqiqq - __satfractunsqihq - __satfractunsqisq - __satfractunsqidq - __satfractunsqitq - __satfractunsqiha - __satfractunsqisa - __satfractunsqida - __satfractunsqita - __satfractunsqiuqq - __satfractunsqiuhq - __satfractunsqiusq - __satfractunsqiudq - __satfractunsqiutq - __satfractunsqiuha - __satfractunsqiusa - __satfractunsqiuda - __satfractunsqiuta - __satfractunshiqq - __satfractunshihq - __satfractunshisq - __satfractunshidq - __satfractunshitq - __satfractunshiha - __satfractunshisa - __satfractunshida - __satfractunshita - __satfractunshiuqq - __satfractunshiuhq - __satfractunshiusq - __satfractunshiudq - __satfractunshiutq - __satfractunshiuha - __satfractunshiusa - __satfractunshiuda - __satfractunshiuta - __satfractunssiqq - __satfractunssihq - __satfractunssisq - __satfractunssidq - __satfractunssitq - __satfractunssiha - __satfractunssisa - __satfractunssida - __satfractunssita - __satfractunssiuqq - __satfractunssiuhq - __satfractunssiusq - __satfractunssiudq - __satfractunssiutq - __satfractunssiuha - __satfractunssiusa - __satfractunssiuda - __satfractunssiuta - __satfractunsdiqq - __satfractunsdihq - __satfractunsdisq - __satfractunsdidq - __satfractunsditq - __satfractunsdiha - __satfractunsdisa - __satfractunsdida - __satfractunsdita - __satfractunsdiuqq - __satfractunsdiuhq - __satfractunsdiusq - __satfractunsdiudq - __satfractunsdiutq - __satfractunsdiuha - __satfractunsdiusa - __satfractunsdiuda - __satfractunsdiuta - __satfractunstiqq - __satfractunstihq - __satfractunstisq - __satfractunstidq - __satfractunstitq - __satfractunstiha - __satfractunstisa - __satfractunstida - __satfractunstita - __satfractunstiuqq - __satfractunstiuhq - __satfractunstiusq - __satfractunstiudq - __satfractunstiutq - __satfractunstiuha - __satfractunstiusa - __satfractunstiuda - __satfractunstiuta -} - -%inherit GCC_4.4.0 GCC_4.3.0 -GCC_4.4.0 { - __sync_fetch_and_add_1 - __sync_fetch_and_sub_1 - __sync_fetch_and_or_1 - __sync_fetch_and_and_1 - __sync_fetch_and_xor_1 - __sync_fetch_and_nand_1 - __sync_add_and_fetch_1 - __sync_sub_and_fetch_1 - __sync_or_and_fetch_1 - __sync_and_and_fetch_1 - __sync_xor_and_fetch_1 - __sync_nand_and_fetch_1 - __sync_bool_compare_and_swap_1 - __sync_val_compare_and_swap_1 - __sync_lock_test_and_set_1 - - __sync_fetch_and_add_2 - __sync_fetch_and_sub_2 - __sync_fetch_and_or_2 - __sync_fetch_and_and_2 - __sync_fetch_and_xor_2 - __sync_fetch_and_nand_2 - __sync_add_and_fetch_2 - __sync_sub_and_fetch_2 - __sync_or_and_fetch_2 - __sync_and_and_fetch_2 - __sync_xor_and_fetch_2 - __sync_nand_and_fetch_2 - __sync_bool_compare_and_swap_2 - __sync_val_compare_and_swap_2 - __sync_lock_test_and_set_2 - - __sync_fetch_and_add_4 - __sync_fetch_and_sub_4 - __sync_fetch_and_or_4 - __sync_fetch_and_and_4 - __sync_fetch_and_xor_4 - __sync_fetch_and_nand_4 - __sync_add_and_fetch_4 - __sync_sub_and_fetch_4 - __sync_or_and_fetch_4 - __sync_and_and_fetch_4 - __sync_xor_and_fetch_4 - __sync_nand_and_fetch_4 - __sync_bool_compare_and_swap_4 - __sync_val_compare_and_swap_4 - __sync_lock_test_and_set_4 - - __sync_fetch_and_add_8 - __sync_fetch_and_sub_8 - __sync_fetch_and_or_8 - __sync_fetch_and_and_8 - __sync_fetch_and_xor_8 - __sync_fetch_and_nand_8 - __sync_add_and_fetch_8 - __sync_sub_and_fetch_8 - __sync_or_and_fetch_8 - __sync_and_and_fetch_8 - __sync_xor_and_fetch_8 - __sync_nand_and_fetch_8 - __sync_bool_compare_and_swap_8 - __sync_val_compare_and_swap_8 - __sync_lock_test_and_set_8 - - __sync_fetch_and_add_16 - __sync_fetch_and_sub_16 - __sync_fetch_and_or_16 - __sync_fetch_and_and_16 - __sync_fetch_and_xor_16 - __sync_fetch_and_nand_16 - __sync_add_and_fetch_16 - __sync_sub_and_fetch_16 - __sync_or_and_fetch_16 - __sync_and_and_fetch_16 - __sync_xor_and_fetch_16 - __sync_nand_and_fetch_16 - __sync_bool_compare_and_swap_16 - __sync_val_compare_and_swap_16 - __sync_lock_test_and_set_16 - - __sync_synchronize -} - -%inherit GCC_4.5.0 GCC_4.4.0 -GCC_4.5.0 { - __unordxf2 - __unordtf2 -} - -%inherit GCC_4.6.0 GCC_4.5.0 -GCC_4.6.0 { - __morestack_segments - __morestack_current_segment - __morestack_initial_sp - __splitstack_find -} Index: trunk/libgcc/libgcc-std.ver.in =================================================================== --- /dev/null +++ trunk/libgcc/libgcc-std.ver.in @@ -0,0 +1,1922 @@ +# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, +# 2008, 2010 Free Software Foundation, Inc. +# +# This file is part of GCC. +# +# GCC is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# GCC is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# . + +GCC_3.0 { + # libgcc1 integer symbols + __PFX__absvsi2 + __PFX__addvsi3 + __PFX__ashlsi3 + __PFX__ashrsi3 + __PFX__divsi3 + __PFX__lshrsi3 + __PFX__modsi3 + __PFX__mulsi3 + __PFX__mulvsi3 + __PFX__negvsi2 + __PFX__subvsi3 + __PFX__udivsi3 + __PFX__umodsi3 + + # libgcc1 floating point symbols + __PFX__addsf3 + __PFX__adddf3 + __PFX__addxf3 + __PFX__addtf3 + __PFX__divsf3 + __PFX__divdf3 + __PFX__divxf3 + __PFX__divtf3 + __PFX__eqsf2 + __PFX__eqdf2 + __PFX__eqxf2 + __PFX__eqtf2 + __PFX__extenddfxf2 + __PFX__extenddftf2 + __PFX__extendsfdf2 + __PFX__extendsfxf2 + __PFX__extendsftf2 + __PFX__fixsfsi + __PFX__fixdfsi + __PFX__fixxfsi + __PFX__fixtfsi + __PFX__floatsisf + __PFX__floatsidf + __PFX__floatsixf + __PFX__floatsitf + __PFX__gesf2 + __PFX__gedf2 + __PFX__gexf2 + __PFX__getf2 + __PFX__gtsf2 + __PFX__gtdf2 + __PFX__gtxf2 + __PFX__gttf2 + __PFX__lesf2 + __PFX__ledf2 + __PFX__lexf2 + __PFX__letf2 + __PFX__ltsf2 + __PFX__ltdf2 + __PFX__ltxf2 + __PFX__lttf2 + __PFX__mulsf3 + __PFX__muldf3 + __PFX__mulxf3 + __PFX__multf3 + __PFX__negsf2 + __PFX__negdf2 + __PFX__negxf2 + __PFX__negtf2 + __PFX__nesf2 + __PFX__nedf2 + __PFX__nexf2 + __PFX__netf2 + __PFX__subsf3 + __PFX__subdf3 + __PFX__subxf3 + __PFX__subtf3 + __PFX__truncdfsf2 + __PFX__truncxfsf2 + __PFX__trunctfsf2 + __PFX__truncxfdf2 + __PFX__trunctfdf2 + + # libgcc2 DImode arithmetic (for 32-bit targets). + __PFX__absvdi2 + __PFX__addvdi3 + __PFX__ashldi3 + __PFX__ashrdi3 + __PFX__cmpdi2 + __PFX__divdi3 + __PFX__ffsdi2 + __PFX__fixdfdi + __PFX__fixsfdi + __PFX__fixtfdi + __PFX__fixxfdi + __PFX__fixunsdfdi + __PFX__fixunsdfsi + __PFX__fixunssfsi + __PFX__fixunssfdi + __PFX__fixunstfdi + __PFX__fixunstfsi + __PFX__fixunsxfdi + __PFX__fixunsxfsi + __PFX__floatdidf + __PFX__floatdisf + __PFX__floatdixf + __PFX__floatditf + __PFX__lshrdi3 + __PFX__moddi3 + __PFX__muldi3 + __PFX__mulvdi3 + __PFX__negdi2 + __PFX__negvdi2 + __PFX__subvdi3 + __PFX__ucmpdi2 + __PFX__udivdi3 + __PFX__udivmoddi4 + __PFX__umoddi3 + + # libgcc2 TImode arithmetic (for 64-bit targets). + __PFX__ashlti3 + __PFX__ashrti3 + __PFX__cmpti2 + __PFX__divti3 + __PFX__ffsti2 + __PFX__fixdfti + __PFX__fixsfti + __PFX__fixtfti + __PFX__fixxfti + __PFX__lshrti3 + __PFX__modti3 + __PFX__multi3 + __PFX__negti2 + __PFX__ucmpti2 + __PFX__udivmodti4 + __PFX__udivti3 + __PFX__umodti3 + __PFX__fixunsdfti + __PFX__fixunssfti + __PFX__fixunstfti + __PFX__fixunsxfti + __PFX__floattidf + __PFX__floattisf + __PFX__floattixf + __PFX__floattitf + + # Used to deal with trampoline initialization on some platforms + __PFX__clear_cache + + # EH symbols + _Unwind_DeleteException + _Unwind_Find_FDE + _Unwind_ForcedUnwind + _Unwind_GetGR + _Unwind_GetIP + _Unwind_GetLanguageSpecificData + _Unwind_GetRegionStart + _Unwind_GetTextRelBase + _Unwind_GetDataRelBase + _Unwind_RaiseException + _Unwind_Resume + _Unwind_SetGR + _Unwind_SetIP + __deregister_frame + __deregister_frame_info + __deregister_frame_info_bases + __register_frame + __register_frame_info + __register_frame_info_bases + __register_frame_info_table + __register_frame_info_table_bases + __register_frame_table + + # SjLj EH symbols + _Unwind_SjLj_Register + _Unwind_SjLj_Unregister + _Unwind_SjLj_RaiseException + _Unwind_SjLj_ForcedUnwind + _Unwind_SjLj_Resume +} + +%inherit GCC_3.3 GCC_3.0 +GCC_3.3 { + _Unwind_FindEnclosingFunction + _Unwind_GetCFA + _Unwind_Backtrace + _Unwind_Resume_or_Rethrow + _Unwind_SjLj_Resume_or_Rethrow +} + +%inherit GCC_3.3.1 GCC_3.3 +GCC_3.3.1 { + __gcc_personality_sj0 + __gcc_personality_v0 +} + +%inherit GCC_3.3.2 GCC_3.3.1 +GCC_3.3.2 { +} + +%inherit GCC_3.3.4 GCC_3.3.2 +GCC_3.3.4 { + __PFX__unorddf2 + __PFX__unordsf2 +} + +%inherit GCC_3.4 GCC_3.3.4 +GCC_3.4 { + # bit scanning and counting built-ins + __PFX__clzsi2 + __PFX__clzdi2 + __PFX__clzti2 + __PFX__ctzsi2 + __PFX__ctzdi2 + __PFX__ctzti2 + __PFX__popcountsi2 + __PFX__popcountdi2 + __PFX__popcountti2 + __PFX__paritysi2 + __PFX__paritydi2 + __PFX__parityti2 +} + +%inherit GCC_3.4.2 GCC_3.4 +GCC_3.4.2 { + # Used to deal with trampoline initialization on some platforms + __PFX__enable_execute_stack + __trampoline_setup +} + +%inherit GCC_3.4.4 GCC_3.4.2 +GCC_3.4.4 { + # libgcc2 TImode arithmetic (for 64-bit targets). + __PFX__absvti2 + __PFX__addvti3 + __PFX__mulvti3 + __PFX__negvti2 + __PFX__subvti3 +} + +%inherit GCC_4.0.0 GCC_3.4.4 +GCC_4.0.0 { + # libgcc2 __builtin_powi helpers. + __PFX__powisf2 + __PFX__powidf2 + __PFX__powixf2 + __PFX__powitf2 + + # c99 compliant complex arithmetic + __PFX__divsc3 + __PFX__divdc3 + __PFX__divxc3 + __PFX__divtc3 + __PFX__mulsc3 + __PFX__muldc3 + __PFX__mulxc3 + __PFX__multc3 +} + +%inherit GCC_4.1.0 GCC_4.0.0 +GCC_4.1.0 { +} + +%inherit GCC_4.2.0 GCC_4.1.0 +GCC_4.2.0 { + # unsigned-to-floating conversions + __PFX__floatunsisf + __PFX__floatunsidf + __PFX__floatunsixf + __PFX__floatunsitf + __PFX__floatundidf + __PFX__floatundisf + __PFX__floatundixf + __PFX__floatunditf + __PFX__floatuntidf + __PFX__floatuntisf + __PFX__floatuntixf + __PFX__floatuntitf + _Unwind_GetIPInfo +} + +%inherit GCC_4.3.0 GCC_4.2.0 +GCC_4.3.0 { + # byte swapping routines + __PFX__bswapsi2 + __PFX__bswapdi2 + + __emutls_get_address + __emutls_register_common + __PFX__ffssi2 + __PFX__extendxftf2 + __PFX__trunctfxf2 + + # fixed-point routines + __PFX__addqq3 + __PFX__addhq3 + __PFX__addsq3 + __PFX__adddq3 + __PFX__addtq3 + __PFX__adduqq3 + __PFX__adduhq3 + __PFX__addusq3 + __PFX__addudq3 + __PFX__addutq3 + __PFX__addha3 + __PFX__addsa3 + __PFX__addda3 + __PFX__addta3 + __PFX__adduha3 + __PFX__addusa3 + __PFX__adduda3 + __PFX__adduta3 + __PFX__ssaddqq3 + __PFX__ssaddhq3 + __PFX__ssaddsq3 + __PFX__ssadddq3 + __PFX__ssaddtq3 + __PFX__ssaddha3 + __PFX__ssaddsa3 + __PFX__ssaddda3 + __PFX__ssaddta3 + __PFX__usadduqq3 + __PFX__usadduhq3 + __PFX__usaddusq3 + __PFX__usaddudq3 + __PFX__usaddutq3 + __PFX__usadduha3 + __PFX__usaddusa3 + __PFX__usadduda3 + __PFX__usadduta3 + __PFX__subqq3 + __PFX__subhq3 + __PFX__subsq3 + __PFX__subdq3 + __PFX__subtq3 + __PFX__subuqq3 + __PFX__subuhq3 + __PFX__subusq3 + __PFX__subudq3 + __PFX__subutq3 + __PFX__subha3 + __PFX__subsa3 + __PFX__subda3 + __PFX__subta3 + __PFX__subuha3 + __PFX__subusa3 + __PFX__subuda3 + __PFX__subuta3 + __PFX__sssubqq3 + __PFX__sssubhq3 + __PFX__sssubsq3 + __PFX__sssubdq3 + __PFX__sssubtq3 + __PFX__sssubha3 + __PFX__sssubsa3 + __PFX__sssubda3 + __PFX__sssubta3 + __PFX__ussubuqq3 + __PFX__ussubuhq3 + __PFX__ussubusq3 + __PFX__ussubudq3 + __PFX__ussubutq3 + __PFX__ussubuha3 + __PFX__ussubusa3 + __PFX__ussubuda3 + __PFX__ussubuta3 + __PFX__mulqq3 + __PFX__mulhq3 + __PFX__mulsq3 + __PFX__muldq3 + __PFX__multq3 + __PFX__muluqq3 + __PFX__muluhq3 + __PFX__mulusq3 + __PFX__muludq3 + __PFX__mulutq3 + __PFX__mulha3 + __PFX__mulsa3 + __PFX__mulda3 + __PFX__multa3 + __PFX__muluha3 + __PFX__mulusa3 + __PFX__muluda3 + __PFX__muluta3 + __PFX__ssmulqq3 + __PFX__ssmulhq3 + __PFX__ssmulsq3 + __PFX__ssmuldq3 + __PFX__ssmultq3 + __PFX__ssmulha3 + __PFX__ssmulsa3 + __PFX__ssmulda3 + __PFX__ssmulta3 + __PFX__usmuluqq3 + __PFX__usmuluhq3 + __PFX__usmulusq3 + __PFX__usmuludq3 + __PFX__usmulutq3 + __PFX__usmuluha3 + __PFX__usmulusa3 + __PFX__usmuluda3 + __PFX__usmuluta3 + __PFX__divqq3 + __PFX__divhq3 + __PFX__divsq3 + __PFX__divdq3 + __PFX__divtq3 + __PFX__divha3 + __PFX__divsa3 + __PFX__divda3 + __PFX__divta3 + __PFX__udivuqq3 + __PFX__udivuhq3 + __PFX__udivusq3 + __PFX__udivudq3 + __PFX__udivutq3 + __PFX__udivuha3 + __PFX__udivusa3 + __PFX__udivuda3 + __PFX__udivuta3 + __PFX__ssdivqq3 + __PFX__ssdivhq3 + __PFX__ssdivsq3 + __PFX__ssdivdq3 + __PFX__ssdivtq3 + __PFX__ssdivha3 + __PFX__ssdivsa3 + __PFX__ssdivda3 + __PFX__ssdivta3 + __PFX__usdivuqq3 + __PFX__usdivuhq3 + __PFX__usdivusq3 + __PFX__usdivudq3 + __PFX__usdivutq3 + __PFX__usdivuha3 + __PFX__usdivusa3 + __PFX__usdivuda3 + __PFX__usdivuta3 + __PFX__negqq2 + __PFX__neghq2 + __PFX__negsq2 + __PFX__negdq2 + __PFX__negtq2 + __PFX__neguqq2 + __PFX__neguhq2 + __PFX__negusq2 + __PFX__negudq2 + __PFX__negutq2 + __PFX__negha2 + __PFX__negsa2 + __PFX__negda2 + __PFX__negta2 + __PFX__neguha2 + __PFX__negusa2 + __PFX__neguda2 + __PFX__neguta2 + __PFX__ssnegqq2 + __PFX__ssneghq2 + __PFX__ssnegsq2 + __PFX__ssnegdq2 + __PFX__ssnegtq2 + __PFX__ssnegha2 + __PFX__ssnegsa2 + __PFX__ssnegda2 + __PFX__ssnegta2 + __PFX__usneguqq2 + __PFX__usneguhq2 + __PFX__usnegusq2 + __PFX__usnegudq2 + __PFX__usnegutq2 + __PFX__usneguha2 + __PFX__usnegusa2 + __PFX__usneguda2 + __PFX__usneguta2 + __PFX__ashlqq3 + __PFX__ashlhq3 + __PFX__ashlsq3 + __PFX__ashldq3 + __PFX__ashltq3 + __PFX__ashluqq3 + __PFX__ashluhq3 + __PFX__ashlusq3 + __PFX__ashludq3 + __PFX__ashlutq3 + __PFX__ashlha3 + __PFX__ashlsa3 + __PFX__ashlda3 + __PFX__ashlta3 + __PFX__ashluha3 + __PFX__ashlusa3 + __PFX__ashluda3 + __PFX__ashluta3 + __PFX__ashrqq3 + __PFX__ashrhq3 + __PFX__ashrsq3 + __PFX__ashrdq3 + __PFX__ashrtq3 + __PFX__ashrha3 + __PFX__ashrsa3 + __PFX__ashrda3 + __PFX__ashrta3 + __PFX__lshruqq3 + __PFX__lshruhq3 + __PFX__lshrusq3 + __PFX__lshrudq3 + __PFX__lshrutq3 + __PFX__lshruha3 + __PFX__lshrusa3 + __PFX__lshruda3 + __PFX__lshruta3 + __PFX__ssashlqq3 + __PFX__ssashlhq3 + __PFX__ssashlsq3 + __PFX__ssashldq3 + __PFX__ssashltq3 + __PFX__ssashlha3 + __PFX__ssashlsa3 + __PFX__ssashlda3 + __PFX__ssashlta3 + __PFX__usashluqq3 + __PFX__usashluhq3 + __PFX__usashlusq3 + __PFX__usashludq3 + __PFX__usashlutq3 + __PFX__usashluha3 + __PFX__usashlusa3 + __PFX__usashluda3 + __PFX__usashluta3 + __PFX__cmpqq2 + __PFX__cmphq2 + __PFX__cmpsq2 + __PFX__cmpdq2 + __PFX__cmptq2 + __PFX__cmpuqq2 + __PFX__cmpuhq2 + __PFX__cmpusq2 + __PFX__cmpudq2 + __PFX__cmputq2 + __PFX__cmpha2 + __PFX__cmpsa2 + __PFX__cmpda2 + __PFX__cmpta2 + __PFX__cmpuha2 + __PFX__cmpusa2 + __PFX__cmpuda2 + __PFX__cmputa2 + __PFX__fractqqhq2 + __PFX__fractqqsq2 + __PFX__fractqqdq2 + __PFX__fractqqtq2 + __PFX__fractqqha + __PFX__fractqqsa + __PFX__fractqqda + __PFX__fractqqta + __PFX__fractqquqq + __PFX__fractqquhq + __PFX__fractqqusq + __PFX__fractqqudq + __PFX__fractqqutq + __PFX__fractqquha + __PFX__fractqqusa + __PFX__fractqquda + __PFX__fractqquta + __PFX__fractqqqi + __PFX__fractqqhi + __PFX__fractqqsi + __PFX__fractqqdi + __PFX__fractqqti + __PFX__fractqqsf + __PFX__fractqqdf + __PFX__fracthqqq2 + __PFX__fracthqsq2 + __PFX__fracthqdq2 + __PFX__fracthqtq2 + __PFX__fracthqha + __PFX__fracthqsa + __PFX__fracthqda + __PFX__fracthqta + __PFX__fracthquqq + __PFX__fracthquhq + __PFX__fracthqusq + __PFX__fracthqudq + __PFX__fracthqutq + __PFX__fracthquha + __PFX__fracthqusa + __PFX__fracthquda + __PFX__fracthquta + __PFX__fracthqqi + __PFX__fracthqhi + __PFX__fracthqsi + __PFX__fracthqdi + __PFX__fracthqti + __PFX__fracthqsf + __PFX__fracthqdf + __PFX__fractsqqq2 + __PFX__fractsqhq2 + __PFX__fractsqdq2 + __PFX__fractsqtq2 + __PFX__fractsqha + __PFX__fractsqsa + __PFX__fractsqda + __PFX__fractsqta + __PFX__fractsquqq + __PFX__fractsquhq + __PFX__fractsqusq + __PFX__fractsqudq + __PFX__fractsqutq + __PFX__fractsquha + __PFX__fractsqusa + __PFX__fractsquda + __PFX__fractsquta + __PFX__fractsqqi + __PFX__fractsqhi + __PFX__fractsqsi + __PFX__fractsqdi + __PFX__fractsqti + __PFX__fractsqsf + __PFX__fractsqdf + __PFX__fractdqqq2 + __PFX__fractdqhq2 + __PFX__fractdqsq2 + __PFX__fractdqtq2 + __PFX__fractdqha + __PFX__fractdqsa + __PFX__fractdqda + __PFX__fractdqta + __PFX__fractdquqq + __PFX__fractdquhq + __PFX__fractdqusq + __PFX__fractdqudq + __PFX__fractdqutq + __PFX__fractdquha + __PFX__fractdqusa + __PFX__fractdquda + __PFX__fractdquta + __PFX__fractdqqi + __PFX__fractdqhi + __PFX__fractdqsi + __PFX__fractdqdi + __PFX__fractdqti + __PFX__fractdqsf + __PFX__fractdqdf + __PFX__fracttqqq2 + __PFX__fracttqhq2 + __PFX__fracttqsq2 + __PFX__fracttqdq2 + __PFX__fracttqha + __PFX__fracttqsa + __PFX__fracttqda + __PFX__fracttqta + __PFX__fracttquqq + __PFX__fracttquhq + __PFX__fracttqusq + __PFX__fracttqudq + __PFX__fracttqutq + __PFX__fracttquha + __PFX__fracttqusa + __PFX__fracttquda + __PFX__fracttquta + __PFX__fracttqqi + __PFX__fracttqhi + __PFX__fracttqsi + __PFX__fracttqdi + __PFX__fracttqti + __PFX__fracttqsf + __PFX__fracttqdf + __PFX__fracthaqq + __PFX__fracthahq + __PFX__fracthasq + __PFX__fracthadq + __PFX__fracthatq + __PFX__fracthasa2 + __PFX__fracthada2 + __PFX__fracthata2 + __PFX__fracthauqq + __PFX__fracthauhq + __PFX__fracthausq + __PFX__fracthaudq + __PFX__fracthautq + __PFX__fracthauha + __PFX__fracthausa + __PFX__fracthauda + __PFX__fracthauta + __PFX__fracthaqi + __PFX__fracthahi + __PFX__fracthasi + __PFX__fracthadi + __PFX__fracthati + __PFX__fracthasf + __PFX__fracthadf + __PFX__fractsaqq + __PFX__fractsahq + __PFX__fractsasq + __PFX__fractsadq + __PFX__fractsatq + __PFX__fractsaha2 + __PFX__fractsada2 + __PFX__fractsata2 + __PFX__fractsauqq + __PFX__fractsauhq + __PFX__fractsausq + __PFX__fractsaudq + __PFX__fractsautq + __PFX__fractsauha + __PFX__fractsausa + __PFX__fractsauda + __PFX__fractsauta + __PFX__fractsaqi + __PFX__fractsahi + __PFX__fractsasi + __PFX__fractsadi + __PFX__fractsati + __PFX__fractsasf + __PFX__fractsadf + __PFX__fractdaqq + __PFX__fractdahq + __PFX__fractdasq + __PFX__fractdadq + __PFX__fractdatq + __PFX__fractdaha2 + __PFX__fractdasa2 + __PFX__fractdata2 + __PFX__fractdauqq + __PFX__fractdauhq + __PFX__fractdausq + __PFX__fractdaudq + __PFX__fractdautq + __PFX__fractdauha + __PFX__fractdausa + __PFX__fractdauda + __PFX__fractdauta + __PFX__fractdaqi + __PFX__fractdahi + __PFX__fractdasi + __PFX__fractdadi + __PFX__fractdati + __PFX__fractdasf + __PFX__fractdadf + __PFX__fracttaqq + __PFX__fracttahq + __PFX__fracttasq + __PFX__fracttadq + __PFX__fracttatq + __PFX__fracttaha2 + __PFX__fracttasa2 + __PFX__fracttada2 + __PFX__fracttauqq + __PFX__fracttauhq + __PFX__fracttausq + __PFX__fracttaudq + __PFX__fracttautq + __PFX__fracttauha + __PFX__fracttausa + __PFX__fracttauda + __PFX__fracttauta + __PFX__fracttaqi + __PFX__fracttahi + __PFX__fracttasi + __PFX__fracttadi + __PFX__fracttati + __PFX__fracttasf + __PFX__fracttadf + __PFX__fractuqqqq + __PFX__fractuqqhq + __PFX__fractuqqsq + __PFX__fractuqqdq + __PFX__fractuqqtq + __PFX__fractuqqha + __PFX__fractuqqsa + __PFX__fractuqqda + __PFX__fractuqqta + __PFX__fractuqquhq2 + __PFX__fractuqqusq2 + __PFX__fractuqqudq2 + __PFX__fractuqqutq2 + __PFX__fractuqquha + __PFX__fractuqqusa + __PFX__fractuqquda + __PFX__fractuqquta + __PFX__fractuqqqi + __PFX__fractuqqhi + __PFX__fractuqqsi + __PFX__fractuqqdi + __PFX__fractuqqti + __PFX__fractuqqsf + __PFX__fractuqqdf + __PFX__fractuhqqq + __PFX__fractuhqhq + __PFX__fractuhqsq + __PFX__fractuhqdq + __PFX__fractuhqtq + __PFX__fractuhqha + __PFX__fractuhqsa + __PFX__fractuhqda + __PFX__fractuhqta + __PFX__fractuhquqq2 + __PFX__fractuhqusq2 + __PFX__fractuhqudq2 + __PFX__fractuhqutq2 + __PFX__fractuhquha + __PFX__fractuhqusa + __PFX__fractuhquda + __PFX__fractuhquta + __PFX__fractuhqqi + __PFX__fractuhqhi + __PFX__fractuhqsi + __PFX__fractuhqdi + __PFX__fractuhqti + __PFX__fractuhqsf + __PFX__fractuhqdf + __PFX__fractusqqq + __PFX__fractusqhq + __PFX__fractusqsq + __PFX__fractusqdq + __PFX__fractusqtq + __PFX__fractusqha + __PFX__fractusqsa + __PFX__fractusqda + __PFX__fractusqta + __PFX__fractusquqq2 + __PFX__fractusquhq2 + __PFX__fractusqudq2 + __PFX__fractusqutq2 + __PFX__fractusquha + __PFX__fractusqusa + __PFX__fractusquda + __PFX__fractusquta + __PFX__fractusqqi + __PFX__fractusqhi + __PFX__fractusqsi + __PFX__fractusqdi + __PFX__fractusqti + __PFX__fractusqsf + __PFX__fractusqdf + __PFX__fractudqqq + __PFX__fractudqhq + __PFX__fractudqsq + __PFX__fractudqdq + __PFX__fractudqtq + __PFX__fractudqha + __PFX__fractudqsa + __PFX__fractudqda + __PFX__fractudqta + __PFX__fractudquqq2 + __PFX__fractudquhq2 + __PFX__fractudqusq2 + __PFX__fractudqutq2 + __PFX__fractudquha + __PFX__fractudqusa + __PFX__fractudquda + __PFX__fractudquta + __PFX__fractudqqi + __PFX__fractudqhi + __PFX__fractudqsi + __PFX__fractudqdi + __PFX__fractudqti + __PFX__fractudqsf + __PFX__fractudqdf + __PFX__fractutqqq + __PFX__fractutqhq + __PFX__fractutqsq + __PFX__fractutqdq + __PFX__fractutqtq + __PFX__fractutqha + __PFX__fractutqsa + __PFX__fractutqda + __PFX__fractutqta + __PFX__fractutquqq2 + __PFX__fractutquhq2 + __PFX__fractutqusq2 + __PFX__fractutqudq2 + __PFX__fractutquha + __PFX__fractutqusa + __PFX__fractutquda + __PFX__fractutquta + __PFX__fractutqqi + __PFX__fractutqhi + __PFX__fractutqsi + __PFX__fractutqdi + __PFX__fractutqti + __PFX__fractutqsf + __PFX__fractutqdf + __PFX__fractuhaqq + __PFX__fractuhahq + __PFX__fractuhasq + __PFX__fractuhadq + __PFX__fractuhatq + __PFX__fractuhaha + __PFX__fractuhasa + __PFX__fractuhada + __PFX__fractuhata + __PFX__fractuhauqq + __PFX__fractuhauhq + __PFX__fractuhausq + __PFX__fractuhaudq + __PFX__fractuhautq + __PFX__fractuhausa2 + __PFX__fractuhauda2 + __PFX__fractuhauta2 + __PFX__fractuhaqi + __PFX__fractuhahi + __PFX__fractuhasi + __PFX__fractuhadi + __PFX__fractuhati + __PFX__fractuhasf + __PFX__fractuhadf + __PFX__fractusaqq + __PFX__fractusahq + __PFX__fractusasq + __PFX__fractusadq + __PFX__fractusatq + __PFX__fractusaha + __PFX__fractusasa + __PFX__fractusada + __PFX__fractusata + __PFX__fractusauqq + __PFX__fractusauhq + __PFX__fractusausq + __PFX__fractusaudq + __PFX__fractusautq + __PFX__fractusauha2 + __PFX__fractusauda2 + __PFX__fractusauta2 + __PFX__fractusaqi + __PFX__fractusahi + __PFX__fractusasi + __PFX__fractusadi + __PFX__fractusati + __PFX__fractusasf + __PFX__fractusadf + __PFX__fractudaqq + __PFX__fractudahq + __PFX__fractudasq + __PFX__fractudadq + __PFX__fractudatq + __PFX__fractudaha + __PFX__fractudasa + __PFX__fractudada + __PFX__fractudata + __PFX__fractudauqq + __PFX__fractudauhq + __PFX__fractudausq + __PFX__fractudaudq + __PFX__fractudautq + __PFX__fractudauha2 + __PFX__fractudausa2 + __PFX__fractudauta2 + __PFX__fractudaqi + __PFX__fractudahi + __PFX__fractudasi + __PFX__fractudadi + __PFX__fractudati + __PFX__fractudasf + __PFX__fractudadf + __PFX__fractutaqq + __PFX__fractutahq + __PFX__fractutasq + __PFX__fractutadq + __PFX__fractutatq + __PFX__fractutaha + __PFX__fractutasa + __PFX__fractutada + __PFX__fractutata + __PFX__fractutauqq + __PFX__fractutauhq + __PFX__fractutausq + __PFX__fractutaudq + __PFX__fractutautq + __PFX__fractutauha2 + __PFX__fractutausa2 + __PFX__fractutauda2 + __PFX__fractutaqi + __PFX__fractutahi + __PFX__fractutasi + __PFX__fractutadi + __PFX__fractutati + __PFX__fractutasf + __PFX__fractutadf + __PFX__fractqiqq + __PFX__fractqihq + __PFX__fractqisq + __PFX__fractqidq + __PFX__fractqitq + __PFX__fractqiha + __PFX__fractqisa + __PFX__fractqida + __PFX__fractqita + __PFX__fractqiuqq + __PFX__fractqiuhq + __PFX__fractqiusq + __PFX__fractqiudq + __PFX__fractqiutq + __PFX__fractqiuha + __PFX__fractqiusa + __PFX__fractqiuda + __PFX__fractqiuta + __PFX__fracthiqq + __PFX__fracthihq + __PFX__fracthisq + __PFX__fracthidq + __PFX__fracthitq + __PFX__fracthiha + __PFX__fracthisa + __PFX__fracthida + __PFX__fracthita + __PFX__fracthiuqq + __PFX__fracthiuhq + __PFX__fracthiusq + __PFX__fracthiudq + __PFX__fracthiutq + __PFX__fracthiuha + __PFX__fracthiusa + __PFX__fracthiuda + __PFX__fracthiuta + __PFX__fractsiqq + __PFX__fractsihq + __PFX__fractsisq + __PFX__fractsidq + __PFX__fractsitq + __PFX__fractsiha + __PFX__fractsisa + __PFX__fractsida + __PFX__fractsita + __PFX__fractsiuqq + __PFX__fractsiuhq + __PFX__fractsiusq + __PFX__fractsiudq + __PFX__fractsiutq + __PFX__fractsiuha + __PFX__fractsiusa + __PFX__fractsiuda + __PFX__fractsiuta + __PFX__fractdiqq + __PFX__fractdihq + __PFX__fractdisq + __PFX__fractdidq + __PFX__fractditq + __PFX__fractdiha + __PFX__fractdisa + __PFX__fractdida + __PFX__fractdita + __PFX__fractdiuqq + __PFX__fractdiuhq + __PFX__fractdiusq + __PFX__fractdiudq + __PFX__fractdiutq + __PFX__fractdiuha + __PFX__fractdiusa + __PFX__fractdiuda + __PFX__fractdiuta + __PFX__fracttiqq + __PFX__fracttihq + __PFX__fracttisq + __PFX__fracttidq + __PFX__fracttitq + __PFX__fracttiha + __PFX__fracttisa + __PFX__fracttida + __PFX__fracttita + __PFX__fracttiuqq + __PFX__fracttiuhq + __PFX__fracttiusq + __PFX__fracttiudq + __PFX__fracttiutq + __PFX__fracttiuha + __PFX__fracttiusa + __PFX__fracttiuda + __PFX__fracttiuta + __PFX__fractsfqq + __PFX__fractsfhq + __PFX__fractsfsq + __PFX__fractsfdq + __PFX__fractsftq + __PFX__fractsfha + __PFX__fractsfsa + __PFX__fractsfda + __PFX__fractsfta + __PFX__fractsfuqq + __PFX__fractsfuhq + __PFX__fractsfusq + __PFX__fractsfudq + __PFX__fractsfutq + __PFX__fractsfuha + __PFX__fractsfusa + __PFX__fractsfuda + __PFX__fractsfuta + __PFX__fractdfqq + __PFX__fractdfhq + __PFX__fractdfsq + __PFX__fractdfdq + __PFX__fractdftq + __PFX__fractdfha + __PFX__fractdfsa + __PFX__fractdfda + __PFX__fractdfta + __PFX__fractdfuqq + __PFX__fractdfuhq + __PFX__fractdfusq + __PFX__fractdfudq + __PFX__fractdfutq + __PFX__fractdfuha + __PFX__fractdfusa + __PFX__fractdfuda + __PFX__fractdfuta + __PFX__satfractqqhq2 + __PFX__satfractqqsq2 + __PFX__satfractqqdq2 + __PFX__satfractqqtq2 + __PFX__satfractqqha + __PFX__satfractqqsa + __PFX__satfractqqda + __PFX__satfractqqta + __PFX__satfractqquqq + __PFX__satfractqquhq + __PFX__satfractqqusq + __PFX__satfractqqudq + __PFX__satfractqqutq + __PFX__satfractqquha + __PFX__satfractqqusa + __PFX__satfractqquda + __PFX__satfractqquta + __PFX__satfracthqqq2 + __PFX__satfracthqsq2 + __PFX__satfracthqdq2 + __PFX__satfracthqtq2 + __PFX__satfracthqha + __PFX__satfracthqsa + __PFX__satfracthqda + __PFX__satfracthqta + __PFX__satfracthquqq + __PFX__satfracthquhq + __PFX__satfracthqusq + __PFX__satfracthqudq + __PFX__satfracthqutq + __PFX__satfracthquha + __PFX__satfracthqusa + __PFX__satfracthquda + __PFX__satfracthquta + __PFX__satfractsqqq2 + __PFX__satfractsqhq2 + __PFX__satfractsqdq2 + __PFX__satfractsqtq2 + __PFX__satfractsqha + __PFX__satfractsqsa + __PFX__satfractsqda + __PFX__satfractsqta + __PFX__satfractsquqq + __PFX__satfractsquhq + __PFX__satfractsqusq + __PFX__satfractsqudq + __PFX__satfractsqutq + __PFX__satfractsquha + __PFX__satfractsqusa + __PFX__satfractsquda + __PFX__satfractsquta + __PFX__satfractdqqq2 + __PFX__satfractdqhq2 + __PFX__satfractdqsq2 + __PFX__satfractdqtq2 + __PFX__satfractdqha + __PFX__satfractdqsa + __PFX__satfractdqda + __PFX__satfractdqta + __PFX__satfractdquqq + __PFX__satfractdquhq + __PFX__satfractdqusq + __PFX__satfractdqudq + __PFX__satfractdqutq + __PFX__satfractdquha + __PFX__satfractdqusa + __PFX__satfractdquda + __PFX__satfractdquta + __PFX__satfracttqqq2 + __PFX__satfracttqhq2 + __PFX__satfracttqsq2 + __PFX__satfracttqdq2 + __PFX__satfracttqha + __PFX__satfracttqsa + __PFX__satfracttqda + __PFX__satfracttqta + __PFX__satfracttquqq + __PFX__satfracttquhq + __PFX__satfracttqusq + __PFX__satfracttqudq + __PFX__satfracttqutq + __PFX__satfracttquha + __PFX__satfracttqusa + __PFX__satfracttquda + __PFX__satfracttquta + __PFX__satfracthaqq + __PFX__satfracthahq + __PFX__satfracthasq + __PFX__satfracthadq + __PFX__satfracthatq + __PFX__satfracthasa2 + __PFX__satfracthada2 + __PFX__satfracthata2 + __PFX__satfracthauqq + __PFX__satfracthauhq + __PFX__satfracthausq + __PFX__satfracthaudq + __PFX__satfracthautq + __PFX__satfracthauha + __PFX__satfracthausa + __PFX__satfracthauda + __PFX__satfracthauta + __PFX__satfractsaqq + __PFX__satfractsahq + __PFX__satfractsasq + __PFX__satfractsadq + __PFX__satfractsatq + __PFX__satfractsaha2 + __PFX__satfractsada2 + __PFX__satfractsata2 + __PFX__satfractsauqq + __PFX__satfractsauhq + __PFX__satfractsausq + __PFX__satfractsaudq + __PFX__satfractsautq + __PFX__satfractsauha + __PFX__satfractsausa + __PFX__satfractsauda + __PFX__satfractsauta + __PFX__satfractdaqq + __PFX__satfractdahq + __PFX__satfractdasq + __PFX__satfractdadq + __PFX__satfractdatq + __PFX__satfractdaha2 + __PFX__satfractdasa2 + __PFX__satfractdata2 + __PFX__satfractdauqq + __PFX__satfractdauhq + __PFX__satfractdausq + __PFX__satfractdaudq + __PFX__satfractdautq + __PFX__satfractdauha + __PFX__satfractdausa + __PFX__satfractdauda + __PFX__satfractdauta + __PFX__satfracttaqq + __PFX__satfracttahq + __PFX__satfracttasq + __PFX__satfracttadq + __PFX__satfracttatq + __PFX__satfracttaha2 + __PFX__satfracttasa2 + __PFX__satfracttada2 + __PFX__satfracttauqq + __PFX__satfracttauhq + __PFX__satfracttausq + __PFX__satfracttaudq + __PFX__satfracttautq + __PFX__satfracttauha + __PFX__satfracttausa + __PFX__satfracttauda + __PFX__satfracttauta + __PFX__satfractuqqqq + __PFX__satfractuqqhq + __PFX__satfractuqqsq + __PFX__satfractuqqdq + __PFX__satfractuqqtq + __PFX__satfractuqqha + __PFX__satfractuqqsa + __PFX__satfractuqqda + __PFX__satfractuqqta + __PFX__satfractuqquhq2 + __PFX__satfractuqqusq2 + __PFX__satfractuqqudq2 + __PFX__satfractuqqutq2 + __PFX__satfractuqquha + __PFX__satfractuqqusa + __PFX__satfractuqquda + __PFX__satfractuqquta + __PFX__satfractuhqqq + __PFX__satfractuhqhq + __PFX__satfractuhqsq + __PFX__satfractuhqdq + __PFX__satfractuhqtq + __PFX__satfractuhqha + __PFX__satfractuhqsa + __PFX__satfractuhqda + __PFX__satfractuhqta + __PFX__satfractuhquqq2 + __PFX__satfractuhqusq2 + __PFX__satfractuhqudq2 + __PFX__satfractuhqutq2 + __PFX__satfractuhquha + __PFX__satfractuhqusa + __PFX__satfractuhquda + __PFX__satfractuhquta + __PFX__satfractusqqq + __PFX__satfractusqhq + __PFX__satfractusqsq + __PFX__satfractusqdq + __PFX__satfractusqtq + __PFX__satfractusqha + __PFX__satfractusqsa + __PFX__satfractusqda + __PFX__satfractusqta + __PFX__satfractusquqq2 + __PFX__satfractusquhq2 + __PFX__satfractusqudq2 + __PFX__satfractusqutq2 + __PFX__satfractusquha + __PFX__satfractusqusa + __PFX__satfractusquda + __PFX__satfractusquta + __PFX__satfractudqqq + __PFX__satfractudqhq + __PFX__satfractudqsq + __PFX__satfractudqdq + __PFX__satfractudqtq + __PFX__satfractudqha + __PFX__satfractudqsa + __PFX__satfractudqda + __PFX__satfractudqta + __PFX__satfractudquqq2 + __PFX__satfractudquhq2 + __PFX__satfractudqusq2 + __PFX__satfractudqutq2 + __PFX__satfractudquha + __PFX__satfractudqusa + __PFX__satfractudquda + __PFX__satfractudquta + __PFX__satfractutqqq + __PFX__satfractutqhq + __PFX__satfractutqsq + __PFX__satfractutqdq + __PFX__satfractutqtq + __PFX__satfractutqha + __PFX__satfractutqsa + __PFX__satfractutqda + __PFX__satfractutqta + __PFX__satfractutquqq2 + __PFX__satfractutquhq2 + __PFX__satfractutqusq2 + __PFX__satfractutqudq2 + __PFX__satfractutquha + __PFX__satfractutqusa + __PFX__satfractutquda + __PFX__satfractutquta + __PFX__satfractuhaqq + __PFX__satfractuhahq + __PFX__satfractuhasq + __PFX__satfractuhadq + __PFX__satfractuhatq + __PFX__satfractuhaha + __PFX__satfractuhasa + __PFX__satfractuhada + __PFX__satfractuhata + __PFX__satfractuhauqq + __PFX__satfractuhauhq + __PFX__satfractuhausq + __PFX__satfractuhaudq + __PFX__satfractuhautq + __PFX__satfractuhausa2 + __PFX__satfractuhauda2 + __PFX__satfractuhauta2 + __PFX__satfractusaqq + __PFX__satfractusahq + __PFX__satfractusasq + __PFX__satfractusadq + __PFX__satfractusatq + __PFX__satfractusaha + __PFX__satfractusasa + __PFX__satfractusada + __PFX__satfractusata + __PFX__satfractusauqq + __PFX__satfractusauhq + __PFX__satfractusausq + __PFX__satfractusaudq + __PFX__satfractusautq + __PFX__satfractusauha2 + __PFX__satfractusauda2 + __PFX__satfractusauta2 + __PFX__satfractudaqq + __PFX__satfractudahq + __PFX__satfractudasq + __PFX__satfractudadq + __PFX__satfractudatq + __PFX__satfractudaha + __PFX__satfractudasa + __PFX__satfractudada + __PFX__satfractudata + __PFX__satfractudauqq + __PFX__satfractudauhq + __PFX__satfractudausq + __PFX__satfractudaudq + __PFX__satfractudautq + __PFX__satfractudauha2 + __PFX__satfractudausa2 + __PFX__satfractudauta2 + __PFX__satfractutaqq + __PFX__satfractutahq + __PFX__satfractutasq + __PFX__satfractutadq + __PFX__satfractutatq + __PFX__satfractutaha + __PFX__satfractutasa + __PFX__satfractutada + __PFX__satfractutata + __PFX__satfractutauqq + __PFX__satfractutauhq + __PFX__satfractutausq + __PFX__satfractutaudq + __PFX__satfractutautq + __PFX__satfractutauha2 + __PFX__satfractutausa2 + __PFX__satfractutauda2 + __PFX__satfractqiqq + __PFX__satfractqihq + __PFX__satfractqisq + __PFX__satfractqidq + __PFX__satfractqitq + __PFX__satfractqiha + __PFX__satfractqisa + __PFX__satfractqida + __PFX__satfractqita + __PFX__satfractqiuqq + __PFX__satfractqiuhq + __PFX__satfractqiusq + __PFX__satfractqiudq + __PFX__satfractqiutq + __PFX__satfractqiuha + __PFX__satfractqiusa + __PFX__satfractqiuda + __PFX__satfractqiuta + __PFX__satfracthiqq + __PFX__satfracthihq + __PFX__satfracthisq + __PFX__satfracthidq + __PFX__satfracthitq + __PFX__satfracthiha + __PFX__satfracthisa + __PFX__satfracthida + __PFX__satfracthita + __PFX__satfracthiuqq + __PFX__satfracthiuhq + __PFX__satfracthiusq + __PFX__satfracthiudq + __PFX__satfracthiutq + __PFX__satfracthiuha + __PFX__satfracthiusa + __PFX__satfracthiuda + __PFX__satfracthiuta + __PFX__satfractsiqq + __PFX__satfractsihq + __PFX__satfractsisq + __PFX__satfractsidq + __PFX__satfractsitq + __PFX__satfractsiha + __PFX__satfractsisa + __PFX__satfractsida + __PFX__satfractsita + __PFX__satfractsiuqq + __PFX__satfractsiuhq + __PFX__satfractsiusq + __PFX__satfractsiudq + __PFX__satfractsiutq + __PFX__satfractsiuha + __PFX__satfractsiusa + __PFX__satfractsiuda + __PFX__satfractsiuta + __PFX__satfractdiqq + __PFX__satfractdihq + __PFX__satfractdisq + __PFX__satfractdidq + __PFX__satfractditq + __PFX__satfractdiha + __PFX__satfractdisa + __PFX__satfractdida + __PFX__satfractdita + __PFX__satfractdiuqq + __PFX__satfractdiuhq + __PFX__satfractdiusq + __PFX__satfractdiudq + __PFX__satfractdiutq + __PFX__satfractdiuha + __PFX__satfractdiusa + __PFX__satfractdiuda + __PFX__satfractdiuta + __PFX__satfracttiqq + __PFX__satfracttihq + __PFX__satfracttisq + __PFX__satfracttidq + __PFX__satfracttitq + __PFX__satfracttiha + __PFX__satfracttisa + __PFX__satfracttida + __PFX__satfracttita + __PFX__satfracttiuqq + __PFX__satfracttiuhq + __PFX__satfracttiusq + __PFX__satfracttiudq + __PFX__satfracttiutq + __PFX__satfracttiuha + __PFX__satfracttiusa + __PFX__satfracttiuda + __PFX__satfracttiuta + __PFX__satfractsfqq + __PFX__satfractsfhq + __PFX__satfractsfsq + __PFX__satfractsfdq + __PFX__satfractsftq + __PFX__satfractsfha + __PFX__satfractsfsa + __PFX__satfractsfda + __PFX__satfractsfta + __PFX__satfractsfuqq + __PFX__satfractsfuhq + __PFX__satfractsfusq + __PFX__satfractsfudq + __PFX__satfractsfutq + __PFX__satfractsfuha + __PFX__satfractsfusa + __PFX__satfractsfuda + __PFX__satfractsfuta + __PFX__satfractdfqq + __PFX__satfractdfhq + __PFX__satfractdfsq + __PFX__satfractdfdq + __PFX__satfractdftq + __PFX__satfractdfha + __PFX__satfractdfsa + __PFX__satfractdfda + __PFX__satfractdfta + __PFX__satfractdfuqq + __PFX__satfractdfuhq + __PFX__satfractdfusq + __PFX__satfractdfudq + __PFX__satfractdfutq + __PFX__satfractdfuha + __PFX__satfractdfusa + __PFX__satfractdfuda + __PFX__satfractdfuta + __PFX__fractunsqqqi + __PFX__fractunsqqhi + __PFX__fractunsqqsi + __PFX__fractunsqqdi + __PFX__fractunsqqti + __PFX__fractunshqqi + __PFX__fractunshqhi + __PFX__fractunshqsi + __PFX__fractunshqdi + __PFX__fractunshqti + __PFX__fractunssqqi + __PFX__fractunssqhi + __PFX__fractunssqsi + __PFX__fractunssqdi + __PFX__fractunssqti + __PFX__fractunsdqqi + __PFX__fractunsdqhi + __PFX__fractunsdqsi + __PFX__fractunsdqdi + __PFX__fractunsdqti + __PFX__fractunstqqi + __PFX__fractunstqhi + __PFX__fractunstqsi + __PFX__fractunstqdi + __PFX__fractunstqti + __PFX__fractunshaqi + __PFX__fractunshahi + __PFX__fractunshasi + __PFX__fractunshadi + __PFX__fractunshati + __PFX__fractunssaqi + __PFX__fractunssahi + __PFX__fractunssasi + __PFX__fractunssadi + __PFX__fractunssati + __PFX__fractunsdaqi + __PFX__fractunsdahi + __PFX__fractunsdasi + __PFX__fractunsdadi + __PFX__fractunsdati + __PFX__fractunstaqi + __PFX__fractunstahi + __PFX__fractunstasi + __PFX__fractunstadi + __PFX__fractunstati + __PFX__fractunsuqqqi + __PFX__fractunsuqqhi + __PFX__fractunsuqqsi + __PFX__fractunsuqqdi + __PFX__fractunsuqqti + __PFX__fractunsuhqqi + __PFX__fractunsuhqhi + __PFX__fractunsuhqsi + __PFX__fractunsuhqdi + __PFX__fractunsuhqti + __PFX__fractunsusqqi + __PFX__fractunsusqhi + __PFX__fractunsusqsi + __PFX__fractunsusqdi + __PFX__fractunsusqti + __PFX__fractunsudqqi + __PFX__fractunsudqhi + __PFX__fractunsudqsi + __PFX__fractunsudqdi + __PFX__fractunsudqti + __PFX__fractunsutqqi + __PFX__fractunsutqhi + __PFX__fractunsutqsi + __PFX__fractunsutqdi + __PFX__fractunsutqti + __PFX__fractunsuhaqi + __PFX__fractunsuhahi + __PFX__fractunsuhasi + __PFX__fractunsuhadi + __PFX__fractunsuhati + __PFX__fractunsusaqi + __PFX__fractunsusahi + __PFX__fractunsusasi + __PFX__fractunsusadi + __PFX__fractunsusati + __PFX__fractunsudaqi + __PFX__fractunsudahi + __PFX__fractunsudasi + __PFX__fractunsudadi + __PFX__fractunsudati + __PFX__fractunsutaqi + __PFX__fractunsutahi + __PFX__fractunsutasi + __PFX__fractunsutadi + __PFX__fractunsutati + __PFX__fractunsqiqq + __PFX__fractunsqihq + __PFX__fractunsqisq + __PFX__fractunsqidq + __PFX__fractunsqitq + __PFX__fractunsqiha + __PFX__fractunsqisa + __PFX__fractunsqida + __PFX__fractunsqita + __PFX__fractunsqiuqq + __PFX__fractunsqiuhq + __PFX__fractunsqiusq + __PFX__fractunsqiudq + __PFX__fractunsqiutq + __PFX__fractunsqiuha + __PFX__fractunsqiusa + __PFX__fractunsqiuda + __PFX__fractunsqiuta + __PFX__fractunshiqq + __PFX__fractunshihq + __PFX__fractunshisq + __PFX__fractunshidq + __PFX__fractunshitq + __PFX__fractunshiha + __PFX__fractunshisa + __PFX__fractunshida + __PFX__fractunshita + __PFX__fractunshiuqq + __PFX__fractunshiuhq + __PFX__fractunshiusq + __PFX__fractunshiudq + __PFX__fractunshiutq + __PFX__fractunshiuha + __PFX__fractunshiusa + __PFX__fractunshiuda + __PFX__fractunshiuta + __PFX__fractunssiqq + __PFX__fractunssihq + __PFX__fractunssisq + __PFX__fractunssidq + __PFX__fractunssitq + __PFX__fractunssiha + __PFX__fractunssisa + __PFX__fractunssida + __PFX__fractunssita + __PFX__fractunssiuqq + __PFX__fractunssiuhq + __PFX__fractunssiusq + __PFX__fractunssiudq + __PFX__fractunssiutq + __PFX__fractunssiuha + __PFX__fractunssiusa + __PFX__fractunssiuda + __PFX__fractunssiuta + __PFX__fractunsdiqq + __PFX__fractunsdihq + __PFX__fractunsdisq + __PFX__fractunsdidq + __PFX__fractunsditq + __PFX__fractunsdiha + __PFX__fractunsdisa + __PFX__fractunsdida + __PFX__fractunsdita + __PFX__fractunsdiuqq + __PFX__fractunsdiuhq + __PFX__fractunsdiusq + __PFX__fractunsdiudq + __PFX__fractunsdiutq + __PFX__fractunsdiuha + __PFX__fractunsdiusa + __PFX__fractunsdiuda + __PFX__fractunsdiuta + __PFX__fractunstiqq + __PFX__fractunstihq + __PFX__fractunstisq + __PFX__fractunstidq + __PFX__fractunstitq + __PFX__fractunstiha + __PFX__fractunstisa + __PFX__fractunstida + __PFX__fractunstita + __PFX__fractunstiuqq + __PFX__fractunstiuhq + __PFX__fractunstiusq + __PFX__fractunstiudq + __PFX__fractunstiutq + __PFX__fractunstiuha + __PFX__fractunstiusa + __PFX__fractunstiuda + __PFX__fractunstiuta + __PFX__satfractunsqiqq + __PFX__satfractunsqihq + __PFX__satfractunsqisq + __PFX__satfractunsqidq + __PFX__satfractunsqitq + __PFX__satfractunsqiha + __PFX__satfractunsqisa + __PFX__satfractunsqida + __PFX__satfractunsqita + __PFX__satfractunsqiuqq + __PFX__satfractunsqiuhq + __PFX__satfractunsqiusq + __PFX__satfractunsqiudq + __PFX__satfractunsqiutq + __PFX__satfractunsqiuha + __PFX__satfractunsqiusa + __PFX__satfractunsqiuda + __PFX__satfractunsqiuta + __PFX__satfractunshiqq + __PFX__satfractunshihq + __PFX__satfractunshisq + __PFX__satfractunshidq + __PFX__satfractunshitq + __PFX__satfractunshiha + __PFX__satfractunshisa + __PFX__satfractunshida + __PFX__satfractunshita + __PFX__satfractunshiuqq + __PFX__satfractunshiuhq + __PFX__satfractunshiusq + __PFX__satfractunshiudq + __PFX__satfractunshiutq + __PFX__satfractunshiuha + __PFX__satfractunshiusa + __PFX__satfractunshiuda + __PFX__satfractunshiuta + __PFX__satfractunssiqq + __PFX__satfractunssihq + __PFX__satfractunssisq + __PFX__satfractunssidq + __PFX__satfractunssitq + __PFX__satfractunssiha + __PFX__satfractunssisa + __PFX__satfractunssida + __PFX__satfractunssita + __PFX__satfractunssiuqq + __PFX__satfractunssiuhq + __PFX__satfractunssiusq + __PFX__satfractunssiudq + __PFX__satfractunssiutq + __PFX__satfractunssiuha + __PFX__satfractunssiusa + __PFX__satfractunssiuda + __PFX__satfractunssiuta + __PFX__satfractunsdiqq + __PFX__satfractunsdihq + __PFX__satfractunsdisq + __PFX__satfractunsdidq + __PFX__satfractunsditq + __PFX__satfractunsdiha + __PFX__satfractunsdisa + __PFX__satfractunsdida + __PFX__satfractunsdita + __PFX__satfractunsdiuqq + __PFX__satfractunsdiuhq + __PFX__satfractunsdiusq + __PFX__satfractunsdiudq + __PFX__satfractunsdiutq + __PFX__satfractunsdiuha + __PFX__satfractunsdiusa + __PFX__satfractunsdiuda + __PFX__satfractunsdiuta + __PFX__satfractunstiqq + __PFX__satfractunstihq + __PFX__satfractunstisq + __PFX__satfractunstidq + __PFX__satfractunstitq + __PFX__satfractunstiha + __PFX__satfractunstisa + __PFX__satfractunstida + __PFX__satfractunstita + __PFX__satfractunstiuqq + __PFX__satfractunstiuhq + __PFX__satfractunstiusq + __PFX__satfractunstiudq + __PFX__satfractunstiutq + __PFX__satfractunstiuha + __PFX__satfractunstiusa + __PFX__satfractunstiuda + __PFX__satfractunstiuta +} + +%inherit GCC_4.4.0 GCC_4.3.0 +GCC_4.4.0 { + __sync_fetch_and_add_1 + __sync_fetch_and_sub_1 + __sync_fetch_and_or_1 + __sync_fetch_and_and_1 + __sync_fetch_and_xor_1 + __sync_fetch_and_nand_1 + __sync_add_and_fetch_1 + __sync_sub_and_fetch_1 + __sync_or_and_fetch_1 + __sync_and_and_fetch_1 + __sync_xor_and_fetch_1 + __sync_nand_and_fetch_1 + __sync_bool_compare_and_swap_1 + __sync_val_compare_and_swap_1 + __sync_lock_test_and_set_1 + + __sync_fetch_and_add_2 + __sync_fetch_and_sub_2 + __sync_fetch_and_or_2 + __sync_fetch_and_and_2 + __sync_fetch_and_xor_2 + __sync_fetch_and_nand_2 + __sync_add_and_fetch_2 + __sync_sub_and_fetch_2 + __sync_or_and_fetch_2 + __sync_and_and_fetch_2 + __sync_xor_and_fetch_2 + __sync_nand_and_fetch_2 + __sync_bool_compare_and_swap_2 + __sync_val_compare_and_swap_2 + __sync_lock_test_and_set_2 + + __sync_fetch_and_add_4 + __sync_fetch_and_sub_4 + __sync_fetch_and_or_4 + __sync_fetch_and_and_4 + __sync_fetch_and_xor_4 + __sync_fetch_and_nand_4 + __sync_add_and_fetch_4 + __sync_sub_and_fetch_4 + __sync_or_and_fetch_4 + __sync_and_and_fetch_4 + __sync_xor_and_fetch_4 + __sync_nand_and_fetch_4 + __sync_bool_compare_and_swap_4 + __sync_val_compare_and_swap_4 + __sync_lock_test_and_set_4 + + __sync_fetch_and_add_8 + __sync_fetch_and_sub_8 + __sync_fetch_and_or_8 + __sync_fetch_and_and_8 + __sync_fetch_and_xor_8 + __sync_fetch_and_nand_8 + __sync_add_and_fetch_8 + __sync_sub_and_fetch_8 + __sync_or_and_fetch_8 + __sync_and_and_fetch_8 + __sync_xor_and_fetch_8 + __sync_nand_and_fetch_8 + __sync_bool_compare_and_swap_8 + __sync_val_compare_and_swap_8 + __sync_lock_test_and_set_8 + + __sync_fetch_and_add_16 + __sync_fetch_and_sub_16 + __sync_fetch_and_or_16 + __sync_fetch_and_and_16 + __sync_fetch_and_xor_16 + __sync_fetch_and_nand_16 + __sync_add_and_fetch_16 + __sync_sub_and_fetch_16 + __sync_or_and_fetch_16 + __sync_and_and_fetch_16 + __sync_xor_and_fetch_16 + __sync_nand_and_fetch_16 + __sync_bool_compare_and_swap_16 + __sync_val_compare_and_swap_16 + __sync_lock_test_and_set_16 + + __sync_synchronize +} + +%inherit GCC_4.5.0 GCC_4.4.0 +GCC_4.5.0 { + __unordxf2 + __unordtf2 +} + +%inherit GCC_4.6.0 GCC_4.5.0 +GCC_4.6.0 { + __morestack_segments + __morestack_current_segment + __morestack_initial_sp + __splitstack_find +} Index: trunk/libgcc/Makefile.in =================================================================== --- trunk.orig/libgcc/Makefile.in +++ trunk/libgcc/Makefile.in @@ -250,6 +250,10 @@ gcc_s_compile = $(gcc_compile) -DSHARED objects = $(filter %$(objext),$^) # Collect any host-specific information from Makefile fragments. + +LIBGCC_VER_GNU_PREFIX = __ +LIBGCC_VER_SYMBOLS_PREFIX = + tmake_file = @tmake_file@ include $(srcdir)/empty.mk $(tmake_file) @@ -795,6 +799,9 @@ libgcc_s$(SHLIB_EXT): libgcc.map mapfile = libgcc.map endif +libgcc-std.ver: $(srcdir)/libgcc-std.ver.in + sed -e 's/__PFX__/$(LIBGCC_VER_GNU_PREFIX)/g' < $< > $@ + libgcc_s$(SHLIB_EXT): $(libgcc-s-objects) $(extra-parts) # @multilib_flags@ is still needed because this may use # $(GCC_FOR_TARGET) and $(LIBGCC2_CFLAGS) directly. Index: trunk/gcc/Makefile.in =================================================================== --- trunk.orig/gcc/Makefile.in +++ trunk/gcc/Makefile.in @@ -1892,7 +1892,10 @@ LIB2ADD_ST = $(LIB2FUNCS_STATIC_EXTRA) # which case they will start with $(srcdir)), or generated into the build # directory (in which case they will be relative paths). srcdirify = $(patsubst $(srcdir)%,$$(gcc_srcdir)%,$(filter $(srcdir)%,$(1))) \ - $(patsubst %,$$(gcc_objdir)/%,$(filter-out $(srcdir)%,$(1))) + $(patsubst $$(libgcc_objdir)/%,%, \ + $(filter $$(libgcc_objdir)%,$(1))) \ + $(patsubst %,$$(gcc_objdir)/%, \ + $(filter-out $(srcdir)% $$(libgcc_objdir)%,$(1))) # The distinction between these two variables is no longer relevant, # so we combine them. Sort removes duplicates. Index: trunk/libgcc/config/t-gnu-prefix =================================================================== --- /dev/null +++ trunk/libgcc/config/t-gnu-prefix @@ -0,0 +1 @@ +LIBGCC_VER_GNU_PREFIX = __gnu_ Index: trunk/gcc/config/frv/t-linux =================================================================== --- trunk.orig/gcc/config/frv/t-linux +++ trunk/gcc/config/frv/t-linux @@ -29,5 +29,5 @@ EXTRA_MULTILIB_PARTS = CRTSTUFF_T_CFLAGS = -fPIC TARGET_LIBGCC2_CFLAGS = -fPIC -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \ +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver \ $(srcdir)/config/frv/libgcc-frv.ver Index: trunk/gcc/config/i386/t-cygming =================================================================== --- trunk.orig/gcc/config/i386/t-cygming +++ trunk/gcc/config/i386/t-cygming @@ -113,4 +113,4 @@ SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk # We'd like to use SHLIB_SONAME here too, but shlib_base_name # does not get substituted before mkmap-flat.awk is run. SHLIB_MKMAP_OPTS = -v pe_dll=libgcc_s_$(EH_MODEL)-$(SHLIB_SOVERSION)$(SHLIB_EXT) -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver Index: trunk/gcc/config/i386/t-linux =================================================================== --- trunk.orig/gcc/config/i386/t-linux +++ trunk/gcc/config/i386/t-linux @@ -1,5 +1,5 @@ # On 64bit we do not need any exports for glibc for 64-bit libgcc_s. # Need to support TImode for x86. Override the settings from # t-slibgcc-elf-ver and t-linux -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \ +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver \ $(srcdir)/config/i386/libgcc-glibc.ver Index: trunk/gcc/config/mips/t-slibgcc-irix =================================================================== --- trunk.orig/gcc/config/mips/t-slibgcc-irix +++ trunk/gcc/config/mips/t-slibgcc-irix @@ -49,4 +49,4 @@ SHLIB_INSTALL = \ $(LN_S) $(SHLIB_SONAME) \ $$(DESTDIR)$$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK) SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver Index: trunk/gcc/config/rs6000/t-aix43 =================================================================== --- trunk.orig/gcc/config/rs6000/t-aix43 +++ trunk/gcc/config/rs6000/t-aix43 @@ -82,7 +82,7 @@ SHLIB_INSTALL = \ $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/ SHLIB_LIBS = -lc `case @multilib_dir@ in *pthread*) echo -lpthread ;; esac` SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.ver +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.ver SHLIB_NM_FLAGS = -Bpg -X32_64 # GCC 128-bit long double support routines. Index: trunk/gcc/config/rs6000/t-aix52 =================================================================== --- trunk.orig/gcc/config/rs6000/t-aix52 +++ trunk/gcc/config/rs6000/t-aix52 @@ -63,7 +63,7 @@ SHLIB_INSTALL = \ $$(DESTDIR)$$(slibdir)@shlib_slibdir_qual@/ SHLIB_LIBS = -lc `case @multilib_dir@ in *pthread*) echo -lpthread ;; esac` SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.ver +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver $(srcdir)/config/rs6000/libgcc-ppc64.ver SHLIB_NM_FLAGS = -Bpg -X32_64 # GCC 128-bit long double support routines. Index: trunk/gcc/config/sparc/t-linux =================================================================== --- trunk.orig/gcc/config/sparc/t-linux +++ trunk/gcc/config/sparc/t-linux @@ -1,5 +1,5 @@ # Override t-slibgcc-elf-ver to export some libgcc symbols with # the symbol versions that glibc used. # Avoid the t-linux version file. -SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver \ +SHLIB_MAPFILES = $$(libgcc_objdir)/libgcc-std.ver \ $(srcdir)/config/sparc/libgcc-sparc-glibc.ver Index: trunk/gcc/tree.c =================================================================== --- trunk.orig/gcc/tree.c +++ trunk/gcc/tree.c @@ -9525,6 +9525,10 @@ build_common_builtin_nodes (void) const char *p; enum built_in_function mcode, dcode; tree type, inner_type; + const char *prefix = "__"; + + if (targetm.libfunc_gnu_prefix) + prefix = "__gnu_"; type = lang_hooks.types.type_for_mode ((enum machine_mode) mode, 0); if (type == NULL) @@ -9543,13 +9547,17 @@ build_common_builtin_nodes (void) *q = TOLOWER (*p); *q = '\0'; - built_in_names[mcode] = concat ("__mul", mode_name_buf, "3", NULL); + built_in_names[mcode] = concat (prefix, "mul", mode_name_buf, "3", + NULL); local_define_builtin (built_in_names[mcode], ftype, mcode, - built_in_names[mcode], ECF_CONST | ECF_NOTHROW | ECF_LEAF); + built_in_names[mcode], + ECF_CONST | ECF_NOTHROW | ECF_LEAF); - built_in_names[dcode] = concat ("__div", mode_name_buf, "3", NULL); + built_in_names[dcode] = concat (prefix, "div", mode_name_buf, "3", + NULL); local_define_builtin (built_in_names[dcode], ftype, dcode, - built_in_names[dcode], ECF_CONST | ECF_NOTHROW | ECF_LEAF); + built_in_names[dcode], + ECF_CONST | ECF_NOTHROW | ECF_LEAF); } } } Index: trunk/gcc/config/fixed-bit.h =================================================================== --- trunk.orig/gcc/config/fixed-bit.h +++ trunk/gcc/config/fixed-bit.h @@ -445,35 +445,39 @@ typedef union #define IBITS IBITS2(MODE_NAME) #define I_F_BITS (FBITS + IBITS) -#define FIXED_OP(OP,MODE,NUM) OP ## MODE ## NUM +#ifdef LIBGCC2_GNU_PREFIX +#define FIXED_OP(OP,MODE,NUM) __gnu_ ## OP ## MODE ## NUM +#else +#define FIXED_OP(OP,MODE,NUM) __ ## OP ## MODE ## NUM +#endif -#define FIXED_SATURATE1_TEMP(NAME) FIXED_OP(__saturate1,NAME,) -#define FIXED_SATURATE2_TEMP(NAME) FIXED_OP(__saturate2,NAME,) -#define FIXED_MULHELPER_TEMP(NAME) FIXED_OP(__mulhelper,NAME,) -#define FIXED_DIVHELPER_TEMP(NAME) FIXED_OP(__divhelper,NAME,) -#define FIXED_ASHLHELPER_TEMP(NAME) FIXED_OP(__ashlhelper,NAME,) -#define FIXED_ADD_TEMP(NAME) FIXED_OP(__add,NAME,3) -#define FIXED_SSADD_TEMP(NAME) FIXED_OP(__ssadd,NAME,3) -#define FIXED_USADD_TEMP(NAME) FIXED_OP(__usadd,NAME,3) -#define FIXED_SUB_TEMP(NAME) FIXED_OP(__sub,NAME,3) -#define FIXED_SSSUB_TEMP(NAME) FIXED_OP(__sssub,NAME,3) -#define FIXED_USSUB_TEMP(NAME) FIXED_OP(__ussub,NAME,3) -#define FIXED_MUL_TEMP(NAME) FIXED_OP(__mul,NAME,3) -#define FIXED_SSMUL_TEMP(NAME) FIXED_OP(__ssmul,NAME,3) -#define FIXED_USMUL_TEMP(NAME) FIXED_OP(__usmul,NAME,3) -#define FIXED_DIV_TEMP(NAME) FIXED_OP(__div,NAME,3) -#define FIXED_UDIV_TEMP(NAME) FIXED_OP(__udiv,NAME,3) -#define FIXED_SSDIV_TEMP(NAME) FIXED_OP(__ssdiv,NAME,3) -#define FIXED_USDIV_TEMP(NAME) FIXED_OP(__usdiv,NAME,3) -#define FIXED_NEG_TEMP(NAME) FIXED_OP(__neg,NAME,2) -#define FIXED_SSNEG_TEMP(NAME) FIXED_OP(__ssneg,NAME,2) -#define FIXED_USNEG_TEMP(NAME) FIXED_OP(__usneg,NAME,2) -#define FIXED_ASHL_TEMP(NAME) FIXED_OP(__ashl,NAME,3) -#define FIXED_ASHR_TEMP(NAME) FIXED_OP(__ashr,NAME,3) -#define FIXED_LSHR_TEMP(NAME) FIXED_OP(__lshr,NAME,3) -#define FIXED_SSASHL_TEMP(NAME) FIXED_OP(__ssashl,NAME,3) -#define FIXED_USASHL_TEMP(NAME) FIXED_OP(__usashl,NAME,3) -#define FIXED_CMP_TEMP(NAME) FIXED_OP(__cmp,NAME,2) +#define FIXED_SATURATE1_TEMP(NAME) FIXED_OP(saturate1,NAME,) +#define FIXED_SATURATE2_TEMP(NAME) FIXED_OP(saturate2,NAME,) +#define FIXED_MULHELPER_TEMP(NAME) FIXED_OP(mulhelper,NAME,) +#define FIXED_DIVHELPER_TEMP(NAME) FIXED_OP(divhelper,NAME,) +#define FIXED_ASHLHELPER_TEMP(NAME) FIXED_OP(ashlhelper,NAME,) +#define FIXED_ADD_TEMP(NAME) FIXED_OP(add,NAME,3) +#define FIXED_SSADD_TEMP(NAME) FIXED_OP(ssadd,NAME,3) +#define FIXED_USADD_TEMP(NAME) FIXED_OP(usadd,NAME,3) +#define FIXED_SUB_TEMP(NAME) FIXED_OP(sub,NAME,3) +#define FIXED_SSSUB_TEMP(NAME) FIXED_OP(sssub,NAME,3) +#define FIXED_USSUB_TEMP(NAME) FIXED_OP(ussub,NAME,3) +#define FIXED_MUL_TEMP(NAME) FIXED_OP(mul,NAME,3) +#define FIXED_SSMUL_TEMP(NAME) FIXED_OP(ssmul,NAME,3) +#define FIXED_USMUL_TEMP(NAME) FIXED_OP(usmul,NAME,3) +#define FIXED_DIV_TEMP(NAME) FIXED_OP(div,NAME,3) +#define FIXED_UDIV_TEMP(NAME) FIXED_OP(udiv,NAME,3) +#define FIXED_SSDIV_TEMP(NAME) FIXED_OP(ssdiv,NAME,3) +#define FIXED_USDIV_TEMP(NAME) FIXED_OP(usdiv,NAME,3) +#define FIXED_NEG_TEMP(NAME) FIXED_OP(neg,NAME,2) +#define FIXED_SSNEG_TEMP(NAME) FIXED_OP(ssneg,NAME,2) +#define FIXED_USNEG_TEMP(NAME) FIXED_OP(usneg,NAME,2) +#define FIXED_ASHL_TEMP(NAME) FIXED_OP(ashl,NAME,3) +#define FIXED_ASHR_TEMP(NAME) FIXED_OP(ashr,NAME,3) +#define FIXED_LSHR_TEMP(NAME) FIXED_OP(lshr,NAME,3) +#define FIXED_SSASHL_TEMP(NAME) FIXED_OP(ssashl,NAME,3) +#define FIXED_USASHL_TEMP(NAME) FIXED_OP(usashl,NAME,3) +#define FIXED_CMP_TEMP(NAME) FIXED_OP(cmp,NAME,2) #if defined (MODE_NAME) #if defined (DINT_C_TYPE) @@ -1146,14 +1150,19 @@ extern FIXED_C_TYPE FIXED_USASHL (FIXED_ #define TO_HAVE_PADDING_BITS (TO_PADDING_BITS > 0) #endif /* TO_TYPE == 4 */ -#define FIXED_CONVERT_OP(OP,FROM,TO) OP ## FROM ## TO -#define FIXED_CONVERT_OP2(OP,FROM,TO) OP ## FROM ## TO ## 2 -#define FRACT_TEMP(N1,N2) FIXED_CONVERT_OP(__fract,N1,N2) -#define FRACT2_TEMP(N1,N2) FIXED_CONVERT_OP2(__fract,N1,N2) -#define SATFRACT_TEMP(N1,N2) FIXED_CONVERT_OP(__satfract,N1,N2) -#define SATFRACT2_TEMP(N1,N2) FIXED_CONVERT_OP2(__satfract,N1,N2) -#define FRACTUNS_TEMP(N1,N2) FIXED_CONVERT_OP(__fractuns,N1,N2) -#define SATFRACTUNS_TEMP(N1,N2) FIXED_CONVERT_OP(__satfractuns,N1,N2) +#ifdef LIBGCC2_GNU_PREFIX +#define FIXED_CONVERT_OP(OP,FROM,TO) __gnu_ ## OP ## FROM ## TO +#define FIXED_CONVERT_OP2(OP,FROM,TO) __gnu_ ## OP ## FROM ## TO ## 2 +#else +#define FIXED_CONVERT_OP(OP,FROM,TO) __ OP ## FROM ## TO +#define FIXED_CONVERT_OP2(OP,FROM,TO) __ OP ## FROM ## TO ## 2 +#endif +#define FRACT_TEMP(N1,N2) FIXED_CONVERT_OP(fract,N1,N2) +#define FRACT2_TEMP(N1,N2) FIXED_CONVERT_OP2(fract,N1,N2) +#define SATFRACT_TEMP(N1,N2) FIXED_CONVERT_OP(satfract,N1,N2) +#define SATFRACT2_TEMP(N1,N2) FIXED_CONVERT_OP2(satfract,N1,N2) +#define FRACTUNS_TEMP(N1,N2) FIXED_CONVERT_OP(fractuns,N1,N2) +#define SATFRACTUNS_TEMP(N1,N2) FIXED_CONVERT_OP(satfractuns,N1,N2) /* Define conversions from fixed-point to fixed-point. */ #if FROM_TYPE == 4 && TO_TYPE == 4 Index: trunk/gcc/system.h =================================================================== --- trunk.orig/gcc/system.h +++ trunk/gcc/system.h @@ -762,8 +762,8 @@ extern void fancy_abort (const char *, i HOT_TEXT_SECTION_NAME LEGITIMATE_CONSTANT_P /* Target macros only used for code built for the target, that have - moved to libgcc-tm.h. */ - #pragma GCC poison DECLARE_LIBRARY_RENAMES + moved to libgcc-tm.h or have never been present elsewhere. */ + #pragma GCC poison DECLARE_LIBRARY_RENAMES LIBGCC2_GNU_PREFIX /* Other obsolete target macros, or macros that used to be in target headers and were not used, and may be obsolete or may never have