Module Name: src Committed By: tsutsui Date: Sun Jun 29 05:02:15 UTC 2014
Modified Files: src/external/gpl3/gcc/dist/libgcc/config/m68k: t-floatlib src/external/gpl3/gcc/lib/libgcc/arch/m68k: defs.mk Log Message: Pull the simliar workaround from gcc 4.5.4: http://mail-index.NetBSD.org/source-changes/2014/06/29/msg055885.html --- Tweak LIB1ASMFUNCS order to avoid linker warnings on libgcc_s build with -O2. Without this change, ld complains as the following: >> libgcc_s_pic.a(_float.pico):(.text+0x8): relocation truncated to fit: >> R_68K_PC16 against symbol `$_exception_handler' defined in .text section in >> libgcc_s_pic.a(_floatex.pico) _float.S and _double.S refer `$_exception_handler' declared in _floatex.S and linking the _floatex.S first seems to work around these warnings (probably caused by pic relative jump addresses). See port-m68k@ posts for more details: http://mail-index.NetBSD.org/port-m68k/2014/06/22/msg000488.html --- Note m68k/defs.mk is manually edited to avoid extra diffs. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/gpl3/gcc/dist/libgcc/config/m68k/t-floatlib cvs rdiff -u -r1.1 -r1.2 src/external/gpl3/gcc/lib/libgcc/arch/m68k/defs.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/gpl3/gcc/dist/libgcc/config/m68k/t-floatlib diff -u src/external/gpl3/gcc/dist/libgcc/config/m68k/t-floatlib:1.1.1.1 src/external/gpl3/gcc/dist/libgcc/config/m68k/t-floatlib:1.2 --- src/external/gpl3/gcc/dist/libgcc/config/m68k/t-floatlib:1.1.1.1 Sat Mar 1 08:41:47 2014 +++ src/external/gpl3/gcc/dist/libgcc/config/m68k/t-floatlib Sun Jun 29 05:02:15 2014 @@ -1,6 +1,6 @@ LIB1ASMSRC = m68k/lb1sf68.S LIB1ASMFUNCS = _mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 \ - _double _float _floatex \ + _floatex _float _double \ _eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 \ _eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2 Index: src/external/gpl3/gcc/lib/libgcc/arch/m68k/defs.mk diff -u src/external/gpl3/gcc/lib/libgcc/arch/m68k/defs.mk:1.1 src/external/gpl3/gcc/lib/libgcc/arch/m68k/defs.mk:1.2 --- src/external/gpl3/gcc/lib/libgcc/arch/m68k/defs.mk:1.1 Sat Mar 1 10:00:35 2014 +++ src/external/gpl3/gcc/lib/libgcc/arch/m68k/defs.mk Sun Jun 29 05:02:15 2014 @@ -6,7 +6,7 @@ G_INCLUDES=-I. -I. -I../.././gcc -I${GNU G_LIB2ADD=${GNUHOSTDIST}/libgcc/config/m68k/fpgnulib.c xfgnulib.c enable-execute-stack.c G_LIB2ADDEH=${GNUHOSTDIST}/libgcc/unwind-dw2.c ${GNUHOSTDIST}/libgcc/unwind-dw2-fde-dip.c ${GNUHOSTDIST}/libgcc/unwind-sjlj.c ${GNUHOSTDIST}/libgcc/unwind-c.c ${GNUHOSTDIST}/libgcc/emutls.c G_LIB2ADD_ST= -G_LIB1ASMFUNCS=_mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 _double _float _floatex _eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 _eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2 +G_LIB1ASMFUNCS=_mulsi3 _udivsi3 _divsi3 _umodsi3 _modsi3 _floatex _float _double _eqdf2 _nedf2 _gtdf2 _gedf2 _ltdf2 _ledf2 _eqsf2 _nesf2 _gtsf2 _gesf2 _ltsf2 _lesf2 G_LIB1ASMSRC=m68k/lb1sf68.S G_LIB2_DIVMOD_FUNCS=_divdi3 _moddi3 _udivdi3 _umoddi3 _udiv_w_sdiv _udivmoddi4 G_LIB2FUNCS_ST=_eprintf __gcc_bcmp