aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-11-02avx-cvt-2.c (dg-options): Add -mtune=generic.Uros Bizjak5-5/+13
* gcc.target/i386/avx-cvt-2.c (dg-options): Add -mtune=generic. * gcc.target/i386/avx2-cvt-2.c (dg-options): Ditto. * gcc.target/i386/sse2-cvt-2.c (dg-options): Ditto. * gcc.target/i386/vectorize4-avx.c (dg-final): Remove xfail *-*-*. From-SVN: r180769
2011-11-02i386.c (bdesc_args): Use CODE_FOR_fix_truncv4dfv4si2, not ↵Uros Bizjak2-5/+8
CODE_FOR_fix_truncv4sfv4si2. * config/i386/i386.c (bdesc_args) [IX86_BUILTIN_CVTTPD2DQ256]: Use CODE_FOR_fix_truncv4dfv4si2, not CODE_FOR_fix_truncv4sfv4si2. From-SVN: r180768
2011-11-02Move shlib support to toplevel libgccRainer Orth120-714/+876
gcc: PR translation/45116 * Makefile.in (slibdir): Remove, don't export. (SHLIB_NM_FLAGS): Remove. (libgcc.mvars): Don't emit SHLIB_LINK, SHLIB_INSTALL, SHLIB_DLLDIR, SHLIB_EXT, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES, SHLIB_NM_FLAGS. (DRIVER_DEFINES): Test SHLIB instead of SHLIB_LINK. (gcc.o): Pass SHLIB instead of SHLIB_LINK. (gccspec.o): Likewise. (installdirs): Don't create $(DESTDIR)$(slibdir). * configure.ac (slibdir): Remove. * configure: Regenerate. * libgcc-libsystem.ver: Move to ../libgcc/config. * mkmap-flat.awk, mkmap-symver.awk: Move to ../libgcc. * config/libgcc-glibc.ver: Move to ../libgcc/config. * config/t-libunwind (SHLIB_LC): Remove. * config/t-linux (SHLIB_MAPFILES): Remove. * config/t-slibgcc-dummy: Rename to config/t-slibgcc. * config/t-slibgcc-elf-ver: Remove. * config/t-slibgcc-libgcc, config/t-slibgcc-nolc-override: Move to ../libgcc/config. * config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: Move to ../libgcc/config/alpha. * config/alpha/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS, SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_SYMVEC, SHLIB_SYMVECX2, SHLIB_LINK): Remove. * config/arm/libgcc-bpabi.ver: Move to ../libgcc/config/arm. * config/arm/t-bpabi (SHLIB_MAPFILES): Remove. * config/arm/t-netbsd (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME, SHLIB_OBJS, SHLIB_LINK, SHLIB_INSTALL): Remove. * config/arm/t-symbian (SHLIB_LC): Remove. * config/bfin/libgcc-bfin.ver: Move to ../libgcc/config/bfin/libgcc-glibc.ver. * config/bfin/t-bfin-linux (SHLIB_MAPFILES): Remove. * config/c6x/libgcc-c6xeabi.ver: Move to ../libgcc/config/c6x/libgcc-eabi.ver. * config/c6x/t-c6x-elf (SHLIB_MAPFILES): Remove. * config/cris/libgcc.ver: Move to ../libgcc/config/cris/libgcc-glibc.ver. * config/cris/t-linux (SHLIB_MAPFILES): Remove. * config/frv/libgcc-frv.ver: Move to ../libgcc/config/frv. * config/frv/t-linux (SHLIB_MAPFILES): Remove. * config/i386/darwin-libgcc.10.4.ver: Move to ../libgcc/config/i386/libgcc-darwin.10.4.ver. * config/i386/darwin-libgcc.10.5.ver: Move to ../libgcc/config/i386/libgcc-darwin.10.5.ver. * config/i386/libgcc-glibc.ver: Move to ../libgcc/config/i386. * config/i386/t-cygming (SHLIB_EXT, SHLIB_IMPLIB, SHLIB_SOVERSION, SHLIB_SONAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_DIR, SHLIB_SLIBDIR_QUAL) SHLIB_PTHREAD_CFLAG, SHLIB_PTHREAD_LDFLAG, SHLIB_LINK, SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES): Remove. * config/i386/t-cygwin (SHLIB_LC, SHLIB_EH_EXTENSION, SHLIB_IMPLIB, SHLIB_SONAME, SHLIB_MKMAP_OPTS): Remove. * config/i386/t-dlldir, config/i386/t-dlldir-x: Move to ../libgcc/config/i386. * config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Move to ../libgcc/config/i386. * config/i386/t-linux: Move to ../libgcc/config/i386. * config/i386/t-mingw-pthread: Move to ../libgcc/config/i386. * config/i386/t-mingw-w32 (SHLIB_LC): Remove. * config/i386/t-mingw-w64: Likewise. * config/i386/t-mingw32: Remove. * config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: Move to ../libgcc/config/ia64. * config/ia64/t-glibc: Remove. * config/ia64/t-hpux (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL): Remove. * config/ia64/t-ia64 (SHLIB_MAPFILES): Remove. * config/ia64/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS, SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_LINK): Remove. * config/ia64/vms_symvec_libgcc_s.opt: Remove. * config/m32r/libgcc-glibc.ver: Move to ../libgcc/config/m32r. * config/m32r/t-linux (SHLIB_MAPFILES): Remove. * config/m68k/t-slibgcc-elf-ver: Move to ../libgcc/config/m68k. * config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Remove. * config/pa/t-hpux-shlib: Move to ../libgcc/config/pa/t-slibgcc-hpux. * config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver: Move to ../libgcc/config/pa. * config/rs6000/darwin-libgcc.10.4.ver: Move to ../libgcc/config/rs6000/libgcc-darwin.10.4.ver. * config/rs6000/darwin-libgcc.10.5.ver: Move to ../libgcc/config/rs6000/libgcc-darwin.10.5.ver. * config/rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL, SHLIB_LIBS, SHLIB_MKMAP, SHLIB_NM_FLAGS, AR_FLAGS_FOR_TARGET): Remove. * config/rs6000/t-aix52: Likewise. * config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: Move to ../libgcc/config/sh. * config/sparc/libgcc-sparc-glibc.ver: Move to ../libgcc/config/sparc/libgcc-glibc.ver. * config/sparc/t-linux: Move to ../libgcc/config/sparc. * config/xtensa/t-linux (SHLIB_MAPFILES): Remove. * config/xtensa/libgcc-xtensa.ver: Move to ../libgcc/config/xtensa/libgcc-glibc.ver. * config.gcc (*-*-freebsd*): Replace t-slibgcc-elf-ver with t-slibgcc in tmake_file. Remove t-slibgcc-nolc-override for *-*-freebsd[34], *-*-freebsd[34].* with pthreads. (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Replace t-slibgcc-elf-ver with t-slibgcc in tmake_file. (*-*-netbsd*): Likewise. (*-*-solaris2*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file. (*-*-*vms*): Add t-slibgcc to tmake_file. (alpha*-*-linux*): Remove alpha/t-linux from tmake_file. (alpha*-dec-osf5.1*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file. (arm*-*-linux*): Remove t-slibgcc-libgcc from tmake_file for arm*-*-linux-*eabi. (bfin*-linux-uclibc*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file. (crisv32-*-linux*, cris-*-linux*): Likewise. (hppa*-*-linux*): Remove t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file. (hppa[12]*-*-hpux10*): Replace pa/t-hpux-shlib with t-slibgcc in tmake_file. Remove pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file. (hppa*64*-*-hpux11*): Likewise. (hppa[12]*-*-hpux11*): Likewise. (i[34567]86-*-darwin*): Replace t-slibgcc-dummy in t-slibgcc in tmake_file. (x86_64-*-darwin*): Likewise. (i[34567]86-*-cygwin*): Remove tmake_eh_file, tmake_dlldir_file. Add t-slibgcc to tmake_file. (i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise. Remove i386/t-mingw32 from tmake_file unless x86_64-w64-*, i[34567]86-w64-*. Remove i386/t-mingw-pthread from tmake_file. (ia64*-*-linux*): Remove ia64/t-glibc from tmake_file. (ia64*-*-hpux*): Add t-slibgcc to tmake_file. (ia64-hp-*vms*): Likewise. (m32r-*-linux*): Replace t-slibgcc-elf-ver with t-slibgcc in tmake_file. (m32rle-*-linux*): Likewise. (m68k-*-linux*): Remove m68k/t-slibgcc-elf-ver from tmake_file. (microblaze*-linux*): Remove t-slibgcc-elf-ver, t-slibgcc-nolc-override from tmake_file. (mips-sgi-irix6.5*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file. (powerpc-*-darwin*): Likewise. (powerpc64-*-darwin*): Likewise. (powerpc-*-freebsd*): Remove t-slibgcc-libgcc from tmake_file. (powerpc-*-linux*, powerpc64-*-linux*): Likewise. (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add t-slibgcc to tmake_file. (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise. (rs6000-ibm-aix5.2.*, powerpc-ibm-aix5.2.*): Likewise. (rs6000-ibm-aix5.3.*, powerpc-ibm-aix5.3.*): Likewise. (rs6000-ibm-aix[6789].*, powerpc-ibm-aix[6789].*): Likewise. (sparc-*-linux*): Remove sparc/t-linux from tmake_file. (sparc64-*-linux*): Likewise. (tic6x-*-uclinux): Replace t-slibgcc-elf-ver with t-slibgcc in tmake_file. (i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu, x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Remove i386/t-linux from tmake_file. gcc/cp: * Make-lang.in (g++spec.o): Pass SHLIB instead of SHLIB_LINK. gcc/fortran: * Makef-lang.in (gfortranspec.o): Pass SHLIB instead of SHLIB_LINK. gcc/go: * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK. gcc/java: * Make-lang.in (jvspec.o): Pass SHLIB instead of SHLIB_LINK. libgcc: * Makefile.in (SHLIB_NM_FLAGS): Set. * mkmap-flat.awk, mkmap-symver.awk: New files. * configure.ac (libgcc_cv_lib_sjlj_exceptions): Check for SjLj exceptions. * configure: Regenerate. * config/libgcc-glibc.ver: New file. * config/libgcc-libsystem.ver: New file. * config/t-libunwind (SHLIB_LC): Set. * config/t-linux: New file. * config/t-slibgcc (INSTALL_SHLIB): New. (SHLIB_INSTALL): Use it. * config/t-slibgcc-darwin (SHLIB_MKMAP): Use $(srcdir) to refer to mkmap-symver.awk. (SHLIB_MAPFILES): Don't append, adapt pathname. (SHLIB_VERPFX): Set. * config/t-slibgcc-elf-ver (SHLIB_MKMAP): Use $(srcdir) to refer to mkmap-symver.awk. * config/t-slibgcc-gld-nover, config/t-slibgcc-hpux, config/t-slibgcc-libgcc, config/t-slibgcc-vms: New files. * config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: New files. * config/alpha/t-slibgcc-osf (SHLIB_MKMAP): Use $(srcdir) to refer to mkmap-flat.awk. * config/arm/t-bpabi (SHLIB_MAPFILES): Set. * config/bfin/libgcc-glibc.ver, config/bfin/t-linux: New files. * config/c6x/libgcc-eabi.ver, config/c6x/t-elf: New files. * config/cris/libgcc-glibc.ver, config/cris/t-linux: New files. * config/frv/libgcc-frv.ver, config/frv/t-linux: New files. * config/i386/libgcc-darwin.10.4.ver, config/i386/libgcc-darwin.10.5.ver, config/i386/libgcc-glibc.ver: New files. * config/i386/t-darwin: Remove. * config/i386/t-darwin64: Likewise. * config/i386/t-dw2-eh, config/i386/t-sjlj-eh: New files. * config/i386/t-slibgcc-cygming, config/i386/t-cygwin, config/i386/t-dlldir, config/i386/t-dlldir-x: New files. * config/i386/t-linux: New file. * config/i386/t-mingw32: New file. * config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: New files. * config/ia64/t-glibc: Rename to ... * config/ia64/t-linux: ... this. (SHLIB_MAPFILES): Set. * config/ia64/t-glibc-libunwind: Rename to ... * config/ia64/t-linux-libunwind: ... this. * config/ia64/t-ia64 (SHLIB_MAPFILES): Set. * config/ia64/t-slibgcc-hpux: New file. * config/m32r/libgcc-glibc.ver, config/m32r/t-linux: New files. * config/m68k/t-slibgcc-elf-ver: New file. * config/mips/t-mips16 (SHLIB_MAPFILES): Set. * config/mips/t-slibgcc-irix (SHLIB_MKMAP): Use $(srcdir) to refer to mkmap-flat.awk. * config/pa/t-slibgcc-hpux: New file. * config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver: New files. * config/rs6000/libgcc-darwin.10.4.ver, config/rs6000/libgcc-darwin.10.5.ver: New files. * config/rs6000/libgcc-ppc-glibc.ver: Rename to config/rs6000/libgcc-glibc.ver. * config/rs6000/libgcc-ppc64.ver: Rename to config/rs6000/libgcc-ibm-ldouble.ver. * config/rs6000/t-darwin (SHLIB_VERPFX): Remove. * config/rs6000/t-ibm-ldouble (SHLIB_MAPFILES): Adapt filename. * config/rs6000/t-ldbl128: Rename to ... * config/rs6000/t-linux: ... this. (SHLIB_MAPFILES): Adapt filename. * config/rs6000/t-slibgcc-aix: New file. * config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: New files. * config/sh/t-linux (SHLIB_MAPFILES): Use $(srcdir) to refer to libgcc-excl.ver, libgcc-glibc.ver. (SHLIB_LINK, SHLIB_INSTALL): Remove. * config/sparc/libgcc-glibc.ver: New file. * config/sparc/t-linux: New file. * config/xtensa/libgcc-glibc.ver, config/xtensa/t-linux: New files. * config.host (*-*-freebsd*): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file. Add t-slibgcc-nolc-override to tmake_file for posix threads on *-*-freebsd[34]. (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver, t-linux to tmake_file. (*-*-netbsd*): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file. (alpha*-*-linux*): Add alpha/t-linux to tmake_file. (alpha64-dec-*vms*): Add t-slibgcc-vms to tmake_file. (alpha*-dec-*vms*): Likewise. (arm*-*-freebsd*): Append to tmake_file. (arm*-*-netbsdelf*): Add t-slibgcc-gld-nover to tmake_file. (arm*-*-linux*): Add t-slibgcc-libgcc to tmake_file for arm*-*-linux-*eabi. (arm*-*-eabi*, arm*-*-symbianelf*): Add t-slibgcc-nolc-override to tmake_file for arm*-*-symbianelf*. (bfin*-linux-uclibc*): Append to tmake_file, add bfin/t-linux. (cris-*-linux*, crisv32-*-linux*): Append to tmake_file, add cris/t-linux. (frv-*-*linux*): Append to tmake_file, add frv/t-linux. (hppa*-*-linux*): Add t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver to tmake_file. (hppa[12]*-*-hpux10*): Add t-slibgcc, pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver, t-slibgcc-hpux, pa/t-slibgcc-hpux to tmake_file. (hppa*64*-*-hpux11*): Likewise. (hppa[12]*-*-hpux11*): Likewise. (x86_64-*-darwin*): Don't override tmake_file, but only keep i386/t-crtpc, i386/t-crtfm. (i[34567]86-*-cygwin*): Set tmake_eh_file, tmake_dlldir_file. Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming to tmake_file. Add i386/t-cygwin to tmake_file. Prepent i386/t-mingw-pthread to tmake_file for posix threads. (i[34567]86-*-mingw*): Set tmake_eh_file, tmake_dlldir_file. Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming to tmake_file. Add i386/t-mingw32 to tmake_file. (x86_64-*-mingw*): Likewise. (ia64*-*-freebsd*): Append to tmake_file. (ia64*-*-linux*): Append to tmake_file. Replace ia64/t-glibc by ia64/t-linux. Replace ia64/t-glibc-libunwind by ia64/t-linux-libunwind if using system libunwind. (ia64*-*-hpux*): Add t-slibgcc, ia64/t-slibgcc-hpux, t-slibgcc-hpux to tmake_file. (ia64-hp-*vms*): Add t-slibgcc-vms to tmake_file. (m32r-*-linux*): Append to tmake_file, add m32r/t-linux. (m32rle-*-linux*): Likewise. (m68k-*-linux*)): Add m68k/t-slibgcc-elf-ver to tmake_file unless sjlj exceptions. (microblaze*-linux*): New case. Append to tmake_file, add t-slibgcc-nolc-override. (powerpc-*-freebsd*): Add t-slibgcc-libgcc to tmake_file. (powerpc-*-linux*, powerpc64-*-linux*): Likewise. Replace rs6000/t-ldbl128 by rs6000/t-linux in tmake_file. (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add rs6000/t-slibgcc-aix to tmake_file. (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise. (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise. (sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*) (sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*) (sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*) (sh64l*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file for sh*-*-linux*. (sparc-*-linux*): Append to tmake_file for *-leon*. Add sparc/t-linux to tmake_file for non-Leon targets. (sparc64-*-linux*): Add sparc/t-linux to tmake_file. (tic6x-*-uclinux): New case. Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file. (tic6x-*-*): Add c6x/t-elf to tmake_file. (xtensa*-*-linux*): Append to tmake_file, add xtensa/t-linux. (am33_2.0-*-linux*): Append to tmake_file. (i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu) (i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Also handle x86_64-*-kfreebsd*-gnu. Add i386/t-linux to tmake_file. From-SVN: r180767
2011-11-02re PR tree-optimization/50902 (intVar/dinternal.cc ICEs at -O2 -ftree-vectorize)Richard Guenther4-2/+31
2011-11-02 Richard Guenther <rguenther@suse.de> PR tree-optimization/50902 * tree-vect-stmts.c (vectorizable_load): Properly convert an invariant initializer element. * gcc.dg/torture/pr50902.c: New testcase. From-SVN: r180765
2011-11-02re PR libstdc++/50951 (state of subtract_with_carry_engine not saved ↵Paolo Carlini9-19/+139
correctly to output stream) 2011-11-02 Paolo Carlini <paolo.carlini@oracle.com> PR libstdc++/50951 * include/bits/random.tcc (operator<<(basic_ostream<>&, const mersenne_twister_engine<>&): Output _M_p too. (operator<<(basic_ostream<>&, const subtract_with_carry_engine<>&): Likewise. (operator>>(basic_istream<>&, mersenne_twister_engine<>&): Reload it. (operator>>(basic_istream<>&, subtract_with_carry_engine<>&): Likewise. * include/bits/random.h (mersenne_twister_engine<>::operator==): Compare _M_p too. (subtract_with_carry_engine<>::operator==): Compare _M_carry and _M_p too. (shuffle_order_engine<>::operator==): Compare _M_v(s) and _M_y too. * testsuite/26_numerics/random/independent_bits_engine/ operators/serialize.cc: Extend. * testsuite/26_numerics/random/subtract_with_carry_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/discard_block_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/mersenne_twister_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/linear_congruential_engine/ operators/serialize.cc: Likewise. * testsuite/26_numerics/random/shuffle_order_engine/ operators/serialize.cc: Likewise. From-SVN: r180764
2011-11-02re PR middle-end/50890 (ICE in fold_convert_loc, at fold-const.c:1894)Richard Guenther6-42/+93
2010-11-02 Richard Guenther <rguenther@suse.de> PR tree-optimization/50890 * gimple.h (gimple_fold_call): Remove. * gimple-fold.c (fold_stmt_1): Move all call related code to ... (gimple_fold_call): ... here. Make static. Update the cannot-inline flag on direct calls. * ipa-inline.c (early_inliner): Copy the cannot-inline flag from the statements to the edges. * gcc.dg/torture/pr50890.c: New testcase. From-SVN: r180763
2011-11-02godump.c (struct macro_hash_value): Define.Ian Lance Taylor2-40/+131
* godump.c (struct macro_hash_value): Define. (macro_hash_hashval): New static function. (macro_hash_eq, macro_hash_del): New static functions. (go_define): Use macro_hash_value to store values in macro_hash. Replace an old value on a redefinition. Don't print anything to go_dump_file. (go_undef): Delete the entry from the hash table. (go_output_typedef): For an enum, use macro_hash_value, and don't print anything to go_dump_file. (go_print_macro): New static function. (go_finish): Traverse macro_hash with go_print_macro. (dump_go_spec_init): Update macro_hash creation for macro_hash_value. From-SVN: r180762
2011-11-02rs6000.c (rs6000_code_end): Declare ATTRIBUTE_UNUSED.Alan Modra2-0/+5
* config/rs6000/rs6000.c (rs6000_code_end): Declare ATTRIBUTE_UNUSED. From-SVN: r180761
2011-11-02c++config: Add tr2 to versioned namespaces.Benjamin Kosnik4-2/+17
2011-11-02 Benjamin Kosnik <bkoz@redhat.com> * include/bits/c++config: Add tr2 to versioned namespaces. * scripts/run_doxygen: Adjust generated man files as well. * testsuite/ext/profile/mutex_extensions_neg.cc: Adjust line numbers. From-SVN: r180760
2011-11-01* config.sub: Update to version 2011-10-29 (added rl78)DJ Delorie2-3/+7
From-SVN: r180758
2011-11-02future (promise): Add constructors for uses-allocator construction from ↵Jonathan Wakely5-4/+197
rvalue promise. * include/std/future (promise): Add constructors for uses-allocator construction from rvalue promise. (packaged_task): Implement LWG 2067. Add additional constructors for uses-allocator construction. * testsuite/30_threads/packaged_task/cons/3.cc: New. * testsuite/30_threads/packaged_task/cons/alloc2.cc: New. * testsuite/30_threads/promise/cons/alloc2.cc: New. From-SVN: r180757
2011-11-02Daily bump.GCC Administrator1-1/+1
From-SVN: r180756
2011-11-01Handle V4HI vector initialization more efficiently on VIS1.David S. Miller2-0/+27
* config/sparc/sparc.c (vector_init_faligndata): New function. (sparc_expand_vector_init): Use it for V4HImode on VIS1. From-SVN: r180752
2011-11-01re PR c++/44277 ([C++0x] Add warning to facilitate nullptr conversion.)Paolo Carlini11-3/+320
/cp 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44277 * cvt.c (cp_convert_to_pointer): Warn for zero as null pointer constant. * typeck.c (cp_truthvalue_conversion): Handle pointers and member function pointers under c_inhibit_evaluation_warnings; use nullptr_node for data member pointers. (cp_build_binary_op): Tweak, just forward to cp_convert op1, either a nullptr_node or an integer_zero_node. (build_ptrmemfunc): Use nullptr_node. * init.c (build_zero_init_1): Likewise. /c-family 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44277 * c.opt: Add Wzero-as-null-pointer-constant. /gcc 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44277 * doc/invoke.texi: Document -Wzero-as-null-pointer-constant. /testsuite 2011-11-01 Paolo Carlini <paolo.carlini@oracle.com> PR c++/44277 * g++.dg/warn/Wzero-as-null-pointer-constant-1.C: New. * g++.dg/cpp0x/Wzero-as-null-pointer-constant-1.C: Likewise. From-SVN: r180750
2011-11-01i386.md (splitters for int-float conversion): Use SUBREG_REG on SUBREGs in ↵Uros Bizjak2-10/+28
splitter constraints. * config/i386/i386.md (splitters for int-float conversion): Use SUBREG_REG on SUBREGs in splitter constraints. From-SVN: r180748
2011-11-01bpabi.h (BE8_LINK_SPEC): Recognize generic-armv7 tuning.Andrew Stubbs2-0/+5
2011-11-01 Andrew Stubbs <ams@codesourcery.com> * config/arm/bpabi.h (BE8_LINK_SPEC): Recognize generic-armv7 tuning. From-SVN: r180747
2011-11-01re PR tree-optimization/50908 (building emacs-23.3; gives msg: ↵Tom de Vries4-0/+274
indent.c:1140:1: internal compiler error: in verify_dominators, at dominance.c:1041) 2011-11-01 Tom de Vries <tom@codesourcery.com> PR tree-optimization/50908 * gcc.dg/pr50908.c: New test. * gcc.dg/pr50908-2.c: Same. * gcc.dg/pr50908-3.c: Same. From-SVN: r180746
2011-11-01i386.md (splitters for int-float conversion): Use reg_or_subregno in ↵Uros Bizjak2-31/+18
splitter constraints. * config/i386/i386.md (splitters for int-float conversion): Use reg_or_subregno in splitter constraints. From-SVN: r180745
2011-11-01i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si): New prototype.Jakub Jelinek4-24/+73
* config/i386/i386-protos.h (ix86_expand_adjust_ufix_to_sfix_si): New prototype. * config/i386/i386.c (ix86_expand_adjust_ufix_to_sfix_si): New function. * config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): Use it. (ssepackfltmode): New mode attr. (vec_pack_ufix_trunc_<mode>): New expander. From-SVN: r180743
2011-11-01i386.md (floatsi<mode>2_vector_sse_with_temp splitter): Compare ↵Uros Bizjak2-1/+6
<ssevecmode>mode with V4SFmode, not V4SImode. * config/i386/i386.md (floatsi<mode>2_vector_sse_with_temp splitter): Compare <ssevecmode>mode with V4SFmode, not V4SImode. From-SVN: r180742
2011-11-01config.gcc (powerpc*-*-linux*): Add powerpc*-*-linux*ppc476* variant.Peter Bergner8-17/+286
* config.gcc (powerpc*-*-linux*): Add powerpc*-*-linux*ppc476* variant. * config/rs6000/476.h: New file. * config/rs6000/476.opt: Likewise. * config/rs6000/rs6000.h (TARGET_LINK_STACK): New define. (SET_TARGET_LINK_STACK): Likewise. (TARGET_ASM_CODE_END): Define. * config/rs6000/rs6000.c (rs6000_option_override_internal): Enable TARGET_LINK_STACK for -mtune=476 and -mtune=476fp. (rs6000_legitimize_tls_address): Emit the link stack preserving GOT code if TARGET_LINK_STACK. (rs6000_emit_load_toc_table): Likewise. (output_function_profiler): Likewise (macho_branch_islands): Likewise (machopic_output_stub): Likewise (get_ppc476_thunk_name): New function. (rs6000_code_end): Likewise. * config/rs6000/rs6000.md (load_toc_v4_PIC_1, load_toc_v4_PIC_1b): Convert to a define_expand. (load_toc_v4_PIC_1_normal): New define_insn. (load_toc_v4_PIC_1_476): Likewise. (load_toc_v4_PIC_1b_normal): Likewise. (load_toc_v4_PIC_1b_476): Likewise. From-SVN: r180741
2011-11-01re PR target/50910 ([avr] inefficient division by 2)Georg-Johann Lay5-16/+96
PR target/50910 * config/avr/avr.opt (-mbranch-cost=): New option. * config/avr/avr.h (BRANCH_COST): Define to avr_branch_cost. * config/avr/avr.c (avr_rtx_costs_1): Adjust [U]DIV/[U]MOD costs. * config/avr/avr.md (*addqi3.lt0, *addhi3.lt0, *addsi3.lt0): New insns. (*addhi3_zero_extend1): Remov % in constraint of operand 1. (*addhi3.sign_extend1, *subhi3.sign_extend2): New insns. From-SVN: r180739
2011-11-01re PR c++/50500 ([C++0x] [DR 1082] move constructor should cause copy ↵Jason Merrill4-33/+69
constructor to be deleted, but still declared) PR c++/50500 DR 1082 * search.c (lookup_fnfields_idx_nolazy): Split out from... (lookup_fnfields_1): ...here. (lookup_fnfields_slot_nolazy): Use it. * cp-tree.h: Declare it. * class.c (type_has_move_assign): Use it. (type_has_user_declared_move_assign): Likewise. From-SVN: r180738
2011-11-01re PR tree-optimization/50908 (building emacs-23.3; gives msg: ↵Tom de Vries2-16/+104
indent.c:1140:1: internal compiler error: in verify_dominators, at dominance.c:1041) 2011-11-01 Tom de Vries <tom@codesourcery.com> PR tree-optimization/50908 * tree-ssa-tail-merge.c (update_vuses): Now that edges are removed before update_vuses, test for 1 predecessor rather than two. (delete_block_update_dominator_info): New function, part of it factored out of ... (replace_block_by): Use delete_block_update_dominator_info. Call update_vuses after deleting bb1 and updating dominator info, instead of before. From-SVN: r180737
2011-11-01Copyright years and whitespace fix for r180734Janne Blomqvist2-3/+4
From-SVN: r180736
2011-11-01no-scevccp-outer-6-global.c: Expect to vectorize the outer loop.Ira Rosen2-3/+6
* gcc.dg/vect/no-scevccp-outer-6-global.c: Expect to vectorize the outer loop. Remove comment. Don't check for widen-mult. From-SVN: r180735
2011-11-01Cleanup NEWUNIT allocation.Janne Blomqvist3-10/+16
2011-11-01 Janne Blomqvist <jb@gcc.gnu.org> * io/io.h (next_available_newunit): Remove prototype. * io/unit.h (next_available_newunit): Make variable static, initialize it. (init_units): Don't initialize next_available_newunit. (get_unique_unit_number): Use atomic builtin if available. From-SVN: r180734
2011-11-01Add vcond/vcondu patterns to sparc backend.David S. Miller4-0/+75
* config/sparc/sparc.c (sparc_expand_vcond): New function. * config/sparc/sparc-protos.h (sparc_expand_vcond): Declare it. * config/sparc/sparc.md (vcond<mode><mode>): New VIS3 expander. (vconduv8qiv8qi): Likewise. From-SVN: r180733
2011-11-01runtime: Don't ask mmap for wrapping memory.Ian Lance Taylor1-0/+2
From-SVN: r180732
2011-11-01runtime: Correct test of mmap return value.Ian Lance Taylor1-1/+6
From-SVN: r180731
2011-11-01syscall: Portability code for epoll_event on GNU/Linux.Ian Lance Taylor6-13/+301
From-SVN: r180729
2011-11-01* c.opt (-fdeduce-init-list): Off by default.Jason Merrill4-9/+12
From-SVN: r180728
2011-11-01Makefile.am (install-freestanding-headers): Install c++0x_warning.h.Jason Merrill33-20/+58
* include/Makefile.am (install-freestanding-headers): Install c++0x_warning.h. * libsupc++/initializer_list: Include it. From-SVN: r180727
2011-11-01* doc/invoke.texi: Update for -std=c++11.Jason Merrill1-19/+16
From-SVN: r180726
2011-11-01re PR debug/50869 (ice in vt_expand_var_loc_chain)Alexandre Oliva3-4/+15
PR debug/50869 * cselib.c (cfa_base_preserved_regno): Initialize. (cselib_expand_value_rtx_1): Don't expand it. * var-tracking.c (vt_expand_var_loc_chain): Initialize depth. Check it's only zero if result is NULL. From-SVN: r180725
2011-11-01sse.md (fixuns_trunc<mode><sseintvecmodelower>2): New expander.Jakub Jelinek2-0/+32
* config/i386/sse.md (fixuns_trunc<mode><sseintvecmodelower>2): New expander. From-SVN: r180724
2011-11-01sse.md (sseintvecmode): Remove duplicate modes.Jakub Jelinek2-24/+33
* config/i386/sse.md (sseintvecmode): Remove duplicate modes. (sseintvecmodelower): New mode iterator. (floatv8siv8sf2, floatunsv4siv4sf2): Macroize into... (float<sseintvecmodelower><mode>2): ... this using VF1 iterator. (floatunsv4siv4sf2): Macroize into... (floatuns<sseintvecmodelower><mode>2): ... this using VF1 iterator. From-SVN: r180723
2011-11-01Daily bump.GCC Administrator1-1/+1
From-SVN: r180721
2011-11-01acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux.Gerald Pfeifer3-4/+9
* acinclude.m4 (GLIBCXX_CONFIGURE): Refer to GNU/Linux. * configure: Regenerate. From-SVN: r180717
2011-10-31syscall: Use sched_yield rather than pthread_yield.Ian Lance Taylor1-2/+2
From-SVN: r180716
2011-10-31Allow zero operand in sparc VIS3 cmask patterns.David S. Miller2-3/+5
* config/sparc/sparc.md (cmask patterns): Allow zero operand. From-SVN: r180715
2011-10-31syscall: Fix Errstr on systems without strerror_r.Ian Lance Taylor1-2/+2
From-SVN: r180714
2011-10-31Invalidate cached next real insn in dwarf2out_end_epilogue().David S. Miller2-1/+8
* dwarf2out.c (cached_next_real_insn): New. (dwarf2out_end_epilogue): Set it to NULL_RTX. (dwarf2out_var_location): Remove cached_next_real_insn local static. From-SVN: r180713
2011-10-31syscall: Remove a couple more 3-parameter match's in mksyscall.awk.Ian Lance Taylor1-2/+2
From-SVN: r180712
2011-10-31i386: Remove TARGET_VECTORIZE_BUILTIN_CONVERSION.Richard Henderson4-119/+48
Renaming all of the insn patterns as needed to the standard optab forms. Sadly, only one of the builtins is unused by the various header files, so most of them must stay around. * config/i386/sse.md (floatv8siv8sf2): Rename from avx_cvtdq2ps256. (floatv4siv4sf2): Rename from sse2_cvtdq2ps. (floatunsv4siv4sf2): Rename from sse2_cvtudq2ps. (fix_truncv8sfv8si2): Rename from avx_cvttps2dq256. (fix_truncv4sfv4si2): Rename from sse2_cvttps2dq. (floatv4siv4df2): Rename from avx_cvtdq2pd256. (fix_truncv4dfv4si2): Rename from avx_cvttpd2dq256. (vec_unpacku_float_hi_v8si): Update for insn pattern name changes. * config/i386/i386.md (splitters for int-float conversion): Likewise. * config/i386/i386.c (ix86_split_convert_uns_si_sse): Likewise. (bdesc_args): Likewise. (enum ix86_builtins) [IX86_BUILTIN_CVTUDQ2PS]: Remove. (ix86_vectorize_builtin_conversion): Remove. (TARGET_VECTORIZE_BUILTIN_CONVERSION): Remove. From-SVN: r180709
2011-10-31re PR libstdc++/1773 (__cplusplus defined to 1, should be 199711L)Jason Merrill2-1/+10
PR libstdc++/1773 * init.c (cpp_init_builtins): Set __cplusplus for C++11. From-SVN: r180708
2011-10-31re PR c++/50920 (add a -std=c++11 option to the driver)Jason Merrill34-68/+108
PR c++/50920 gcc/c-family * c-common.h (cxx_dialect): Add cxx11 and cxx03. * c.opt: Add -std=c++11, -std=gnu++11, -std=gnu++03, and -Wc++11-compat. * c-opts.c (set_std_cxx11): Rename from set_std_cxx0x. gcc/cp * class.c (check_field_decl): Change c++0x in diags to c++11. * error.c (maybe_warn_cpp0x): Likewise. * parser.c (cp_parser_diagnose_invalid_type_name): Likewise. * pt.c (check_default_tmpl_args): Likewise. libcpp * include/cpplib.h (enum c_lang): Rename CLK_CXX0X to CLK_CXX11, CLK_GNUCXX0X to CLK_GNUCXX11. libstdc++-v3 * include/bits/c++0x_warning.h: Change -std=c++0x to -std=c++11. From-SVN: r180707
2011-10-31ipa-prop.c (mark_modified): Moved up in the file.Martin Jambor4-57/+228
2011-10-31 Martin Jambor <mjambor@suse.cz> * ipa-prop.c (mark_modified): Moved up in the file. (is_parm_modified_before_call): Renamed to is_parm_modified_before_stmt, moved up in the file. (load_from_unmodified_param): New function. (compute_complex_assign_jump_func): Also attempt to create pass through jump functions for values loaded from (addressable) parameters. * testsuite/gcc.dg/ipa/ipcp-4.c: New test. From-SVN: r180705
2011-10-31tree-vect-stmts.c (vectorizable_shift): If op1 is vect_external_def in a ↵Jakub Jelinek6-2/+260
loop and has different type from op0... * tree-vect-stmts.c (vectorizable_shift): If op1 is vect_external_def in a loop and has different type from op0, cast it to op0's type before the loop first. For slp give up. Don't crash if op1_vectype is NULL. * gcc.dg/vshift-3.c: New test. * gcc.dg/vshift-4.c: New test. * gcc.dg/vshift-5.c: New test. From-SVN: r180704
2011-10-31Update file position for inquire lazily.Janne Blomqvist7-46/+50
libgfortran ChangeLog: 2011-10-31 Janne Blomqvist <jb@gcc.gnu.org> * io/inquire.c (inquire_via_unit): Check whether we're at the beginning or end if the position is unspecified. If the position is not one of the 3 standard ones, return unspecified. * io/io.h (update_position): Remove prototype. * io/transfer.c (next_record): Set the position to unspecified, letting inquire figure it out more exactly when needed. * io/unit.c (update_position): Remove function. testsuite ChangeLog: 2011-10-31 Janne Blomqvist <jb@gcc.gnu.org> * gfortran.dg/inquire_5.f90: Update testcase to match the standard and current implementation. From-SVN: r180703