summaryrefslogtreecommitdiff
path: root/libgcc
Commit message (Collapse)AuthorAgeFilesLines
* 2011-05-29 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>ro2011-06-098-1/+200
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Joseph Myers <joseph@codesourcery.com> gcc: * config/alpha/netbsd.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/alpha/osf5.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/darwin.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/i386/mingw32.h (MINGW_ENABLE_EXECUTE_STACK): Remove. (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. [IN_LIBGCC2]: Don't include <windows.h>. * config/i386/netbsd-elf.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/i386/netbsd64.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/netbsd.h (NETBSD_ENABLE_EXECUTE_STACK): Remove. * config/openbsd.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/sol2.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/sparc/freebsd.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/sparc/netbsd-elf.h (ENABLE_EXECUTE_STACK): Remove. (HAVE_ENABLE_EXECUTE_STACK): Define. * config/alpha/alpha.c (alpha_trampoline_init): Test HAVE_ENABLE_EXECUTE_STACK. * config/i386/i386.c (ix86_trampoline_init): Likewise. * config/sparc/sparc.c (sparc32_initialize_trampoline): Likewise. (sparc64_initialize_trampoline): Likewise. * libgcc2.c [L_enable_execute_stack]: Remove. * system.h (ENABLE_EXECUTE_STACK): Poison. * doc/tm.texi.in (Trampolines, ENABLE_EXECUTE_STACK): Remove. * doc/tm.texi: Regenerate. * Makefile.in (LIBGCC2_CFLAGS): Add -fbuilding-libgcc. gcc/c-family: * c.opt (fbuilding-libgcc): New option. * c-cppbuiltin.c (c_cpp_builtins): Define __LIBGCC_TRAMPOLINE_SIZE__ if flag_building_libgcc. libgcc: * enable-execute-stack-empty.c: New file. * enable-execute-stack-mprotect.c: New file. * config/i386/enable-execute-stack-mingw32.c: New file. * config.host (enable_execute_stack): New variable. Select appropriate variants. * configure.ac: Link enable-execute-stack.c to $enable_execute_stack. * configure: Regenerate. * Makefile.in (LIB2ADD): Add enable-execute-stack.c. (lib2funcs): Remove _enable_execute_stack. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174843 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-06-09 David S. Miller <davem@davemloft.net>ro2011-06-092-2/+9
| | | | | | | | | | | Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> * config.host (sparc-*-linux*): Correct md_unwind_header filename. (s390x-ibm-tpf*): Fix typo. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174838 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-063-7/+12
| | | | | | | | | | | | | | | * config/mips/iris6.h (ENDFILE_SPEC): Use crtfastmath.o if -ffast-math etc. libgcc: * config.host (mips-sgi-irix6.5*): Add t-crtfm to tmake_file. Add crtfastmath.o to extra_parts. (mips64*-*-linux*, mips*-*-linux*): Use t-crtfm instead of mips/t-crtfm. * config/mips/t-crtfm: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174686 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.host (hppa*-*-linux*): Correct md_unwind_header name.danglin2011-06-042-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174640 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.host (sh*-*-linux*): Fix typo.kkojima2011-06-042-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174631 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-0326-4/+4724
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config/alpha/linux.h (MD_UNWIND_SUPPORT): Remove. * config/alpha/osf5.h (MD_UNWIND_SUPPORT): Remove. * config/alpha/vms.h (MD_UNWIND_SUPPORT): Remove. * config/bfin/linux.h (MD_UNWIND_SUPPORT): Remove. * config/bfin/uclinux.h (MD_UNWIND_SUPPORT): Remove. * config/i386/linux.h (MD_UNWIND_SUPPORT): Remove. * config/i386/linux64.h (MD_UNWIND_SUPPORT): Remove. * config/i386/sol2.h (MD_UNWIND_SUPPORT): Remove. * config/i386/mingw32.h (MD_UNWIND_SUPPORT): Remove. * config/ia64/linux.h (MD_UNWIND_SUPPORT): Remove. * config/ia64/vms.h (MD_UNWIND_SUPPORT): Remove. * config/m68k/linux.h (MD_UNWIND_SUPPORT): Remove. * config/mips/linux.h (MD_UNWIND_SUPPORT): Remove. * config/pa/pa-hpux.h (MD_UNWIND_SUPPORT): Remove. * config/pa/pa32-linux.h (MD_UNWIND_SUPPORT): Remove. * config/rs6000/darwin.h (MD_UNWIND_SUPPORT): Remove. * config/rs6000/linux.h (MD_UNWIND_SUPPORT): Remove. * config/rs6000/linux64.h (MD_UNWIND_SUPPORT): Remove. * config/s390/linux.h (MD_UNWIND_SUPPORT): Remove. * config/s390/tpf.h (MD_UNWIND_SUPPORT): Remove. * config/sh/linux.h (MD_UNWIND_SUPPORT): Remove. * config/sparc/linux.h (MD_UNWIND_SUPPORT): Remove. * config/sparc/linux64.h (MD_UNWIND_SUPPORT): Remove. * config/sparc/sol2.h (MD_UNWIND_SUPPORT): Remove. * config/xtensa/linux.h (MD_UNWIND_SUPPORT): Remove. * config/alpha/linux-unwind.h: Move to ../libgcc/config/alpha. * config/alpha/osf5-unwind.h: Move to ../libgcc/config/alpha. * config/alpha/vms-unwind.h: Move to ../libgcc/config/alpha. * config/bfin/linux-unwind.h: Move to ../libgcc/config/bfin. * config/i386/linux-unwind.h: Move to ../libgcc/config/i386. * config/i386/sol2-unwind.h: Move to ../libgcc/config/i386. * config/i386/w32-unwind.h: Move to ../libgcc/config/i386. * config/ia64/linux-unwind.h: Move to ../libgcc/config/ia64. * config/ia64/vms-unwind.h: Move to ../libgcc/config/ia64. * config/m68k/linux-unwind.h: Move to ../libgcc/config/m68k. * config/mips/linux-unwind.h: Move to ../libgcc/config/mips. * config/pa/hpux-unwind.h: Move to ../libgcc/config/pa. * config/pa/linux-unwind.h: Move to ../libgcc/config/pa. * config/rs6000/darwin-unwind.h: Move to ../libgcc/config/rs6000. * config/rs6000/linux-unwind.h: Move to ../libgcc/config/rs6000. * config/s390/linux-unwind.h: Move to ../libgcc/config/s390. * config/s390/tpf-unwind.h: Move to ../libgcc/config/s390. * config/sh/linux-unwind.h: Move to ../libgcc/config/sh. * config/sparc/linux-unwind.h: Move to ../libgcc/config/sparc. * config/sparc/sol2-unwind.h: Move to ../libgcc/config/sparc. * config/xtensa/linux-unwind.h: Move to ../libgcc/config/xtensa. * config/darwin9.h (DARWIN_LIBSYSTEM_HAS_UNWIND): Remove. * system.h (MD_UNWIND_SUPPORT): Poison. * doc/tm.texi.in (Exception Handling, MD_UNWIND_SUPPORT): Remove. * doc/tm.texi: Regenerate. * unwind-dw2.c: Include md-unwind-support.h instead of MD_UNWIND_SUPPORT. * config/ia64/unwind-ia64.c: Likewise. * config/xtensa/unwind-dw2-xtensa.c: Likewise. libgcc: * config/alpha/linux-unwind.h: Move from ../gcc/config/alpha. * config/alpha/osf5-unwind.h: Move from ../gcc/config/alpha. * config/alpha/vms-unwind.h: Move from ../gcc/config/alpha. * config/bfin/linux-unwind.h: Move from ../gcc/config/bfin. * config/i386/linux-unwind.h: Move from ../gcc/config/i386. * config/i386/sol2-unwind.h: Move from ../gcc/config/i386. * config/i386/w32-unwind.h: Move from ../gcc/config/i386. Wrap in !__MINGW64__. * config/ia64/linux-unwind.h: Move from ../gcc/config/ia64. * config/ia64/vms-unwind.h: Move from ../gcc/config/ia64. * config/m68k/linux-unwind.h: Move from ../gcc/config/m68k. * config/mips/linux-unwind.h: Move from ../gcc/config/mips. * config/pa/hpux-unwind.h: Move from ../gcc/config/pa. * config/pa/linux-unwind.h: Move from ../gcc/config/pa. * config/rs6000/darwin-unwind.h: Move from ../gcc/config/rs6000. Wrap in !__LP64__. * config/rs6000/linux-unwind.h: Move from ../gcc/config/rs6000. * config/s390/linux-unwind.h: Move from ../gcc/config/s390. * config/s390/tpf-unwind.h: Move from ../gcc/config/s390. * config/sh/linux-unwind.h: Move from ../gcc/config/sh. * config/sparc/linux-unwind.h: Move from ../gcc/config/sparc. * config/sparc/sol2-unwind.h: Move from ../gcc/config/sparc. * config/xtensa/linux-unwind.h: Move from ../gcc/config/xtensa. * config/no-unwind.h: New file. * config.host (md_unwind_header): Document. Define. (alpha*-*-linux*, alpha*-dec-osf5.1*, alpha64-dec-*vms*, alpha*-dec-*vms*, bfin*-uclinux*, bfin*-linux-uclibc*, hppa*-*-linux*, hppa[12]*-*-hpux10*, hppa*64*-*-hpux11*, hppa[12]*-*-hpux11*): Set md_unwind_header. (i[34567]86-*-linux*): Handle i[34567]86-*-kopensolaris*-gnu. Set md_unwind_header. (x86_64-*-linux*, i[34567]86-*-solaris2*): Set md_unwind_header. (i[34567]86-*-cygwin*): Split from i[34567]86-*-mingw*. (i[34567]86-*-mingw*, ia64*-*-linux*, ia64-hp-*vms*, m68k-*-uclinux*, m68k-*-linux*, mips64*-*-linux*, mips*-*-linux*, powerpc-*-darwin*, powerpc-*-linux*, s390-*-linux*, s390x-*-linux*, s390x-ibm-tpf*, sh*-*-linux*, sparc-*-linux*, sparc*-*-solaris2*, sparc64-*-linux*, xtensa*-*-linux*): Set md_unwind_header. * configure.ac: Link md-unwind-support.h to $md_unwind_header. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174613 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-036-1/+166
| | | | | | | | | | | | | | | | | | | | | | | * config.gcc (mips-sgi-irix6.5*): Set tmake_file to mips/t-irix6 t-slibgcc-dummy. * config/mips/irix-crti.asm: Move to ../libgcc/config/mips/irix-crti.S. * config/mips/irix-crtn.asm: Move to ../libgcc/config/mips/irix-crtn.S. * config/mips/t-iris: Remove. * config/mips/t-irix6: New file. * config/mips/t-slibgcc-irix: Move to ../libgcc/config/mips. libgcc: * config.host (mips-sgi-irix[56]*): Restrict to mips-sgi-irix6.5*. Set tmake_file, extra_parts. * config/mips/irix-crti.S: Move from ../gcc/config/mips/irix-crti.asm. Remove O32 support. * config/mips/irix-crtn.S: Move from ../gcc/config/mips/irix-crtn.asm. Remove O32 support. * config/mips/t-irix6: New file. * config/mips/t-slibgcc-irix: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174608 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-033-3/+7
| | | | | | | | | | | | | | | | | * Makefile.in (LIB2ADDEHDEP): Remove. * config/arm/t-bpabi (LIB2ADDEHDEP): Remove. * config/arm/t-symbian (LIB2ADDEHDEP): Remove. * config/picochip/t-picochip (LIB2ADDEHDEP): Remove. * config/t-darwin (LIB2ADDEHDEP): Remove. * config/t-freebsd (LIB2ADDEHDEP): Remove. * config/t-linux (LIB2ADDEHDEP): Remove. libgcc: * config/s390/t-tpf (LIB2ADDEHDEP): Remove. * config/t-sol2 (LIB2ADDEH): Use gcc_srcdir, add emutls.c. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174606 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-0310-2/+126
| | | | | | | | | | | | | | | | | | | | | * config/alpha/t-osf5: Remove. * config/alpha/t-osf-pthread: Remove. * config.gcc (alpha*-dec-osf5.1*): Set tmake_file to t-slibgcc-dummy. * mkmap-flat.awk: Handle osf_export for Tru64 UNIX linker -input file. libgcc: * configure.ac (target_thread_file): Determine thread model. * configure: Regenerate. * config.host (alpha*-dec-osf5.1*): Set tmake_file, extra_parts. * config/alpha/t-alpha: New file. * config/alpha/t-crtfm: Use $<. * config/alpha/t-ieee: New file. * config/alpha/t-osf-pthread: New file. * config/alpha/t-slibgcc-osf: New file. * config/alpha/libgcc-osf5.ver: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174603 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-012-0/+8
| | | | | | | | | | | | | | | | | | | | * config/i386/crtfastmath.c [!__x86_64__ && __sun__ && __svr4__]: Include <signal.h>, <ucontext.h>. (sigill_caught): Define. (sigill_hdlr): New function. (set_fast_math) [!__x86_64__ && __sun__ && __svr4__]: Check if SSE insns can be executed. * config/sol2.h (ENDFILE_SPEC): Use crtfastmath.o if -ffast-math etc. * config/sparc/sol2.h (ENDFILE_SPEC): Remove. libgcc: * config.host (i[34567]86-*-solaris2*): Add i386/t-crtfm to tmake_file. Add crtfastmath.o to extra_parts. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174532 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/gmon-sol2.c: Reindent.ro2011-06-012-443/+363
| | | | | | | | | | | | | | Cleanup comments. Remove, correct casts. Use STDERR_FILENO, NULL. (BASEADDRESS): Remove. (minbrk): Remove. (errno, sbrk): Remove declarations. (monstartup) [hp300]: Remove. (mcount): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174531 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-06-0127-46/+1260
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config/t-slibgcc-darwin: Move to ... * config/t-slibgcc-dummy: .. this. Clarify comments. * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*, powerpc-*-darwin*, powerpc64-*-darwin*): Reflect this. (i[3456x]86-*-netware*): Add t-slibgcc-dummy to tmake_file. (i[34567]86-*-rtems*): Remove extra_parts. Use i386/t-rtems. Remove i386/t-crtstuff from tmake_file. (i[34567]86-*-solaris2*): Remove t-svr4, t-slibgcc-elf-ver, t-slibgcc-sld from tmake_file, add t-slibgcc-dummy. (sparc-*-elf*, sparc64-*-elf*): Remove tmake_file, extra_parts. (sparc-*-rtems*, sparc64-*-rtems*): Remove sparc/t-crtin, sparc/t-crtfm from tmake_file. (sparc*-*-solaris2*): Remove sparc/t-sol2, sparc/t-crtfm, t-slibgcc-elf-ver, t-slibgcc-sld, add t-slibgcc-dummy. Remove extra_parts. * config/t-sol2 (TARGET_LIBGCC2_CFLAGS): Define. * config/i386/t-nwld (SHLIB_LINK): Remove. * config/i386/t-rtems-i386: Rename to ... * config/i386/t-rtems: ... this. ($(T)crti.o, $(T)crtn.o): Remove. (FPBIT, DPBIT, LIB2FUNCS_EXTRA): Remove. (dp-bit.c, fp-bit.c, xp-bit.c): Remove. (EXTRA_MULTILIB_PARTS, LIBGCC, INSTALL_LIBGCC): Remove. * config/i386/t-sol2-10 (LIBGCC, INSTALL_LIBGCC, EXTRA_MULTILIB_PARTS): Remove. * config/sparc/t-sol2-64: Likewise. * config/sparc/t-sol2: Remove. * config/sparc/t-crtin: Remove. * config/sparc/gmon-sol2.c: Move to ../libgcc/config. * config/i386/gmon-sol2.c: Remove. * config/i386/sol2-c1.asm: Move to ../libgcc/config/i386/sol2-c1.S. * config/i386/sol2-ci.asm: Move to ../libgcc/config/i386/sol2-ci.S. * config/i386/sol2-cn.asm: Move to ../libgcc/config/i386/sol2-cn.S. * config/i386/sol2-gc1.asm: Remove. * config/sparc/sol2-c1.asm: Move to ../libgcc/config/sparc/sol2-c1.S. * config/sparc/sol2-ci.asm: Move to ../libgcc/config/sparc/sol2-ci.S. * config/sparc/sol2-cn.asm: Move to ../libgcc/config/sparc/sol2-cn.S. * config/t-slibgcc-sld: Remove. libgcc: * Makefile.in (cpu_type): Define. * config.host (i[34567]86-*-rtems*): Handle it. (i[34567]86-*-solaris2*): Move body ... (*-*-solaris2*): ... here. New case, generalize. (sparc-*-elf*): Handle it. (sparc-*-linux*, sparc64-*-linux*): Replace sparc/t-crtfm by t-crtfm. (sparc-*-rtems*, sparc64-*-rtems*); Handle it. (sparc64-*-solaris2*, sparcv9-*-solaris2*, sparc-*-solaris2*): Fold into ... (sparc*-*-solaris2*): ... this. New case. (sparc64-*-elf*): Handle it. * config/gmon-sol2.c: Move from ../gcc/config/sparc. Merge ../gcc/config/i386/gmon-sol2.c. * config/i386/sol2-c1.S: Move from ../gcc/config/i386/sol2-c1.asm. Use C comments. Merge ../gcc/config/i386/sol2-gc1.asm. * config/i386/sol2-ci.S: Move from ../gcc/config/i386/sol2-ci.asm. Use C comments. * config/i386/sol2-cn.S: Move from ../gcc/config/i386/sol2-cn.asm. Use C comments. * config/i386/t-crtfm (crtfastmath.o): Use $<. * config/i386/t-crtstuff: New file. * config/i386/t-softfp: New file. * config/i386/t-sol2 ($(T)gmon.o, $(T)gcrt1.o, $(T)crt1.o), $(T)crti.o, $(T)crtn.o): Remove. (gcrt1.o): New rule. (TARGET_LIBGCC2_CFLAGS): Remove. * config/sparc/sol2-c1.S: Move from ../gcc/config/sparc/sol2-c1.asm. * config/sparc/sol2-ci.S: Move from ../gcc/config/sparc/sol2-ci.asm. * config/sparc/sol2-cn.S: Move from ../gcc/config/sparc/sol2-cn.asm. * config/sparc/t-sol2: New file. * config/sparc/t-crtfm: Move to ... * config/t-crtfm: ... this. Use $(cpu_type), $<. * config/t-crtin: New file. * config/sparc/t-softfp: New file. * config/sparc/t-softmul: New file. * config/t-rtems: New file. * config/t-slibgcc: New file. * config/t-slibgcc-elf-ver: New file. * config/t-slibgcc-gld: New file. * config/t-slibgcc-sld: New file. * config/t-sol2: New file. * configure.ac: Include ../config/lib-ld.m4. Call AC_LIB_PROG_LD_GNU. Substitute cpu_type. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174529 138bc75d-0d04-0410-961f-82ee72b054a4
* PR bootstrap/49173bernds2011-05-274-3/+11
| | | | | | | | | | * config/t-slibgcc-darwin (SHLIB_MAPFILES): Look for libgcc-std.ver in the build directory. * config/s390/t-linux (SHLIB_MAPFILES): Likewise. * config/sh/t-linux (SHLIB_MAPFILES): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174321 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/bernds2011-05-254-0/+1938
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174187 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-05-232-1/+5
| | | | | | | | | | | | | | | | | | | | | | * gthr-gnat.c: Remove. * gthr-gnat.h: Remove. * Makefile.in (LIB2ADDEH): Remove $(srcdir)/gthr-gnat.c. * config/t-freebsd (LIB2ADDEH): Likewise. * config/t-linux (LIB2ADDEH): Likewise. * config/t-sol2 (LIB2ADDEH): Likewise. * config/ia64/t-vms (LIB2ADDEH): Likewise. * configure.ac (target_thread_file): Remove gnat handling. * configure: Regenerate. * doc/install.texi (Configuration, --enable-threads): Remove gnat. gcc/po: * EXCLUDES: Remove gthr-gnat.c, gthr-gnat.h. libgcc: * config/s390/t-tpf (LIB2ADDEH): Remove $(gcc_srcdir)/gthr-gnat.c. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174064 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:jsm282011-05-102-0/+36
| | | | | | | | | | | | * config.gcc (i[34567]86-*-darwin*, x86_64-*-darwin*): Add i386/darwin-lib.h to $libgcc_tm_file. * config/i386/darwin.h (DECLARE_LIBRARY_RENAMES): Remove. libgcc: * config/i386/darwin-lib.h: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173622 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:jsm282011-05-102-0/+32
| | | | | | | | | | | | | | | | | | | | | * config.gcc (libgcc_tm_file): Define instead of including files from ../../libgcc/config/ in tm_file. * configure.ac (libgcc_tm_file_list, libgcc_tm_include_list): Define. * configure: Regenerate. * Makefile.in (libgcc_tm_file_list, libgcc_tm_include_list, libgcc_tm.h, cs-libgcc_tm.h): New. (TM_H): Include libgcc_tm.h and $(libgcc_tm_file_list). (clean): Remove libgcc_tm.h. * config/arm/symbian.h (RENAME_LIBRARY): Remove. * mkconfig.sh: Include libgcc_tm.h in tm.h if USED_FOR_TARGET. * system.h (DECLARE_LIBRARY_RENAMES): Poison. libgcc: * config/arm/symbian-lib.h: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173619 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-04 Chris Demetriou <cgd@google.com>cgd2011-05-042-9/+13
| | | | | | | | | * config/i386/morestack.S (__i686.get_pc_thunk.bx): Rename to... (__x86.get_pc_thunk.bx): ...this. (__morestack): Adjust for rename, remove undef of __i686. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173391 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-05-03 Chris Demetriou <cgd@google.com>cgd2011-05-032-0/+22
| | | | | | | * config/i386/morestack.S (__i686.get_pc_thunk.bx): New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173345 138bc75d-0d04-0410-961f-82ee72b054a4
* * MAINTAINERS (crx port, m68hc11 port): Remove. Move maintainersjsm282011-03-222-31/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to Write After Approval. * config-ml.in: Don't handle arc-*-elf*. * configure.ac (arc-*-*, crx-*-*, i[[3456789]]86-*-pe, m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*, mcore-*-pe*): Don't handle GCC libraries. * configure: Regenerate. contrib: * compare-all-tests (all_targets): Remove crx and m68hc11. fixincludes: * mkfixinc.sh: Don't handle i?86-moss-msdos* or i?86-*-pe. gcc: * config/alpha/gnu.h: Remove. * config/arc: Remove directory. * config/arm/netbsd.h: Remove. * config/arm/t-pe: Remove. * config/crx: Remove directory. * config/i386/netbsd.h: Remove. * config/m68hc11: Remove directory. * config/m68k/uclinux-oldabi.h: Remove. * config/mcore/mcore-pe.h: Remove. * config/mcore/t-mcore-pe: Remove. * config/netbsd-aout.h: Remove. * config/rs6000/gnu.h: Remove. * config/sh/sh-symbian.h: Remove. * config/sh/symbian-base.c: Remove. * config/sh/symbian-c.c: Remove. * config/sh/symbian-cxx.c: Remove. * config/sh/symbian-post.h: Remove. * config/sh/symbian-pre.h: Remove. * config/sh/t-symbian: Remove. * config/svr3.h: Remove. * config/vax/netbsd.h: Remove. * config.build: Don't handle i[34567]86-*-pe. * config.gcc: Remove handling of deprecations for most deprecated targets. (m68k-*-uclinuxoldabi*): Add to second deprecated list. (alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*, arm-*-pe*, crx-*-elf, i[34567]86-*-netbsd*, i[34567]86-*-pe, m68hc11-*-*|m6811-*-*, m68hc12-*-*|m6812-*-*, m68k-*-uclinuxoldabi*, mcore-*-pe*, powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*, sh-*-symbianelf* | sh[12346l]*-*-symbianelf*, vax-*-netbsd*): Remove cases. * config.host: Don't handle i[34567]86-*-pe. * config/rs6000/linux64.h (LINK_OS_GNU_SPEC): Remove. (ASM_SPEC32): Don't handle -mcall-gnu. * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Don't handle -mcall-gnu. (ASM_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC, CPP_SPEC, STARTFILE_SPEC, LIB_SPEC, ENDFILE_SPEC): Don't handle -mcall-gnu. (LIB_GNU_SPEC, STARTFILE_GNU_SPEC, ENDFILE_GNU_SPEC, LINK_START_GNU_SPEC, LINK_OS_GNU_SPEC, CPP_OS_GNU_SPEC): Remove. (SUBTARGET_EXTRA_SPECS): Remove *_gnu specs. * config/sh/sh-protos.h, config/sh/sh.c: Remove all code conditional on SYMBIAN. * configure.ac: Don't handle powerpc*-*-gnu*. * configure: Regenerate. * doc/extend.texi (interrupt attribute): Don't mention CRX. * doc/install-old.texi (m6811, m6812): Don't mention. * doc/install.texi (arc-*-elf*): Don't document multilib option. (arc-*-elf, CRX, m6811-elf, m6812-elf): Remove. (m68k-uclinuxoldabi): Don't mention. * doc/invoke.texi (ARC Options, CRX Options, M68hc1x Options): Remove. (-mcall-gnu): Remove. * doc/md.texi (CRX Architecture, Motorola 68HC11 & 68HC12 families): Remove constraint documentation. gcc/testsuite: * gcc.c-torture/execute/920501-8.x: Remove. * gcc.c-torture/execute/930513-1.x: Remove. * gcc.c-torture/execute/960312-1.x: Remove. * gcc.c-torture/compile/20000804-1.c, gcc.c-torture/compile/20001205-1.c, gcc.c-torture/compile/20001226-1.c, gcc.c-torture/compile/20010518-2.c, gcc.c-torture/compile/20020312-1.c, gcc.c-torture/compile/20020604-1.c, gcc.c-torture/compile/920501-12.c, gcc.c-torture/compile/920501-4.c, gcc.c-torture/compile/920520-1.c, gcc.c-torture/compile/980506-1.c, gcc.c-torture/execute/980709-1.x, gcc.c-torture/execute/990826-0.x: Don't XFAIL or use special options for m68hc11. * gcc.dg/cpp/assert4.c: Don't handle ARC. * gcc.dg/sibcall-3.c, gcc.dg/sibcall-4.c: Don't XFAIL for arc or m68hc11. libgcc: * config.host (alpha*-*-gnu*, arc-*-elf*, arm*-*-netbsd*, arm-*-pe*, crx-*-elf, i[34567]86-*-netbsd*, i[34567]86-*-pe, m68hc11-*-*|m6811-*-*, m68hc12-*-*|m6812-*-*, mcore-*-pe*, powerpc64-*-gnu*, powerpc-*-gnu-gnualtivec*, powerpc-*-gnu*, sh-*-symbianelf* | sh[12346l]*-*-symbianelf*, vax-*-netbsd*): Remove cases. libstdc++-v3: * configure.ac: Don't handle powerpc*-*-gnu*. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171302 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-03-14 Andreas Tobler <andreast@fgznet.ch>andreast2011-03-142-1/+7
| | | | | | | | * config.host (cpu_type): Add FreeBSD PowerPC specific parts. Adjust copyright year. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170931 138bc75d-0d04-0410-961f-82ee72b054a4
* * generic-morestack.c (__splitstack_find): Adjust returned stackian2011-03-072-10/+19
| | | | | | | pointer to include all registers pushed by __morestack. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170757 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/ChangeLog:davek2011-01-264-0/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR target/40125 * config.gcc (i[34567]86-*-pe | i[34567]86-*-cygwin*): Select suitable t-dlldir{,-x} fragment for build and add it to tmake_file. (i[34567]86-*-mingw* | x86_64-*-mingw*): Likewise. * Makefile.in (libgcc.mvars): Also export SHLIB_DLLDIR to libgcc. * config/i386/t-dlldir: New file. (SHLIB_DLLDIR): Define. * config/i386/t-dlldir-x: New file. (SHLIB_DLLDIR): Define. * config/i386/t-cygming: Error out if SHLIB_DLLDIR is not set. (SHLIB_INSTALL): Use it. libgcc/ChangeLog: PR target/40125 * configure.ac: Call ACX_NONCANONICAL_TARGET. (toolexecdir): Calculate and AC_SUBST. (toolexeclibdir): Likewise. * Makefile.in (target_noncanonical): Import. (toolexecdir): Likewise. (toolexeclibdir): Likewise. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169274 138bc75d-0d04-0410-961f-82ee72b054a4
* Update Copyright years for files modified in 2010.jakub2011-01-032-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168438 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/froydnj2010-12-132-0/+6
| | | | | | | | | | | | | | | PR target/46040 * config.gcc (arm*-*-linux-*eabi): Use bpabi-lib.h. (arm*-*-uclinux*eabi, arm*-*-eabi*): Likewise. libgcc/ PR target/46040 * config/arm/bpabi.h: Rename to... * config/arm/bpabi-lib.h: ...this. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167751 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure.ac: Use i386/t-crtstuff on i?86-*-solaris2* ifro2010-12-103-2/+8
| | | | | | | | appropriate. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167696 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/froydnj2010-11-243-6/+8
| | | | | | | | | | | | | | | | | | | | | | * cppbuiltin.c (define_builtin_macros_for_type_sizes): Define __FLOAT_WORD_ORDER__ according to FLOAT_WORDS_BIG_ENDIAN. * config/dfp-bit.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete. * doc/cpp.texi (__FLOAT_WORD_ORDER__): Document. * system.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Poison. libgcc/ * config/libbid/bid_conf.h (BID_BIG_ENDIAN): Define in terms of __FLOAT_WORD_ORDER__. * config/libbid/bid_gcc_intrinsics.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete. libdecnumber/ * dconfig.h (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Delete. (WORDS_BIG_ENDIAN): Define based on value of __FLOAT_WORD_ORDER__. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167129 138bc75d-0d04-0410-961f-82ee72b054a4
* PR other/46202: implement install-strip.rwild2010-11-202-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | /: PR other/46202 * configure.ac: Fix just-built in-tree STRIP name to be binutils/strip-new. * configure: Regenerate. * Makefile.def (install-strip-gcc, install-strip-binutils) (install-strip-opcodes, install-strip-ld, install-strip-itcl) (install-strip-sid): Mirror dependencies on non-strip variants of these targets on the respective -strip prerequisites. * Makefile.tpl (install-strip, install-strip-host) (install-strip-target): New targets. (install-strip-[+module+], install-strip-target-[+module+]): New targets. * Makefile.in: Regenerate. gcc/: PR other/46202 * Makefile.in (install_sh, INSTALL_STRIP_PROGRAM): New variables. (AR_FOR_TARGET, RANLIB_FOR_TARGET, STRIP_FOR_TARGET): Fix shell quoting. (STRIP_FOR_TARGET): Look for in-tree strip under name strip-new. (install-strip): New target. (STRIPPROG): New variable, exported if STRIP is set. * doc/install.texi (Final install): Minor markup and code style fixes. Document install-strip target. fixincludes/: PR other/46202 * Makefile.in (install-strip): New phony target. (all, check, install): Also mark as phony. libgcc/: PR other/46202 * Makefile.in (install-strip): New phony target. libiberty/: PR other/46202 * Makefile.in (install-strip): New phony target. (install): Also mark as phony. gnattools/: PR other/46202 * Makefile.in (install-strip): New phony target. (check, installcheck, info, dvi, pdf, html, install) (install-info, install-pdf, install-html, mostlyclean) (clean, distclean, maintainer-clean): Mark phony. libada/: PR other/46202 * Makefile.in (install-strip): New phony target. (check, installcheck, info, dvi, pdf, html, install) (install-info, install-pdf, install-html, mostlyclean) (clean, distclean, maintainer-clean): Mark phony. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166980 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/:ian2010-11-082-0/+40
| | | | | | | | | | | | PR target/46089 * config/i386/i386.c (split_stack_fn_large): New static variable. (ix86_expand_split_stack_prologue): Handle large model. libgcc/: * config/i386/morestack.S (__morestack_large_model): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166427 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/froydnj2010-10-232-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cppbuiltin.c (define_builtin_macros_for_type_sizes): Define __BYTE_ORDER__, __ORDER_LITTLE_ENDIAN__, __ORDER_BIG_ENDIAN__, and __ORDER_PDP_ENDIAN__. * libgcc2.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. (struct DWstruct): Define based on __BYTE_ORDER__. * config/fixed-bit.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. (struct INTstruct): Define based on __BYTE_ORDER__. * config/dfp-bit.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__. * system.h (LIBGCC2_WORDS_BIG_ENDIAN): Poison identifier. * config/arc/arc.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/arm/arm.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/ia64/ia64.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/iq2000/iq2000.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/lm32/lm32.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/m32r/m32r.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/mcore/mcore.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/mep/mep.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/mips/mips.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/rs6000/sysv4.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/rx/rx.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/score/score.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/sh/sh.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/sparc/sparc.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * config/xtensa/xtensa.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * doc/tm.texi.in (LIBGCC2_WORDS_BIG_ENDIAN): Delete. * doc/tm.texi: Regenerate. * doc/cpp.texi (__BYTE_ORDER__, __ORDER_LITTLE_ENDIAN__): Document. (__ORDER_BIG_ENDIAN__, __ORDER_PDP_ENDIAN__): Likewise. libdecnumber/ * dconfig.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__. libgcc/ * config/libbid/bid_gcc_intrinsics.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete. (LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165881 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/froydnj2010-10-143-0/+268
| | | | | | | | | | | | | | | | | | | | * config.gcc (arm*-*-linux-*eabi) <tm_file>: Add bpabi.h from libgcc. (arm*-*-uclinux*eabi) <tm_file>: Likewise. (arm*-*-eabi*) <tm_file>: Likewise. (frv-*-elf) <tm_file>: Add frv-abi.h from libgcc. (frv-*-*linux*) <tm_file>: Likewise. * config/arm/bpabi.h: Delete DECLARE_LIBRARY_RENAMES stanzas and associated helper macros. * config/frv/frv-abi.h: Delete. libgcc/ * config/arm/bpabi.h: New file. * config/frv/frv-abi.h: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165463 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/t-stack(LIB2ADD_ST): Set instead of LIB2ADD.ian2010-10-013-3/+7
| | | | | | | * config/i386/t-stack-i386 (LIB2ADD_ST): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164893 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove the extra `$'.hjl2010-10-011-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164878 138bc75d-0d04-0410-961f-82ee72b054a4
* Add the missing `$'.hjl2010-10-012-1/+6
| | | | | | | | | | 2010-10-01 H.J. Lu <hongjiu.lu@intel.com> PR target/45858 * config.host: Add the missing `$'. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164876 138bc75d-0d04-0410-961f-82ee72b054a4
* Check in support for Xilinx MicroBlaze processor. eager2010-09-3012-0/+875
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164756 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure.ac: Adjust CFI test to test assembler directly ratherian2010-09-293-4/+19
| | | | | | | | than checking gcc preprocessor macro. * configure: Rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164713 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/:ian2010-09-284-1/+37
| | | | | | | | | | | | | * config/i386/i386.c (ix86_supports_split_stack): -fsplit-stack requires assembler support for CFI directives. libgcc/: * configure.ac: Test whether assembler supports CFI directives. * config.host: Only add t-stack and i386/t-stack-i386 to tmake_file if libgcc_cv_cfi is "yes". * configure: Rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164671 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/:ian2010-09-278-1/+1668
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common.opt (fsplit-stack): New option. * opts.c (decode_options): Set flag_split_stack to final value. * target.def (supports_split_stack): New hook. * gcc.c (STACK_SPLIT_SPEC): Define. (LINK_COMMAND_SPEC): Use STACK_SPLIT_SPEC. * doc/invoke.texi (Option Summary): Mention -fsplit-stack. (Code Gen Options): Document -fsplit-stack. * doc/extend.texi (Function Attributes): Mention no_split_stack. (Function Attributes): Document no_split_stack. * doc/tm.texi.in (Stack Smashing Protection): Add @hook TARGET_SUPPORTS_SPLIT_STACK. * doc/tm.texi: Rebuild. * function.c (thread_prologue_and_epilogue_insns): If flag_split_stack, add split stack prologue. * explow.c (allocate_dynamic_stack_space): Support -fsplit-stack. * varasm.c (saw_no_split_stack): New static variable. (assemble_start_function): Set saw_no_split_stack if the function has the no_split_stack attribute. (file_end_indicate_split_stack): New function. * output.h (file_end_indicate_split_stack): Declare. * libgcc-std.ver (GCC_4.6.0): Add -fsplit-stack support variables and function. * doc/libgcc.texi (Miscellaneous routines): Document -fsplit-stack routines. * config/i386/i386.c (ix86_option_override_internal): Don't set expand_builtin_va_start to NULL if -fsplit-stack. (ix86_function_regparm): Reduce local regparm by 1 for 32-bit -fsplit-stack. (ix86_va_start): If -fsplit-stack, get overflow pointer from scratch register set by prologue. (ix86_code_end): If -fsplit-stack, call file_end_indicate_split_stack. (ix86_supports_split_stack): New static function. (SPLIT_STACK_AVAILABLE): Define. (split_stack_prologue_scratch_regno): New static function. (split_stack_fn): New static variable. (ix86_expand_split_stack_prologue): New function. (ix86_live_on_entry): New static function. (ix86_legitimate_address_p): Handle UNSPEC_STACK_CHECK. (output_pic_addr_const): Likewise. (i386_asm_output_addr_const_extra): Likewise. (ix86_expand_call): Change return type to rtx. Return the new call instruction. (TARGET_SUPPORTS_SPLIT_STACK): Define. (TARGET_EXTRA_LIVE_ON_ENTRY): Define. * config/i386/i386.md (UNSPEC_STACK_CHECK): Define. (split_stack_prologue, split_stack_return): New insns. (split_stack_space_check): New insn. * config/i386/i386.h (struct machine_function): Add split_stack_varargs_pointer field. * config/i386/linux.h (TARGET_CAN_SPLIT_STACK): Define. (TARGET_THREAD_SPLIT_STACK_OFFSET): Define. * config/i386/linux64.h (TARGET_CAN_SPLIT_STACK): Define. (TARGET_THREAD_SPLIT_STACK_OFFSET): Define. * config/i386/i386-protos.h (ix86_expand_split_stack_prologue): Declare. (ix86_expand_call): Update declaration. gcc/c-family/: * c-common.c (c_common_attribute_table): Add no_split_stack. (handle_no_split_stack_attribute): New static function. gcc/testsuite/: * lib/target-supports.exp (check_effective_target_split_stack): New procedure. * gcc.dg/split-1.c: New test. * gcc.dg/split-2.c: New test. * gcc.dg/split-3.c: New test. * gcc.dg/split-4.c: New test. libgcc/: * generic-morestack.h: New file. * generic-morestack.c: New file. * generic-morestack-thread.c: New file. * config/i386/morestack.S: New file. * config/t-stack: New file. * config/i386/t-stack-i386: New file. * config.host (i[34567]86-*-linux* and friends): Add t-stack and i386/t-stack-i386 to tmake_file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164661 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (libgcc-extra-parts): Check for static archives andiains2010-09-212-0/+19
| | | | | | | | | | invoke ranlib after installing them. (gcc-extra-parts): Likewise. (install-leaf): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164482 138bc75d-0d04-0410-961f-82ee72b054a4
* Regenerate libgcc/configure.hjl2010-09-142-3/+7
| | | | | | | | | 2010-09-14 H.J. Lu <hongjiu.lu@intel.com> * configure: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164284 138bc75d-0d04-0410-961f-82ee72b054a4
* ChangeLog configktietz2010-09-102-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2010-09-10 Jonathan Yong <jon_y@users.sourceforge.net> * dfp.m4: Enable decimal float for i?86 cygwin and mingw, and for x86_64 mingw. ChangeLog libgcc 2010-09-10 Kai Tietz <kai.tietz@onevision.com> * configure: Regenerated. ChangeLog libdecnumber 2010-09-10 Kai Tietz <kai.tietz@onevision.com> * configure: Regenerated. ChangeLog gcc 2010-09-10 Kai Tietz <kai.tietz@onevision.com> * configure: Regenerated. * config.gcc: Add for x86_64 and i?86 mingw t-dfprule. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164167 138bc75d-0d04-0410-961f-82ee72b054a4
* 2010-09-09 Gerald Pfeifer <gerald@pfeifer.com>gerald2010-09-092-0/+8
| | | | | | | | | | Andrew Pinski <pinskia@gmail.com> PR target/40959 * config.host (ia64*-*-freebsd*): Set extra_parts. Set tmake_file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164132 138bc75d-0d04-0410-961f-82ee72b054a4
* Don't set enable_decimal_float to dpd if DFP is disabled.hjl2010-09-062-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | config/ 2010-09-06 H.J. Lu <hongjiu.lu@intel.com> PR target/45524 * dfp.m4: Don't set enable_decimal_float to dpd if DFP is disabled. Set default_decimal_float. gcc/ 2010-09-06 H.J. Lu <hongjiu.lu@intel.com> PR target/45524 * configure.ac (enable_decimal_float): Set to $default_decimal_float. * configure: Regenerated. libdecnumber/ 2010-09-06 H.J. Lu <hongjiu.lu@intel.com> PR target/45524 * configure.ac (enable_decimal_float): Set to $default_decimal_float. * configure: Regenerated. libgcc/ 2010-09-06 H.J. Lu <hongjiu.lu@intel.com> PR target/45524 * configure: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163921 138bc75d-0d04-0410-961f-82ee72b054a4
* config/:schwab2010-09-062-2/+6
| | | | | | | | | | | | | | | | | * dfp.m4: Quote argument of AC_MSG_WARN. gcc/: * configure.ac: Quote argument of AC_MSG_WARN. * configure: Regenerate. libdecnumber/: * configure: Regenerate. libgcc/: * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163909 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/i386/t-sol2 (__copysigntf3, __fabstf3): Disable foruros2010-09-032-0/+19
| | | | | | | | | | 64bit targets. (__fixtfti, __fixunstfti, __floattitf, __floatuntitf): Enable only for 64bit targets. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163820 138bc75d-0d04-0410-961f-82ee72b054a4
* libgcc/ChangeLog:uros2010-09-032-3/+10
| | | | | | | | | | | | | | | | | | | | | | | PR target/45476 * Makefile.in (sifuncs, difuncs, tifuncs): Filter out LIB2FUNCS_EXCLUDE functions. gcc/ChangeLog: PR target/45476 * config/i386/t-darwin (LIB2FUNCS_EXCLUDE): New. * config/i386/darwin.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT, TF_SIZE): New defines. gcc/testsuite/ChangeLog: PR target/45476 * gcc.target/i386/float128-1.c: Enable for all x86 targets. * gcc.target/i386/float128-2.c: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163819 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/krebbel2010-09-031-11/+23
| | | | | | | | | | | | | | | | | | | | | | | | 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. * aclocal.m4: Regenerate. libdecnumber/ 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. * aclocal.m4: Regenerate. libgcc/ 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163816 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/krebbel2010-09-033-35/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure.ac: Use the GCC_AC_ENABLE_DECIMAL_FLOAT macro. * Makefile.in: Add aclocal.m4 dependency to dfp.m4. * configure: Regenerate. * aclocal.m4: Regenerate. config/ 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * dfp.m4: New file. libdecnumber/ 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure.ac: Use the GCC_AC_ENABLE_DECIMAL_FLOAT macro. * Makefile.in: Add aclocal.m4 dependency to dfp.m4. * configure: Regenerate. * aclocal.m4: Regenerate. libgcc/ 2010-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> * configure.ac: Use the GCC_AC_ENABLE_DECIMAL_FLOAT macro. Include dfp.m4. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163815 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/ChangeLog:uros2010-09-014-18/+138
| | | | | | | | | | | | | | | | | | * config.gcc (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add i386/t-fprules-softfp and soft-fp/t-softfp to tmake_file. * libgcc-std.ver (GCC_4.6.0): Define version. libgcc/ChangeLog: * config.host (i[34567]86-*-freebsd*, x86_64-*-freebsd*): Add i386/t-freebsd to tmake_file. * config/i386/t-freebsd: New file. * config/i386/libgcc-bsd.ver: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163718 138bc75d-0d04-0410-961f-82ee72b054a4
* * config.host (powerpc*-eabispe*): Set tmake_file.froydnj2010-07-233-1/+12
| | | | | | | | | (powerpc*-eabi*): Likewise. * config/rs6000/t-ppccomm (EXTRA_PARTS): Add crtbegin, crtend, crtbeginS, crtendS, crtbeginT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162474 138bc75d-0d04-0410-961f-82ee72b054a4