196263Sobrien# In order to work around the very problems that force us to now generally 296263Sobrien# create a libgcc.so, glibc reexported a number of routines from libgcc.a. 396263Sobrien# By now choosing the same version tags for these specific routines, we 496263Sobrien# maintain enough binary compatibility to allow future versions of glibc 596263Sobrien# to defer implementation of these routines to libgcc.so via DT_AUXILIARY. 696263Sobrien 796263Sobrien%ifdef __arch64__ 896263Sobrien%define GLIBC_VER GLIBC_2.2 996263Sobrien%else 1096263Sobrien%define GLIBC_VER GLIBC_2.0 1196263Sobrien%endif 1296263Sobrien%inherit GCC_3.0 GLIBC_VER 1396263SobrienGLIBC_VER { 1496263Sobrien # Sampling of DImode arithmetic used by (at least) i386 and m68k. 1596263Sobrien __divdi3 1696263Sobrien __moddi3 1796263Sobrien __udivdi3 1896263Sobrien __umoddi3 1996263Sobrien 2096263Sobrien # Exception handling support functions used by most everyone. 2196263Sobrien __register_frame 2296263Sobrien __register_frame_table 2396263Sobrien __deregister_frame 2496263Sobrien __register_frame_info 2596263Sobrien __deregister_frame_info 2696263Sobrien __frame_state_for 2796263Sobrien __register_frame_info_table 2896263Sobrien} 29169689Skan 30169689Skan%if !defined (__arch64__) && defined (__LONG_DOUBLE_128__) 31169689Skan 32169689Skan# long double 128 bit support from 32-bit libgcc_s.so.1 is only available 33169689Skan# when configured with --with-long-double-128. Make sure all the 34169689Skan# symbols are available at @@GCC_LDBL_* versions to make it clear 35169689Skan# there is a configurable symbol set. 36169689Skan 37169689Skan%exclude { 38169689Skan __fixtfdi 39169689Skan __fixunstfdi 40169689Skan __floatditf 41169689Skan 42169689Skan __divtc3 43169689Skan __multc3 44169689Skan __powitf2 45169689Skan} 46169689Skan 47169689Skan%inherit GCC_LDBL_3.0 GCC_3.0 48169689SkanGCC_LDBL_3.0 { 49169689Skan __fixtfdi 50169689Skan __fixunstfdi 51169689Skan __floatditf 52169689Skan} 53169689Skan 54169689Skan%inherit GCC_LDBL_4.0.0 GCC_4.0.0 55169689SkanGCC_LDBL_4.0.0 { 56169689Skan __divtc3 57169689Skan __multc3 58169689Skan __powitf2 59169689Skan} 60169689Skan 61169689Skan%endif 62