platform/upstream/gcc.git
11 years agohashtable_policy.h (_Prime_rehash_policy): Remove automatic shrink.
François Dumont [Fri, 16 Nov 2012 21:28:44 +0000 (21:28 +0000)]
hashtable_policy.h (_Prime_rehash_policy): Remove automatic shrink.

2012-11-16  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/hashtable_policy.h (_Prime_rehash_policy): Remove
automatic shrink.
(_Prime_rehash_policy::_M_bkt_for_elements): Do not call
_M_next_bkt anymore.
(_Prime_rehash_policy::_M_next_bkt): Move usage of
_S_growth_factor ...
(_Prime_rehash_policy::_M_need_rehash): ... here.
* include/bits/hashtable.h (_Hashtable<>): Adapt.
* testsuite/performance/23_containers/insert_erase/41975.cc: Add
_USE_TR1 to force build using std::tr1 container.
* testsuite/performance/23_containers/insert/unordered_set.cc:
Likewise.
* testsuite/performance/23_containers/insert/54075.cc: New.

From-SVN: r193576

11 years ago2012-11-16 Matthias Klose <doko@ubuntu.com>
Matthias Klose [Fri, 16 Nov 2012 18:35:05 +0000 (18:35 +0000)]
2012-11-16  Matthias Klose  <doko@ubuntu.com>

        * Imported zlib 1.2.7; merged local changes.

From-SVN: r193574

11 years agowhatis.cc: New file.
Tom Tromey [Fri, 16 Nov 2012 18:17:25 +0000 (18:17 +0000)]
whatis.cc: New file.

* testsuite/libstdc++-prettyprinters/whatis.cc: New file.
* testsuite/lib/gdb-test.exp (whatis-test): New proc.
(gdb-test): Handle 'whatis' tests.
(gdb_batch_check): New proc.
(gdb_version_check): Rewrite to use gdb_batch_check.
* python/libstdcxx/v6/printers.py: Import gdb.types.
(FilteringTypePrinter): New class.
(add_one_type_printer, register_type_printers): New functions.
(register_libstdcxx_printers): Call register_type_printers.

From-SVN: r193573

11 years agoFix commit of testcase which got truncated somehow.
Ian Bolton [Fri, 16 Nov 2012 17:36:00 +0000 (17:36 +0000)]
Fix commit of testcase which got truncated somehow.

From-SVN: r193571

11 years ago* params.def (max-peeled-insns, max-completely-peeled-insns): Reduce to 100.
Jan Hubicka [Fri, 16 Nov 2012 17:27:30 +0000 (17:27 +0000)]
* params.def (max-peeled-insns, max-completely-peeled-insns): Reduce to 100.

From-SVN: r193570

11 years agocpplib.h (struct cpp_options): Add canonical_system_headers.
Simon Baldwin [Fri, 16 Nov 2012 17:14:05 +0000 (17:14 +0000)]
cpplib.h (struct cpp_options): Add canonical_system_headers.

    * include/cpplib.h (struct cpp_options): Add canonical_system_headers.
    * files.c (find_file_in_dir): Call maybe_shorter_path() only if
    canonical_system_headers is set.
    * init.c (cpp_create_reader): Initialize canonical_system_headers.
    * configure.ac: Add new --enable-canonical-system-headers.
    * configure: Regenerate.
    * config.in: Regenerate.

    * doc/cppopts.texi: Document -f[no-]canonical-system-headers.
    * doc/install.texi: Document --enable-canonical-system-headers.

    * c.opt: Add f[no-]canonical-system-headers.
    * c-opts.c (c_common_handle_option): Handle
    OPT_fcanonical_system_headers.

From-SVN: r193569

11 years agore PR fortran/55297 ([OOP] type-bound operator clashes with abstract interface)
Janus Weil [Fri, 16 Nov 2012 17:02:02 +0000 (18:02 +0100)]
re PR fortran/55297 ([OOP] type-bound operator clashes with abstract interface)

2012-11-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55297
* resolve.c (resolve_typebound_intrinsic_op): Only add typebound
operators to the operator list in the namespace of the derived type.

2012-11-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/55297
* gfortran.dg/typebound_operator_18.f90: New.

From-SVN: r193568

11 years agore PR rtl-optimization/55330 (ICE: Maximum number of LRA constraint passes is achieve...
Vladimir Makarov [Fri, 16 Nov 2012 16:32:02 +0000 (16:32 +0000)]
re PR rtl-optimization/55330 (ICE: Maximum number of LRA constraint passes is achieved (15) on gfortran.dg/actual_array_constructor_1.f90)

2012-11-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55330
* lra-constraints.c (MAX_INHERITANCE_PASSES): New macro.
(lra_inheritance, lra_undo_inheritance): Use it to limit number of
the passes.

2012-11-16  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/55330
* gfortran.dg/pr55330.f90: New test.

From-SVN: r193567

11 years agocompiler: don't remove floating point conversion of typed constant
Ian Lance Taylor [Fri, 16 Nov 2012 16:30:35 +0000 (16:30 +0000)]
compiler: don't remove floating point conversion of typed constant

From-SVN: r193565

11 years agoMake-lang.in (gccgo$(exeext)): Add + at start of command.
Ian Lance Taylor [Fri, 16 Nov 2012 16:27:54 +0000 (16:27 +0000)]
Make-lang.in (gccgo$(exeext)): Add + at start of command.

* Make-lang.in (gccgo$(exeext)): Add + at start of command.
(go1$(exeext)): Likewise.

From-SVN: r193564

11 years agogcc-dg.exp (cleanup-saved-temps): Add .mii to suffixes.
Uros Bizjak [Fri, 16 Nov 2012 15:50:05 +0000 (16:50 +0100)]
gcc-dg.exp (cleanup-saved-temps): Add .mii to suffixes.

* lib/gcc-dg.exp (cleanup-saved-temps): Add .mii to suffixes.
* gcc.dg/hoist-register-pressure-1.c: Cleanup hoist rtl dump.
* gcc.dg/hoist-register-pressure-2.c: Ditto.
* gcc.dg/hoist-register-pressure-3.c: Ditto.
* gcc.dg/tree-prof/peel-1.c: Cleanup loop2_unroll rtl dump.
* gcc.dg/tree-prof/unroll-1.c: Ditto.

From-SVN: r193563

11 years agoPR c++/54875 - Error with alias template that resolves to an enum
Dodji Seketeli [Fri, 16 Nov 2012 15:20:03 +0000 (15:20 +0000)]
PR c++/54875 -  Error with alias template that resolves to an enum

Consider this short example:

     1 template<typename T>
     2 using AddConst = T const;
     3
     4 enum FwdEnum : int;
     5
     6 int main() {
     7   AddConst<FwdEnum> *ptr = nullptr;
     8 }

At line 7, when we build the type for AddConst<FwdEnum> in
lookup_template_class_1, the resulting type is the enum FwdEnum.  This
confuses lookup_template_class_1 near the if below, wrongly making it
taking the branch and thus calling tsubst_enum while it shouldn't:

      if (TREE_CODE (t) == ENUMERAL_TYPE && !is_dependent_type)
/* Now that the type has been registered on the instantiations
   list, we set up the enumerators.  Because the enumeration
   constants may involve the enumeration type itself, we make
   sure to register the type first, and then create the
   constants.  That way, doing tsubst_expr for the enumeration
   constants won't result in recursive calls here; we'll find
   the instantiation and exit above.  */
tsubst_enum (template_type, t, arglist);

Before the alias template feature, the only reason why TREE_CODE (t)
== ENUMERAL_TYPE would be true is when lookup_template_class_1 is
called for an enum that is a member of a class template.  But that
condition can be also true for an alias template instantiation.

So I guess that condition should be changed to TREE_CODE
(template_type) == ENUMERAL_TYPE, to specifically detect the member
enum of a class template case.  Note that for the alias template
instantiation case above, template_type points to a TEMPLATE_TYPE_PARM
which name is AddConst.

This is what the patchlet below does.

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp/

* pt.c (lookup_template_class_1): Look at the type of the
potential member enum of class template to determine if we are
actually substituting into a member enum of class template.

gcc/testsuite/

* g++.dg/cpp0x/alias-decl-27.C: New test.

From-SVN: r193562

11 years agoconfigure.ac: Invoke AM_MAINTAINER_MODE.
Tom Tromey [Fri, 16 Nov 2012 15:19:15 +0000 (15:19 +0000)]
configure.ac: Invoke AM_MAINTAINER_MODE.

* configure.ac: Invoke AM_MAINTAINER_MODE.
* aclocal.m4, configure, Makefile.in, asan/Makefile.in,
interception/Makefile.in, sanitizer_common/Makefile.in: Rebuild.

From-SVN: r193561

11 years agot-linux: New file; define MULTIARCH_DIRNAME.
Matthias Klose [Fri, 16 Nov 2012 15:19:14 +0000 (15:19 +0000)]
t-linux: New file; define MULTIARCH_DIRNAME.

2012-11-16  Matthias Klose  <doko@ubuntu.com>

        * config/pa/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <hppa*64*-*-linux*, hppa*-*-linux*> (tmake_file):
        Include pa/t-linux.

From-SVN: r193560

11 years ago* lib/target-supports.exp
Uros Bizjak [Fri, 16 Nov 2012 14:53:53 +0000 (15:53 +0100)]
* lib/target-supports.exp
(check_effective_target_has_w_floating_suffix): Use options for c++ only.
(check_effective_target_has_q_floating_suffix): Ditto.

From-SVN: r193559

11 years agore PR c++/55337 (ICE tree check: expected sizeof_expr, have alignof_expr in cp_tree_e...
Jakub Jelinek [Fri, 16 Nov 2012 14:33:44 +0000 (15:33 +0100)]
re PR c++/55337 (ICE tree check: expected sizeof_expr, have alignof_expr in cp_tree_equal, at cp/tree.c:2608)

PR c++/55337
* tree.c (cp_tree_equal) <case ALIGNOF_EXPR>: Use SIZEOF_EXPR_TYPE_P
only on SIZEOF_EXPR.

* g++.dg/template/alignof2.C: New test.

From-SVN: r193558

11 years agoDefine/use hardware pointer type for stack unwind
H.J. Lu [Fri, 16 Nov 2012 12:02:29 +0000 (12:02 +0000)]
Define/use hardware pointer type for stack unwind

PR other/55333
* include/sanitizer/common_interface_defs.h (uhwptr): New type
for hardware pointer.
* sanitizer_common/sanitizer_stacktrace.cc (StackTrace::FastUnwindStack):
Replace uptr with uhwptr for stack unwind.

From-SVN: r193557

11 years ago* ChangeLog: Add ChangeLog entry for my last commit.
Uros Bizjak [Fri, 16 Nov 2012 11:49:08 +0000 (12:49 +0100)]
* ChangeLog: Add ChangeLog entry for my last commit.

From-SVN: r193556

11 years agomv1.C (dg-options): Add -march=x86-64.
Uros Bizjak [Fri, 16 Nov 2012 11:45:15 +0000 (12:45 +0100)]
mv1.C (dg-options): Add -march=x86-64.

* g++.dg/mv1.C (dg-options): Add -march=x86-64.
* g++.dg/mv6.C (dg-options): Ditto.

From-SVN: r193555

11 years agore PR tree-optimization/54073 (SciMark Monte Carlo test performance has seriously...
Jakub Jelinek [Fri, 16 Nov 2012 11:40:39 +0000 (12:40 +0100)]
re PR tree-optimization/54073 (SciMark Monte Carlo test performance has seriously decreased in recent GCC releases)

PR target/54073
* config/i386/i386.md (mov<mode>cc): Use comparison_operator
instead of ordered_comparison_operator resp.
ix86_fp_comparison_operator predicates.
* config/i386/i386.c (ix86_expand_fp_movcc): Reject TImode
or for -m32 DImode comparisons.

From-SVN: r193554

11 years agore PR tree-optimization/54717 (Runtime regression: polyhedron test "rnflow" degraded)
Jan Hubicka [Fri, 16 Nov 2012 10:37:25 +0000 (11:37 +0100)]
re PR tree-optimization/54717 (Runtime regression: polyhedron test "rnflow" degraded)

PR tree-optimization/54717
* tree-ssa-pre.c (do_partial_partial_insertion): Consider also edges
with ANTIC_IN.

From-SVN: r193553

11 years agoEnable building of libsanitizer on sparc linux
Dodji Seketeli [Fri, 16 Nov 2012 08:11:03 +0000 (08:11 +0000)]
Enable building of libsanitizer on sparc linux

libsanitizer/ChangeLog:

* configure.tgt: Enable sparc linux.

From-SVN: r193552

11 years ago* lib/target_suports.exp
Uros Bizjak [Fri, 16 Nov 2012 07:51:43 +0000 (08:51 +0100)]
* lib/target_suports.exp
(check_effective_target_has_w_floating_suffix): New procedure.
(check_effective_target_has_q_floating_suffix): Ditto.
* g++.dg/cpp0x/gnu_fext-numeric-literals.C: Add dg-error directive
for unsupported non-standard suffix on floating constant.
* g++.dg/cpp0x/std_fext-numeric-literals.C: Ditto.

From-SVN: r193551

11 years agoi386-protos.h (ix86_emit_mode_set): Add third argument.
Uros Bizjak [Fri, 16 Nov 2012 07:42:19 +0000 (08:42 +0100)]
i386-protos.h (ix86_emit_mode_set): Add third argument.

* config/i386/i386-protos.h (ix86_emit_mode_set): Add third argument.
* config/i386/i386.h (EMIT_MODE_SET): Update.
* config/i386/i386.c (ix86_avx_emit_vzeroupper): New function.
(ix86_emit_mode_set) <AVX_U128>: Call ix86_avx_emit_vzeroupper.

From-SVN: r193550

11 years agoAMD bdver3 enablement
Ganesh Gopalasubramanian [Fri, 16 Nov 2012 07:18:37 +0000 (07:18 +0000)]
AMD bdver3 enablement

From-SVN: r193549

11 years agoAMD bdver3 enablement
Ganesh Gopalasubramanian [Fri, 16 Nov 2012 07:17:30 +0000 (07:17 +0000)]
AMD bdver3 enablement

From-SVN: r193548

11 years agoFix gcc.c-torture/compile/pr53410-2.c on sparc.
David S. Miller [Fri, 16 Nov 2012 05:31:46 +0000 (05:31 +0000)]
Fix gcc.c-torture/compile/pr53410-2.c on sparc.

* expmed.c (expand_shift_1): Don't strip non-integral SUBREGs.

From-SVN: r193547

11 years agoDaily bump.
GCC Administrator [Fri, 16 Nov 2012 00:18:13 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193546

11 years agoAdd support for sparc fused compare-and-branch.
David S. Miller [Thu, 15 Nov 2012 21:24:22 +0000 (21:24 +0000)]
Add support for sparc fused compare-and-branch.

gcc/

2012-11-15  David S. Miller  <davem@davemloft.net>

* configure.ac: Add check for assembler SPARC4 instruction
support.
* configure: Rebuild.
* config.in: Add HAVE_AS_SPARC4 section.
* config/sparc/sparc.opt (mcbcond): New option.
* doc/invoke.texi: Document it.
* config/sparc/constraints.md: New constraint 'A' for 5-bit signed
immediates.
* doc/md.texi: Document it.
* config/sparc/sparc.c (dump_target_flag_bits): Handle MASK_CBCOND.
(sparc_option_override): Likewise.
(emit_cbcond_insn): New function.
(emit_conditional_branch_insn): Call it.
(emit_cbcond_nop): New function.
(output_ubranch): Use cbcond, remove label arg.
(output_cbcond): New function.
* config/sparc/sparc-protos.h (output_ubranch): Update.
(output_cbcond): Declare it.
(emit_cbcond_nop): Likewise.
* config/sparc/sparc.md (type attribute): New types 'cbcond'
and uncond_cbcond.
(emit_cbcond_nop): New attribute.
(length attribute): Handle cbcond and uncond_cbcond.
(in_call_delay attribute): Reject cbcond and uncond_cbcond.
(in_branch_delay attribute): Likewise.
(in_uncond_branch_delay attribute): Likewise.
(in_annul_branch_delay attribute): Likewise.
(*cbcond_sp32, *cbcond_sp64): New insn patterns.
(jump): Rewrite into an expander.
(*jump_ubranch, *jump_cbcond): New patterns.
* config/sparc/niagara4.md: Match 'cbcond' in 'n4_cti'.
* config/sparc/sparc.h (AS_NIAGARA4_FLAG): New macro, use it
when target default is niagara4.
(SPARC_SIMM5_P): Define.
* config/sparc/sol2.h (AS_SPARC64_FLAG): Adjust.
(AS_SPARC32_FLAG): Define.
(ASM_CPU32_DEFAULT_SPEC, ASM_CPU64_DEFAULT_SPEC): Use
AS_NIAGARA4_FLAG as needed.

From-SVN: r193543

11 years ago* MAINTAINERS (Write After Approval): Add myself.
Roland McGrath [Thu, 15 Nov 2012 19:12:53 +0000 (19:12 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r193542

11 years agosoft-fp updated from GLIBC upstream.
Marcus Shawcroft [Thu, 15 Nov 2012 18:39:47 +0000 (18:39 +0000)]
soft-fp updated from GLIBC upstream.

From-SVN: r193540

11 years agoexpr.c (expand_cond_expr_using_cmove): Use promoted mode for temp.
Steve Ellcey [Thu, 15 Nov 2012 17:27:44 +0000 (17:27 +0000)]
expr.c (expand_cond_expr_using_cmove): Use promoted mode for temp.

2012-11-15  Steve Ellcey  <sellcey@mips.com>

* expr.c (expand_cond_expr_using_cmove): Use promoted mode for temp.

From-SVN: r193539

11 years agofmaq.c (fmaq): Merge from GLIBC.
Tobias Burnus [Thu, 15 Nov 2012 17:22:21 +0000 (18:22 +0100)]
fmaq.c (fmaq): Merge from GLIBC.

2012-11-15  Tobias Burnus  <burnus@net-b.de>
            Joseph Myers  <joseph@codesourcery.com>

        * math/fmaq.c (fmaq): Merge from GLIBC. Fix fma
        underflows with small x * y; Fix overflow results
        outside round-to-nearest mode; make use of Dekker
        and Knuth algorithms use round-to-nearest.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r193538

11 years agore PR tree-optimization/54619 (GCC aborts during compilation with '-O2 -mips16')
Tom de Vries [Thu, 15 Nov 2012 16:49:45 +0000 (16:49 +0000)]
re PR tree-optimization/54619 (GCC aborts during compilation with '-O2 -mips16')

2012-11-15  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/54619
* tree-ssa-loop-ivopts.c (get_use_type): New function.
(get_computation_at): Use get_use_type.
(get_computation_cost_at): Declare and set mem_mode.  Use mem_mode.

From-SVN: r193537

11 years agoMAINTAINERS: (libsanitizer...
Dmitry Vyukov [Thu, 15 Nov 2012 16:28:39 +0000 (08:28 -0800)]
MAINTAINERS: (libsanitizer...

* MAINTAINERS: (libsanitizer, asan.c): Add myself,
Kostya Serebryany (kcc@google.com) and
Jakub Jelinek (jakub@redhat.com).
Rename area for Dodji Seketeli (dodji@redhat.com).

From-SVN: r193536

11 years agore PR c++/54903 (Auto + static in-class constant initialization not working)
Jason Merrill [Thu, 15 Nov 2012 16:11:56 +0000 (11:11 -0500)]
re PR c++/54903 (Auto + static in-class constant initialization not working)

PR c++/54903
* decl2.c (mark_used): Don't complain about auto in templates.

From-SVN: r193535

11 years agoProperly set MULTISUBDIR and gcc_version
H.J. Lu [Thu, 15 Nov 2012 16:00:47 +0000 (16:00 +0000)]
Properly set MULTISUBDIR and gcc_version

* configure.ac: Properly set MULTISUBDIR.
* asan/Makefile.am (gcc_version): New.
* interception/Makefile.am (gcc_version): Likewise.
* sanitizer_common/Makefile.am (gcc_version): Likewise.
* configure: Regenerated.
* asan/Makefile.in: Likewise.
* interception/Makefile.in: Likewise.
* sanitizer_common/Makefile.in: Likewise.

From-SVN: r193534

11 years agoasan.c (report_error_func): Set DECL_IGNORED_P, don't touch DECL_ASSEMBLER_NAME.
Jakub Jelinek [Thu, 15 Nov 2012 13:12:36 +0000 (14:12 +0100)]
asan.c (report_error_func): Set DECL_IGNORED_P, don't touch DECL_ASSEMBLER_NAME.

* asan.c (report_error_func): Set DECL_IGNORED_P, don't touch
DECL_ASSEMBLER_NAME.
(asan_init_func): Likewise.
(asan_finish_file): Use void * instead of __asan_global * as
type of __asan_{,un}register_globals.  Set DECL_IGNORED_P on
the decls.

From-SVN: r193532

11 years agoAdd myself as asan co-reviewer
Dodji Seketeli [Thu, 15 Nov 2012 12:36:50 +0000 (12:36 +0000)]
Add myself as asan co-reviewer

ChangeLog:

* MAINTAINERS: (asan.c, related): Add myself.

From-SVN: r193530

11 years agoMakefile.in (if_multiarch): Don't use a GNU make 3.81 feature.
Matthias Klose [Thu, 15 Nov 2012 11:58:42 +0000 (11:58 +0000)]
Makefile.in (if_multiarch): Don't use a GNU make 3.81 feature.

2012-11-15  Matthias Klose  <doko@ubuntu.com>

        * Makefile.in (if_multiarch): Don't use a GNU make 3.81 feature.

From-SVN: r193529

11 years agotests
Jason Merrill [Thu, 15 Nov 2012 01:54:00 +0000 (20:54 -0500)]
tests

From-SVN: r193527

11 years agore PR c++/37276 (Trouble with some (C99?) math builtins and namespace std)
Jason Merrill [Thu, 15 Nov 2012 01:53:48 +0000 (20:53 -0500)]
re PR c++/37276 (Trouble with some (C99?) math builtins and namespace std)

PR c++/37276
* decl.c (decls_match): Remove #ifdef around earlier fix.

From-SVN: r193526

11 years agoclass.c (finish_struct_1): Check virtual functions for missing ABI tags.
Jason Merrill [Thu, 15 Nov 2012 01:53:37 +0000 (20:53 -0500)]
class.c (finish_struct_1): Check virtual functions for missing ABI tags.

* class.c (finish_struct_1): Check virtual functions
for missing ABI tags.

From-SVN: r193525

11 years agore PR c++/55275 (abi_tag attribute doesn't work on explicit specializations of class...
Jason Merrill [Thu, 15 Nov 2012 01:53:23 +0000 (20:53 -0500)]
re PR c++/55275 (abi_tag attribute doesn't work on explicit specializations of class templates)

PR c++/55275
* pt.c (maybe_process_partial_specialization): Update
DECL_SOURCE_LOCATION for new specializations.

From-SVN: r193524

11 years agore PR libstdc++/53841 ([C++11] condition_variable::wait_until() fails with high resol...
Jonathan Wakely [Thu, 15 Nov 2012 01:38:17 +0000 (01:38 +0000)]
re PR libstdc++/53841 ([C++11] condition_variable::wait_until() fails with high resolution clocks)

PR libstdc++/53841
* include/std/condition_variable (condition_variable::wait_until):
Handle clocks with higher resolution than __clock_t.
(condition_variable::__wait_until_impl): Remove unnecessary _Clock
parameter.
* testsuite/30_threads/condition_variable/members/53841.cc: New.

From-SVN: r193523

11 years agore PR bootstrap/55051 (profiledbootstrap failed)
Jan Hubicka [Thu, 15 Nov 2012 01:07:01 +0000 (02:07 +0100)]
re PR bootstrap/55051 (profiledbootstrap failed)

PR bootstrap/55051
* gcov-io.c (gcov_read_summary): Fix array bound check.

From-SVN: r193522

11 years agoConsider *-*-nacl* targets ELF
Roland McGrath [Thu, 15 Nov 2012 00:38:07 +0000 (00:38 +0000)]
Consider *-*-nacl* targets ELF

* configure.ac (ENABLE_GOLD): Consider *-*-nacl* targets ELF.
* configure: Regenerate.

From-SVN: r193521

11 years agoDaily bump.
GCC Administrator [Thu, 15 Nov 2012 00:18:38 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193519

11 years agoAdd support for multilib run-time libraries
H.J. Lu [Thu, 15 Nov 2012 00:03:37 +0000 (00:03 +0000)]
Add support for multilib run-time libraries

PR other/55291
* configure.ac (--enable-version-specific-runtime-libs): New option.
(AC_CANONICAL_SYSTEM): New.
(AM_ENABLE_MULTILIB): Moved right after AM_INIT_AUTOMAKE.
(toolexecdir): Support multilib.
(toolexeclibdir): Likewise.
(multilib_arg): New.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
* asan/Makefile.in: Likewise.
* interception/Makefile.in: Likewise.
* sanitizer_common/Makefile.in: Likewise.

From-SVN: r193516

11 years agore PR debug/55328 (ICE: in output_addr_table_entry, at dwarf2out.c:21780 with -gsplit...
Sterling Augustine [Wed, 14 Nov 2012 23:36:50 +0000 (23:36 +0000)]
re PR debug/55328 (ICE: in output_addr_table_entry, at dwarf2out.c:21780 with -gsplit-dwarf)

2012-11-14  Sterling Augustine  <saugustine@google.com>

PR debug/55328
* dwarf2out.c (index_address_table_entry): Check a node's refcount.

From-SVN: r193515

11 years agore PR libstdc++/55320 (Invalid delete with throwing copy-c'tor passed to std::function)
Jonathan Wakely [Wed, 14 Nov 2012 23:33:01 +0000 (23:33 +0000)]
re PR libstdc++/55320 (Invalid delete with throwing copy-c'tor passed to std::function)

PR libstdc++/55320
* include/std/functional (function::function(F)): Set _M_manager after
operations that could throw.
(_Function_base::_Ref_manager::_M_init_functor): Use addressof.
* include/tr1/functional
(_Function_base::_Ref_manager::_M_init_functor): Use addressof.
(_Function_base::_Base_manager::_M_get_pointer): Likewise.
* testsuite/20_util/function/cons/55320.cc: New.
* testsuite/20_util/function/cons/addressof.cc: New.
* testsuite/20_util/function/cons/callable.cc: Remove header.
* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line numbers.
* testsuite/tr1/3_function_objects/function/10.cc: New.

From-SVN: r193514

11 years agobuiltins.c (define_builtin): Accept ECF flags and use set_call_expr_flags.
Jan Hubicka [Wed, 14 Nov 2012 23:14:05 +0000 (00:14 +0100)]
builtins.c (define_builtin): Accept ECF flags and use set_call_expr_flags.

* builtins.c (define_builtin): Accept ECF flags and
use set_call_expr_flags.
(initialize_builtins): Update.

From-SVN: r193513

11 years agore PR bootstrap/55051 (profiledbootstrap failed)
Jan Hubicka [Wed, 14 Nov 2012 23:03:22 +0000 (00:03 +0100)]
re PR bootstrap/55051 (profiledbootstrap failed)

PR bootstrap/55051
* ipa-inline.c (edge_badness): Improve dumping; fix overflow.

From-SVN: r193512

11 years agoasan-dg.exp: New file.
Jakub Jelinek [Wed, 14 Nov 2012 22:58:01 +0000 (23:58 +0100)]
asan-dg.exp: New file.

* lib/asan-dg.exp: New file.
* gcc.dg/asan/asan.exp: New file.
* g++.dg/dg.exp: Prune also asan tests.
* g++.dg/asan/asan.exp: New file.
* c-c++-common/asan/memcmp-1.c: New test.

From-SVN: r193511

11 years agot-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
Matthias Klose [Wed, 14 Nov 2012 22:45:25 +0000 (22:45 +0000)]
t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.

2012-11-14  Matthias Klose  <doko@ubuntu.com>

        * config/sparc/t-linux64: Add multiarch names in MULTILIB_OSDIRNAMES.
        * config/sparc/t-linux: New file; define MULTIARCH_DIRNAME.
        * config.gcc <sparc-*-linux*> (tmake_file): Include sparc/t-linux
        for 32bit non-biarch configurations.

From-SVN: r193510

11 years agoabi_tag.cc: Adjust expected demangling for 128bit long-double targets.
Uros Bizjak [Wed, 14 Nov 2012 22:23:51 +0000 (23:23 +0100)]
abi_tag.cc: Adjust expected demangling for 128bit long-double targets.

* testsuite/26_numerics/complex/abi_tag.cc: Adjust expected
demangling for 128bit long-double targets.

From-SVN: r193509

11 years agoinvoke.texi: Document -print-multiarch.
Matthias Klose [Wed, 14 Nov 2012 21:29:15 +0000 (21:29 +0000)]
invoke.texi: Document -print-multiarch.

2012-11-14  Matthias Klose  <doko@ubuntu.com>

        * doc/invoke.texi: Document -print-multiarch.
        * doc/install.texi: Document --enable-multiarch.
        * doc/fragments.texi: Document MULTILIB_OSDIRNAMES, MULTIARCH_DIRNAME.
        * configure.ac: Add --enable-multiarch option.
        * configure: Regenerate.
        * Makefile.in (s-mlib): Pass MULTIARCH_DIRNAME to genmultilib.
        enable_multiarch, with_float: New macros.
        if_multiarch: New macro, define in terms of enable_multiarch.
        * genmultilib: Add new argument for the multiarch name.
        * gcc.c (multiarch_dir): Define.
        (for_each_path): Search for multiarch suffixes.
        (driver_handle_option): Handle multiarch option.
        (do_spec_1): Pass -imultiarch if defined.
        (main): Print multiarch.
        (set_multilib_dir): Separate multilib and multiarch names
        from multilib_select.
        (print_multilib_info): Ignore multiarch names in multilib_select.
        * incpath.c (add_standard_paths): Search the multiarch include dirs.
        * cppdefault.h (default_include): Document multiarch in multilib
        member.
        * cppdefault.c: [LOCAL_INCLUDE_DIR, STANDARD_INCLUDE_DIR] Add an
        include directory for multiarch directories.
        * common.opt: New options --print-multiarch and -imultilib.
        * config.gcc <i[34567]86-*-linux* | x86_64-*-linux*> (tmake_file):
        Include i386/t-linux.
        <i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu> (tmake_file):
        Include i386/t-kfreebsd.
        <i[34567]86-*-gnu*> (tmake_file): Include i386/t-gnu.
        * config/i386/t-linux64: Add multiarch names in
        MULTILIB_OSDIRNAMES, define MULTIARCH_DIRNAME.
        * config/i386/t-gnu: New file.
        * config/i386/t-kfreebsd: Likewise.
        * config/i386/t-linux: Likewise.

From-SVN: r193508

11 years agof95-lang.c (ATTR_NOTHROW_LEAF_MALLOC_LIST): New macro.
Jan Hubicka [Wed, 14 Nov 2012 21:09:58 +0000 (22:09 +0100)]
f95-lang.c (ATTR_NOTHROW_LEAF_MALLOC_LIST): New macro.

* f95-lang.c (ATTR_NOTHROW_LEAF_MALLOC_LIST): New macro.
(gfc_define_builtin): Use set_call_expr_flags.
(gfc_init_builtin_functions): Update.

From-SVN: r193507

11 years agotree.c (set_call_expr_flags): New function.
Jan Hubicka [Wed, 14 Nov 2012 21:08:52 +0000 (22:08 +0100)]
tree.c (set_call_expr_flags): New function.

* tree.c (set_call_expr_flags): New function.
(local_define_builtin): Use it.
* tree.h (set_call_expr_flags): Declare.

From-SVN: r193506

11 years agore PR c++/55323 (ICE in expand_aggr_init_1, at cp/init.c:1718)
Paolo Carlini [Wed, 14 Nov 2012 20:29:07 +0000 (20:29 +0000)]
re PR c++/55323 (ICE in expand_aggr_init_1, at cp/init.c:1718)

/cp
2012-11-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55323
* init.c (emit_mem_initializers): Skip arguments == error_mark_node.

/testsuite
2012-11-14  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/55323
* g++.dg/cpp0x/vt-55323.C: New.

From-SVN: r193505

11 years agore PR c++/11750 (class scope using-declaration lookup not implemented)
Fabien Chêne [Wed, 14 Nov 2012 20:12:47 +0000 (21:12 +0100)]
re PR c++/11750 (class scope using-declaration lookup not implemented)

gcc/testsuite/ChangeLog

2012-11-14  Fabien Chêne  <fabien@gcc.gnu.org>

PR c++/11750
* g++.dg/inherit/vitual9.C: New.

gcc/cp/ChangeLog

2012-11-14  Fabien Chêne  <fabien@gcc.gnu.org>

PR c++/11750
* call.c (build_new_method_call_1): Check that the instance type
and the function context are the same before setting the flag
LOOKUP_NONVIRTUAL.

From-SVN: r193504

11 years agore PR target/47440 (Use LCM for vzeroupper insertion)
Uros Bizjak [Wed, 14 Nov 2012 16:47:29 +0000 (17:47 +0100)]
re PR target/47440 (Use LCM for vzeroupper insertion)

PR target/47440
* config/i386/i386.c (gate_insert_vzeroupper): New function.
(rest_of_handle_insert_vzeroupper): Ditto.
(struct rtl_opt_pass pass_insert_vzeroupper): New.
(ix86_option_override): Register vzeroupper insertion pass here.
(ix86_check_avx256_register): Handle SUBREGs properly.
(ix86_init_machine_status): Remove optimize_mode_switching[AVX_U128]
initialization.

From-SVN: r193503

11 years agoconfigure.ac (HAVE_LD_LARGE_TOC): Add AIX test.
David Edelsohn [Wed, 14 Nov 2012 16:41:21 +0000 (11:41 -0500)]
configure.ac (HAVE_LD_LARGE_TOC): Add AIX test.

        * configure.ac (HAVE_LD_LARGE_TOC): Add AIX test.
        * configure: Regenerated.
        * config/rs6000/aix61.h (SUBTARGET_OVERRIDE_OPTIONS): Warn if
        other toc options used with cmodel. Disable TARGET_NO_FP_IN_TOC
        and TARGET_NO_SUM_IN_TOC if not CMODEL_SMALL. CMODEL_MEDIUM means
        CMODEL_LARGE on AIX.
        (ASM_SPEC): -mvsx implies -mpwr6. Add -many.
        (ASM_DEFAULT_SPEC): Use -mpwr4.
        (TARGET_CMODEL): Define.
        (SET_CMODEL): Define.
        * config/rs6000/rs6000.md (largetoc_high_aix<mode>): New.
        (largetoc_high_plus_aix<mode>): New.
        (largetoc_low<mode>): Change to mode iterator. Test TARGET_TOC
        instead of TARGET_ELF.
        (tocref): Remove TARGET_ELF test.
        * config/rs6000/rs6000.c (output_toc): Use [TE] for large TOC
        symbols on AIX.
        * config/rs6000/aix64.opt (mcmodel): New.

From-SVN: r193502

11 years agoi386.c (ix86_get_function_versions_dispatcher): Guard variables with ASM_OUTPUT_TYPE_...
Andreas Tobler [Wed, 14 Nov 2012 15:55:50 +0000 (16:55 +0100)]
i386.c (ix86_get_function_versions_dispatcher): Guard variables with ASM_OUTPUT_TYPE_DIRECTIVE and HAVE_GNU_INDIRECT_FUNCTION...

2012-11-14  Andreas Tobler  <andreast@fgznet.ch>

* config/i386/i386.c (ix86_get_function_versions_dispatcher): Guard
variables with ASM_OUTPUT_TYPE_DIRECTIVE and
HAVE_GNU_INDIRECT_FUNCTION where needed.

From-SVN: r193501

11 years agoCheck __x86_64__ instead of __WORDSIZE
H.J. Lu [Wed, 14 Nov 2012 13:45:56 +0000 (13:45 +0000)]
Check __x86_64__ instead of __WORDSIZE

PR other/55292
Backport from upstream revision 167883
* sanitizer_common/sanitizer_linux.cc (internal_mmap): Check
__x86_64__ instead of __WORDSIZE.
(internal_filesize): Likwise.

From-SVN: r193500

11 years agoDon't set AC_CONFIG_AUX_DIR
H.J. Lu [Wed, 14 Nov 2012 12:21:28 +0000 (12:21 +0000)]
Don't set AC_CONFIG_AUX_DIR

* configure.ac (AC_CONFIG_AUX_DIR): Removed.
* Makefile.in: Regenerated.
* configure: Likewise.

From-SVN: r193499

11 years agoRename libsanitizer/ChangeLog.asan to libsanitizer/ChangeLog
H.J. Lu [Wed, 14 Nov 2012 11:41:10 +0000 (03:41 -0800)]
Rename libsanitizer/ChangeLog.asan to libsanitizer/ChangeLog

From-SVN: r193498

11 years agoUpdate libsanitizer generated files
H.J. Lu [Wed, 14 Nov 2012 11:09:00 +0000 (11:09 +0000)]
Update libsanitizer generated files

* gcc_update: Update libsanitizer generated files.

From-SVN: r193497

11 years agoDaily bump.
GCC Administrator [Wed, 14 Nov 2012 00:18:21 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193494

11 years agoUpdate configure.ac for GCC tree and remove unused files
H.J. Lu [Wed, 14 Nov 2012 00:02:12 +0000 (00:02 +0000)]
Update configure.ac for GCC tree and remove unused files

PR other/55304
* acinclude.m4: New file.
* Makefile.am (ACLOCAL_AMFLAGS): New.
* configure.ac (AC_PREREQ): Set to 2.64.
(AC_CONFIG_AUX_DIR): Set to "..".
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: Likewise.
* asan/Makefile.in: Likewise.
* interception/Makefile.in: Likewise.
* sanitizer_common/Makefile.in: Likewise.

* config.guess: Removed.
* config.sub: Likewise.
* depcomp: Likewise.
* install-sh: Likewise.
* ltmain.sh: Likewise.
* missing: Likewise.

From-SVN: r193491

11 years agocommon.opt (fPIC, [...]): Create a Negative loop such that any of these options disab...
Ian Lance Taylor [Tue, 13 Nov 2012 23:03:56 +0000 (23:03 +0000)]
common.opt (fPIC, [...]): Create a Negative loop such that any of these options disables the others.

* common.opt (fPIC, fPIE, fpic, fpie): Create a Negative loop such
that any of these options disables the others.

From-SVN: r193489

11 years agoMove libsanitizer configure logic to subdirectory
Richard Henderson [Tue, 13 Nov 2012 22:19:44 +0000 (14:19 -0800)]
Move libsanitizer configure logic to subdirectory

From-SVN: r193487

11 years agocgraph.c (insert_new_cgraph_node_version): Use cgraph_get_node instead of cgraph_get_...
Sriraman Tallam [Tue, 13 Nov 2012 21:56:30 +0000 (21:56 +0000)]
cgraph.c (insert_new_cgraph_node_version): Use cgraph_get_node instead of cgraph_get_create_node.

2012-11-13  Sriraman Tallam  <tmsriram@google.com>

* cgraph.c (insert_new_cgraph_node_version): Use cgraph_get_node
instead of cgraph_get_create_node.
* config/i386/i386.c (ix86_get_function_versions_dispatcher): Move ifunc
not supported code to the end.

* class.c (mark_versions_used): Remove.
(resolve_address_of_overloaded_function): Call target hook
for versioned functions. Refactor to call
get_function_versions_dispatcher.
* decl.c (duplicate_decls): Add comments.
* cp/call.c (get_function_version_dispatcher): Expose function.
(mark_versions_used): Expose function.
* cp/cp-tree.h (mark_versions_used): New declaration.
(get_function_version_dispatcher): Ditto.

* testsuite/g++.dg/mv4.C: Add require ifunc. Change error message.
* testsuite/g++.dg/mv5.C: Add require ifunc.
* testsuite/g++.dg/mv6.C: Add require ifunc.

From-SVN: r193486

11 years agore PR other/55312 (libbacktrace doesn't honor --disable-werror)
Ian Lance Taylor [Tue, 13 Nov 2012 21:25:39 +0000 (21:25 +0000)]
re PR other/55312 (libbacktrace doesn't honor --disable-werror)

PR other/55312
* configure.ac: Only add -Werror if building a target library.

From-SVN: r193485

11 years agore PR tree-optimization/55253 (Revision 193298 miscompiles sqlite with -Os)
Martin Jambor [Tue, 13 Nov 2012 18:56:24 +0000 (19:56 +0100)]
re PR tree-optimization/55253 (Revision 193298 miscompiles sqlite with -Os)

2012-11-13  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/55253
* ipa-cp.c (merge_aggregate_lattices): Propagate aggs_contain_variable
flag.

* testsuite/gcc.dg/torture/pr55253.c: New test.
* testsuite/gcc.dg/torture/pr55305.c: Likewise.

From-SVN: r193484

11 years agoWorkaround PR middle-end/55142
H.J. Lu [Tue, 13 Nov 2012 18:35:32 +0000 (10:35 -0800)]
Workaround PR middle-end/55142

gcc/

2012-11-13  Eric Botcazou  <ebotcazou@adacore.com>
    H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/55142
* config/i386/i386.c (legitimize_pic_address): Properly handle
REG + CONST.
(ix86_print_operand_address): Set code to 'k' when forcing
addr32 prefix.  For x32, zero-extend negative displacement if
it < -16*1024*1024.

gcc/testsuite/

2012-11-13  H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/55142
* gcc.target/i386/pr55142-1.c: New file.
* gcc.target/i386/pr55142-2.c: Likewise.

From-SVN: r193483

11 years agomode-switching.c (create_pre_exit): Use NONDEBUG_INSN_P.
Uros Bizjak [Tue, 13 Nov 2012 17:22:04 +0000 (18:22 +0100)]
mode-switching.c (create_pre_exit): Use NONDEBUG_INSN_P.

* mode-switching.c (create_pre_exit): Use NONDEBUG_INSN_P.

From-SVN: r193482

11 years ago* ChangeLog: Fix my last entry.
Uros Bizjak [Tue, 13 Nov 2012 17:08:13 +0000 (18:08 +0100)]
* ChangeLog: Fix my last entry.

From-SVN: r193481

11 years agore PR target/41993 ([sh] ICE in create_pre_exit, at mode-switching.c:399)
Uros Bizjak [Tue, 13 Nov 2012 16:59:37 +0000 (17:59 +0100)]
re PR target/41993 ([sh] ICE in create_pre_exit, at mode-switching.c:399)

PR target/41993
* mode-switching.c (create_pre_exit): Set return_copy to last_insn
when copy_start is a function return regno instead of pseudo.
Skip debug instructions in instruction scan loop.

From-SVN: r193480

11 years agoPR c++/54466 - ICE with alias template which type-id is const qualified
Dodji Seketeli [Tue, 13 Nov 2012 16:07:39 +0000 (16:07 +0000)]
PR c++/54466 - ICE with alias template which type-id is const qualified

Consider this short example:

    template<typename T>
      struct X { };

    template<typename T>
      using Y = const X<T>;

    using Z = Y<int>;

G++ crashes in lookup_class_template_1 while trying to build the alias
template instantiation Y<int>.

I think this is indirectly due to the fact that that
lookup_class_template_1 can now yield a const qualified type like
'const X<T>'.

As a consequence, the code in lookup_template_class_1 that was trying
to access the TYPE_STUB_DECL field of the result of
lookup_template_class_1 should now be adjusted to access the
TYPE_STUB_DECL of the main variant of the resulting type instead (and
that is TYPE_MAIN_DECL); because qualified types (constructed with
build_qualified_type) have their TYPE_STUB_DECL set to NULL.

Fixed thus and tested on x86_64-unknown-linux-gnu against trunk.

gcc/cp

PR c++/54466
* pt.c (lookup_template_class_1): TYPE_STUB_DECL should be
accessed on the main variant of the type.

gcc/testsuite/

* g++.dg/cpp0x/alias-decl-26.C: New test file.

In the example of this patch, g++ crashes when trying to build the
alias template Y<int

From-SVN: r193479

11 years agoEnable libsanitizer just on x86 linux for now
Dodji Seketeli [Tue, 13 Nov 2012 15:12:12 +0000 (15:12 +0000)]
Enable libsanitizer just on x86 linux for now

This patch builds libsanitizer only on x86_64 and i?86 linux targets
for now.  I guess The build can be enabled on other targets when they
are ready.

ChangeLog:

* configure.ac: Enable libsanitizer just on x86 linux for now.
* configure: Re-generate.

From-SVN: r193478

11 years agoconfigure.ac: Disable libsanitizer on AIX.
David Edelsohn [Tue, 13 Nov 2012 14:19:14 +0000 (14:19 +0000)]
configure.ac: Disable libsanitizer on AIX.

        * configure.ac: Disable libsanitizer on AIX. Merge libquadmath
        sections.
        * configure: Regenerate.

From-SVN: r193477

11 years agoarm.c (arm_emit_coreregs_64bit_shift): Fix comment.
Andrew Stubbs [Tue, 13 Nov 2012 13:31:50 +0000 (13:31 +0000)]
arm.c (arm_emit_coreregs_64bit_shift): Fix comment.

2012-11-13  Andrew Stubbs  <ams@codesourcery.com>
            Ulrich Weigand  <ulrich.weigand@linaro.org>

* config/arm/arm.c (arm_emit_coreregs_64bit_shift): Fix comment.
* config/arm/arm.md (opt, opt_enabled): New attributes.
(enabled): Use opt_enabled.
(ashldi3, ashrdi3, lshrdi3): Add TARGET_NEON case.
(ashldi3): Allow general operands for TARGET_NEON case.
* config/arm/iterators.md (rshifts): New code iterator.
(shift, shifttype): New code attributes.
* config/arm/neon.md (UNSPEC_LOAD_COUNT): New unspec type.
(neon_load_count, ashldi3_neon_noclobber, ashldi3_neon,
signed_shift_di3_neon, unsigned_shift_di3_neon,
ashrdi3_neon_imm_noclobber, lshrdi3_neon_imm_noclobber,
<shift>di3_neon): New patterns.

Co-Authored-By: Ulrich Weigand <ulrich.weigand@linaro.org>
From-SVN: r193476

11 years agoEnable x32 check on more i386 tests
H.J. Lu [Tue, 13 Nov 2012 12:31:12 +0000 (12:31 +0000)]
Enable x32 check on more i386 tests

* gcc.target/i386/avx256-unaligned-load-2.c: Requre !ia32
instead of lp64.
* gcc.target/i386/avx256-unaligned-store-2.c: Likewise.
* gcc.target/i386/pr49715-2.c: Likewise.
* gcc.target/i386/retarg.c: Likewise.  Scan both %rdi and %edi.

From-SVN: r193475

11 years ago* Makefile.in (asan.o): Depend on $(TM_P_H).
Jakub Jelinek [Tue, 13 Nov 2012 07:38:25 +0000 (08:38 +0100)]
* Makefile.in (asan.o): Depend on $(TM_P_H).

From-SVN: r193472

11 years agore PR tree-optimization/55281 (ICE in build_int_cst_wide, at tree.c:1217 (with...
Jakub Jelinek [Tue, 13 Nov 2012 07:25:36 +0000 (08:25 +0100)]
re PR tree-optimization/55281 (ICE in  build_int_cst_wide, at tree.c:1217  (with Ofast, ok with O3))

PR tree-optimization/55281
* tree-vect-generic.c (expand_vector_condition): Accept any
is_gimple_val rather than just SSA_NAME if not COMPARISON_CLASS_P.
* fold-const.c (fold_ternary_loc): Fold VEC_COND_EXPR if arg0 is
either integer_all_onesp or integer_zerop.
* tree-vect-stmts.c (vectorizable_condition): Build the condition
using corresponding vector integer type instead of vectype.

* gcc.dg/vect/fast-math-pr55281.c: New test.
* g++.dg/opt/pr55281.C: New test.

From-SVN: r193471

11 years agore PR rtl-optimization/54127 (ICE in maybe_record_trace_start with asm goto, --target...
Jakub Jelinek [Tue, 13 Nov 2012 07:23:51 +0000 (08:23 +0100)]
re PR rtl-optimization/54127 (ICE in maybe_record_trace_start with asm goto, --target=powerpc-unknown-linux-gnu)

PR rtl-optimization/54127
* cfgrtl.c (force_nonfallthru_and_redirect): When redirecting
asm goto labels from BB_HEAD (e->dest) to target bb, decrement
LABEL_NUSES of BB_HEAD (e->dest) and increment LABEL_NUSES of
BB_HEAD (target) appropriately and adjust JUMP_LABEL and/or
REG_LABEL_TARGET and REG_LABEL_OPERAND.

* gcc.dg/torture/pr54127.c: New test.

From-SVN: r193470

11 years agoasan.c (instrument_builtin_call): Fix up dest assignment.
Jakub Jelinek [Tue, 13 Nov 2012 07:21:15 +0000 (08:21 +0100)]
asan.c (instrument_builtin_call): Fix up dest assignment.

* asan.c (instrument_builtin_call) <case BUILT_IN_BCOPY>: Fix up
dest assignment.

From-SVN: r193469

11 years agoGet sparc building again after ASAN merge.
David S. Miller [Tue, 13 Nov 2012 06:53:23 +0000 (06:53 +0000)]
Get sparc building again after ASAN merge.

libsanitizer/

* asan/asan_linux.cc (GetPcSpBp): Add sparc support.

From-SVN: r193468

11 years agore PR target/55257 (g++.dg/debug/dwarf2/non-virtual-thunk.C scan-assembler thunk...
Hans-Peter Nilsson [Tue, 13 Nov 2012 06:15:53 +0000 (06:15 +0000)]
re PR target/55257 (g++.dg/debug/dwarf2/non-virtual-thunk.C scan-assembler thunk.C:30)

PR target/55257
* config/cris/cris.c (cris_asm_output_mi_thunk): Call
final_start_function and final_end_function.

From-SVN: r193467

11 years ago* asan.c: Include tm_p.h
David Edelsohn [Tue, 13 Nov 2012 03:14:28 +0000 (03:14 +0000)]
* asan.c: Include tm_p.h

From-SVN: r193466

11 years agoconfigure.ac: Add section for configdirs for libsanitizer.
Hans-Peter Nilsson [Tue, 13 Nov 2012 01:36:17 +0000 (01:36 +0000)]
configure.ac: Add section for configdirs for libsanitizer.

* configure.ac: Add section for configdirs for libsanitizer.
Disable for cris-*-* and mmix-*-*.
* configure: Regenerate.

From-SVN: r193465

11 years agore PR target/55195 (shorten_branches generates incorrect forward branch distances)
John David Anglin [Tue, 13 Nov 2012 00:36:54 +0000 (00:36 +0000)]
re PR target/55195 (shorten_branches generates incorrect forward branch distances)

PR target/55195
* config/pa/pa.md (type): Add sibcall and sh_func_adrs insn types.
(in_branch_delay): Don't allow sibcall or sh_func_adrs insns.
(in_nullified_branch_delay): Likewise.
(in_call_delay): Likewise.
Define delay for sibcall insns.  Adjust Z3 and Z4 insn reservations for
new types.  Add opaque cond to mark all calls, sibcalls, dyncalls and
the $$sh_func_adrs call as variable.  Update type of sibcalls and
$$sh_func_adrs call.
* config/pa/pa.c (pa_adjust_insn_length): Revise to return updated
length instead of adjustment.  Handle negative and undefined call
adjustments for insn_default_length.  Remove adjustment for millicode
insn with unfilled delay slot.
(pa_output_millicode_call): Update for revised millicode length.
* config/pa/pa.h (ADJUST_INSN_LENGTH): Revise to set LENGTH.

From-SVN: r193464

11 years agoDaily bump.
GCC Administrator [Tue, 13 Nov 2012 00:18:29 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r193463

11 years ago* tree-ssa-ccp.c (dump_lattice_value) <CONSTANT>: Fix duplication.
Eric Botcazou [Mon, 12 Nov 2012 23:32:56 +0000 (23:32 +0000)]
* tree-ssa-ccp.c (dump_lattice_value) <CONSTANT>: Fix duplication.

From-SVN: r193459

11 years agofuture (atomic_future): Remove declaration of non-standard name.
Jonathan Wakely [Mon, 12 Nov 2012 23:00:41 +0000 (23:00 +0000)]
future (atomic_future): Remove declaration of non-standard name.

* include/std/future (atomic_future): Remove declaration of
non-standard name.

From-SVN: r193457

11 years agocommon.opt (fvar-tracking-uninit): Document.
Eric Botcazou [Mon, 12 Nov 2012 22:59:37 +0000 (22:59 +0000)]
common.opt (fvar-tracking-uninit): Document.

* common.opt (fvar-tracking-uninit): Document.
* toplev.c (process_options): Fix handling of flag_var_tracking_uninit.
* config/darwin.c (darwin_override_options): Likewise.

From-SVN: r193456

11 years agosched-vis.c (print_pattern): Handle NULL patterns.
Steven Bosscher [Mon, 12 Nov 2012 22:13:20 +0000 (22:13 +0000)]
sched-vis.c (print_pattern): Handle NULL patterns.

* sched-vis.c (print_pattern): Handle NULL patterns.

From-SVN: r193455

11 years agoconfigure.ac: Check for getexecname.
Ian Lance Taylor [Mon, 12 Nov 2012 21:24:19 +0000 (21:24 +0000)]
configure.ac: Check for getexecname.

* configure.ac: Check for getexecname.
* fileline.c: #include <errno.h>.  Define getexecname if not
available.
(fileline_initialize): Try to find the executable in a few
different ways.
* print.c (error_callback): Only print the filename if it came
from the backtrace state.
* configure, config.h.in: Rebuild.

Co-Authored-By: Gerald Pfeifer <gerald@pfeifer.com>
Co-Authored-By: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
From-SVN: r193454

11 years agore PR rtl-optimization/51447 (global register variable definition incorrectly removed...
Steven Bosscher [Mon, 12 Nov 2012 20:21:59 +0000 (20:21 +0000)]
re PR rtl-optimization/51447 (global register variable definition incorrectly removed as dead code)

gcc/
PR rtl-optimization/51447
* df-scan.c (df_get_entry_block_def_set): Add global regs to the set.
* df-problems.c (df_lr_local_compute): Make global regs always live.
* dce.c (deletable_insn_p): Make insns setting a global reg
inherently necessary.

testsuite/
PR rtl-optimization/51447
* gcc.c-torture/execute/pr51447.c: New test.

From-SVN: r193453