]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
11 years agoImprove pointer hash function to include all bits
Andi Kleen [Tue, 23 Apr 2013 03:09:47 +0000 (03:09 +0000)] 
Improve pointer hash function to include all bits

The hashtab pointer hash function is not very good. It throws most of the
bits in the pointer away.

This changes pointer_hash to use the mix code from jhash function that mixes
all the bits on the pointer and makes them dependent on each other, before doing
the modulo.

libiberty/:

2013-04-22  Andi Kleen <ak@linux.intel.com>

* hashtab.c (hash_pointer): Move to end of file and reimplement.

From-SVN: r198171

11 years ago* src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.
Jason Merrill [Tue, 23 Apr 2013 01:31:27 +0000 (21:31 -0400)] 
* src/c++11/hashtable_c++0x.cc: Include ext/aligned_buffer.h.

From-SVN: r198170

11 years agoDaily bump.
GCC Administrator [Tue, 23 Apr 2013 00:16:31 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198168

11 years agoDisplay profile info in graph cfg dump
Xinliang David Li [Tue, 23 Apr 2013 00:14:38 +0000 (00:14 +0000)] 
Display profile info in graph cfg dump

From-SVN: r198165

11 years agoconfigure.ac (gcc_cv_as_micromips_support): Use the --fatal-warnings option.
Catherine Moore [Mon, 22 Apr 2013 22:16:45 +0000 (18:16 -0400)] 
configure.ac (gcc_cv_as_micromips_support): Use the --fatal-warnings option.

2013-04-22  Catherine Moore  <clm@codesourcery.com>
            David Daney <ddaney.cavm@gmail.com>

        * configure.ac (gcc_cv_as_micromips_support):  Use the
        --fatal-warnings option.
        * configure: Regenerate.

Co-Authored-By: David Daney <ddaney.cavm@gmail.com>
From-SVN: r198164

11 years agoCore 1586
Jason Merrill [Mon, 22 Apr 2013 20:59:02 +0000 (16:59 -0400)] 
Core 1586

Core 1586
* parser.c (cp_parser_unqualified_id): Handle ~auto.
(cp_parser_pseudo_destructor_name): Likewise.
(cp_parser_postfix_dot_deref_expression): Adjust.
(cp_lexer_nth_token_is_keyword): New.
* semantics.c (finish_pseudo_destructor_expr): Handle ~auto.
* typeck.c (lookup_destructor): Handle ~auto.

From-SVN: r198162

11 years agopt.c (fn_type_unification): Push tinst level around type_unification_real if we aren...
Jason Merrill [Mon, 22 Apr 2013 20:40:54 +0000 (16:40 -0400)] 
pt.c (fn_type_unification): Push tinst level around type_unification_real if we aren't explaining.

gcc/cp/
* pt.c (fn_type_unification): Push tinst level around
type_unification_real if we aren't explaining.
* cp-tree.h (TFF_NO_TEMPLATE_BINDINGS): New.
* error.c (dump_function_decl): Respect it.
(subst_to_string): Pass it.
libstdc++-v3/
* testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
substitution" lines.

From-SVN: r198161

11 years agore PR c++/48665 (type of const member function)
Jason Merrill [Mon, 22 Apr 2013 20:35:58 +0000 (16:35 -0400)] 
re PR c++/48665 (type of const member function)

PR c++/48665
* rtti.c (get_typeid): Diagnose qualified function type.
* pt.c (tsubst) [POINTER_TYPE]: Likewise.

From-SVN: r198160

11 years agoerror.c (dump_aggr_type): Fix lambda detection.
Jason Merrill [Mon, 22 Apr 2013 20:33:01 +0000 (16:33 -0400)] 
error.c (dump_aggr_type): Fix lambda detection.

* error.c (dump_aggr_type): Fix lambda detection.
(dump_simple_decl): Pretty-print capture field.

From-SVN: r198159

11 years agohashtable_policy.h: Add C++11 allocator support.
François Dumont [Mon, 22 Apr 2013 20:22:07 +0000 (20:22 +0000)] 
hashtable_policy.h: Add C++11 allocator support.

2013-04-22  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/hashtable_policy.h: Add C++11 allocator support.
* include/bits/hashtable.h: Likewise.
* include/bits/unordered_set.h: Likewise.
* include/bits/unordered_map.h: Likewise.
* include/debug/unordered_set: Likewise.
* include/debug/unordered_map: Likewise.
* include/std/unordered_set: Remove bits/algobase.h
include. Replace bits/alloc_traits.h by ext/alloc_traits.h.
* include/std/unordered_map: Likewise.
* include/ext/throw_allocator.h: Add checks on calls to allocator
construct/destroy.
(std::hash<__gnu_cxx::throw_value_limit>): Add conditional throw.
(std::hash<__gnu_cxx::throw_value_random>): Likewise.
* testsuite/util/regression/rand/priority_queue
/container_rand_regression_test.tcc: Adapt.
* testsuite/util/regression/rand/assoc
/container_rand_regression_test.tcc: Likewise.
* testsuite/util/testsuite_counter_type.h: Add count of destructors.
* testsuite/23_containers/unordered_set
/not_default_constructible_hash_neg.cc: Adjust dg-error line number.
* testsuite/23_containers/unordered_set/instantiation_neg.cc: Likewise.
* testsuite/23_containers/unordered_set/allocator/copy.cc: New.
* testsuite/23_containers/unordered_set/allocator/copy_assign.cc: New.
* testsuite/23_containers/unordered_set/allocator/minimal.cc: New.
* testsuite/23_containers/unordered_set/allocator/move_assign.cc: New.
* testsuite/23_containers/unordered_set/allocator/noexcept.cc: New.
* testsuite/23_containers/unordered_set/allocator/swap.cc: New.
* testsuite/23_containers/unordered_multiset/allocator/copy.cc: New.
* testsuite/23_containers/unordered_multiset/allocator/copy_assign.cc:
New.
* testsuite/23_containers/unordered_multiset/allocator/minimal.cc: New.
* testsuite/23_containers/unordered_multiset/allocator/move_assign.cc:
New.
* testsuite/23_containers/unordered_multiset/allocator/noexcept.cc: New.
* testsuite/23_containers/unordered_multiset/allocator/swap.cc: New.
* testsuite/23_containers/unordered_map/allocator/copy.cc: New.
* testsuite/23_containers/unordered_map/allocator/copy_assign.cc: New.
* testsuite/23_containers/unordered_map/allocator/minimal.cc: New.
* testsuite/23_containers/unordered_map/allocator/move_assign.cc: New.
* testsuite/23_containers/unordered_map/allocator/noexcept.cc:
New.
* testsuite/23_containers/unordered_map/allocator/swap.cc: New.
* testsuite/23_containers/unordered_multimap/allocator/copy.cc: New.
* testsuite/23_containers/unordered_multimap/allocator/copy_assign.cc:
New.
* testsuite/23_containers/unordered_multimap/allocator/minimal.cc: New.
* testsuite/23_containers/unordered_multimap/allocator/move_assign.cc:
New.
* testsuite/23_containers/unordered_multimap/allocator/noexcept.cc: New.
* testsuite/23_containers/unordered_multimap/allocator/swap.cc: New.

From-SVN: r198158

11 years agoN3323
Jason Merrill [Mon, 22 Apr 2013 19:25:23 +0000 (15:25 -0400)] 
N3323

* cvt.c (build_expr_type_conversion): Two conversions that return
the same type aren't necessarily ambiguous.

From-SVN: r198157

11 years agoN3648
Jason Merrill [Mon, 22 Apr 2013 19:19:55 +0000 (15:19 -0400)] 
N3648

* parser.c (cp_parser_lambda_introducer): Make lambda capture init
pedwarn unconditional except in C++1y mode.

From-SVN: r198156

11 years agore PR fortran/53685 (surprising warns about transfer with explicit character range)
Janus Weil [Mon, 22 Apr 2013 19:14:22 +0000 (21:14 +0200)] 
re PR fortran/53685 (surprising warns about transfer with explicit character range)

2013-04-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53685
PR fortran/57022
* check.c (gfc_calculate_transfer_sizes): Fix for array-valued SOURCE
expressions.
* simplify.c (gfc_simplify_sizeof,gfc_simplify_storage_size): Get rid
of special treatment for EXPR_ARRAY.
* target-memory.h (gfc_element_size): New prototype.
* target-memory.c (size_array): Remove.
(gfc_element_size): New function.
(gfc_target_expr_size): Modified to always return the full size of the
expression.

2013-04-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/53685
PR fortran/57022
* gfortran.dg/transfer_check_4.f90: New.

From-SVN: r198155

11 years agosemantics.c (potential_constant_expression_1): Don't crash on 'this' in NSDMI.
Jason Merrill [Mon, 22 Apr 2013 19:13:19 +0000 (15:13 -0400)] 
semantics.c (potential_constant_expression_1): Don't crash on 'this' in NSDMI.

* semantics.c (potential_constant_expression_1): Don't crash on
'this' in NSDMI.

From-SVN: r198154

11 years agoCore 1612
Jason Merrill [Mon, 22 Apr 2013 18:52:50 +0000 (14:52 -0400)] 
Core 1612

Core 1612
* semantics.c (finish_id_expression): Reject capture of anonymous
union member.

From-SVN: r198153

11 years agoCore 1609
Jason Merrill [Mon, 22 Apr 2013 18:50:35 +0000 (14:50 -0400)] 
Core 1609

Core 1609
* decl2.c (check_default_args): Check for pack expansion.

From-SVN: r198152

11 years ago* mangle.c (write_type): Mangle decltype(auto).
Jason Merrill [Mon, 22 Apr 2013 18:49:01 +0000 (14:49 -0400)] 
* mangle.c (write_type): Mangle decltype(auto).

From-SVN: r198150

11 years ago* testsuite/ChangeLog: Fix whitespace.
Uros Bizjak [Mon, 22 Apr 2013 17:05:26 +0000 (19:05 +0200)] 
* testsuite/ChangeLog: Fix whitespace.

From-SVN: r198148

11 years agore PR sanitizer/56990 (ICE: SIGFPE with -fsanitize=thread and empty struct)
Marek Polacek [Mon, 22 Apr 2013 17:02:49 +0000 (17:02 +0000)] 
re PR sanitizer/56990 (ICE: SIGFPE with -fsanitize=thread and empty struct)

PR sanitizer/56990
* tsan.c (instrument_expr): Don't instrument expression
in case its size is zero.

* gcc.dg/pr56990.c: New test.

From-SVN: r198147

11 years agore PR rtl-optimization/57032 (internal compiler error: Max. number of generated reloa...
Uros Bizjak [Mon, 22 Apr 2013 16:58:30 +0000 (18:58 +0200)] 
re PR rtl-optimization/57032 (internal compiler error: Max. number of generated reload insns per insn is achieved (90))

PR target/57032
Revert:
2013-03-17  Uros Bizjak  <ubizjak@gmail.com>

* config/alpha/alpha.c (TARGET_LRA_P): New define.

From-SVN: r198145

11 years agotype_traits (is_signed): Simplify.
Paolo Carlini [Mon, 22 Apr 2013 15:27:54 +0000 (15:27 +0000)] 
type_traits (is_signed): Simplify.

2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/type_traits (is_signed): Simplify.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Adjust dg-error line numbers.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.

From-SVN: r198144

11 years ago[Mid-end] Add TARGET_GIMPLE_FOLD_BUILTIN target hook.
James Greenhalgh [Mon, 22 Apr 2013 14:50:32 +0000 (14:50 +0000)] 
[Mid-end] Add TARGET_GIMPLE_FOLD_BUILTIN target hook.

gcc/

* coretypes.h (gimple_stmt_iterator_d): Forward declare.
(gimple_stmt_iterator): New typedef.
* gimple.h (gimple_stmt_iterator): Rename to...
(gimple_stmt_iterator_d): ... This.
* doc/tm.texi.in (TARGET_FOLD_BUILTIN): Detail restriction that
trees be valid for GIMPLE and GENERIC.
(TARGET_GIMPLE_FOLD_BUILTIN): New.
* gimple-fold.c (gimple_fold_call): Call target hook
gimple_fold_builtin.
* hooks.c (hook_bool_gsiptr_false): New.
* hooks.h (hook_bool_gsiptr_false): New.
* target.def (fold_stmt): New.
* doc/tm.texi: Regenerate.

From-SVN: r198142

11 years agocomplex (complex<float>::real, [...]): Declare as const member functions.
Paolo Carlini [Mon, 22 Apr 2013 14:37:34 +0000 (14:37 +0000)] 
complex (complex<float>::real, [...]): Declare as const member functions.

2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>

N3669
* include/std/complex (complex<float>::real, complex<float>::imag,
complex<double>::real, complex<double>::imag,
complex<long double>::real, complex<long double>::imag): Declare
as const member functions.
* include/std/type_traits (integral_constant<>::operator value_type):
Likewise.

From-SVN: r198141

11 years agore PR target/57018 (Miscompilation of bison 2.7.1 under "-Os -fomit-frame-pointer")
Vladimir Makarov [Mon, 22 Apr 2013 14:26:51 +0000 (14:26 +0000)] 
re PR target/57018 (Miscompilation of bison 2.7.1 under "-Os -fomit-frame-pointer")

2013-04-22  Vladimir Makarov  <vmakarov@redhat.com>

PR target/57018
* lra-eliminations.c (mark_not_eliminable): Prevent elimination of
a set sp if no stack realignment.

2013-04-22  Vladimir Makarov  <vmakarov@redhat.com>

PR target/57018
* gcc.target/i386/pr57018.c: New test.

From-SVN: r198140

11 years agoconfig.gcc (tilegx-linux): Extend extra_objs rather than overwriting it.
Nick Clifton [Mon, 22 Apr 2013 12:48:36 +0000 (12:48 +0000)] 
config.gcc (tilegx-linux): Extend extra_objs rather than overwriting it.

* config.gcc (tilegx-linux): Extend extra_objs rather than
overwriting it.
(tilepro-linux): Likewise.

From-SVN: r198138

11 years ago[AArch64] Map standard pattern names to NEON intrinsics directly.
James Greenhalgh [Mon, 22 Apr 2013 12:46:38 +0000 (12:46 +0000)] 
[AArch64] Map standard pattern names to NEON intrinsics directly.

gcc/
* config/aarch64/aarch64-builtins.c
(CF): Remove.
(CF0, CF1, CF2, CF3, CF4, CF10): New.
(VAR<1-12>): Add MAP parameter.
(BUILTIN_*): Likewise.
* config/aarch64/aarch64-simd-builtins.def: Set MAP parameter.
* config/aarch64/aarch64-simd.md (aarch64_sshl_n<mode>): Remove.
(aarch64_ushl_n<mode>): Likewise.
(aarch64_sshr_n<mode>): Likewise.
(aarch64_ushr_n<mode>): Likewise.
(aarch64_<maxmin><mode>): Likewise.
(aarch64_sqrt<mode>): Likewise.
* config/aarch64/arm_neon.h (vshl<q>_n_*): Use new builtin names.
(vshr<q>_n_*): Likewise.

From-SVN: r198137

11 years ago[AArch64] Support vrecp<esx> neon intrinsics in RTL.
James Greenhalgh [Mon, 22 Apr 2013 12:36:52 +0000 (12:36 +0000)] 
[AArch64] Support vrecp<esx> neon intrinsics in RTL.

gcc/
* config/aarch64/aarch64-builtins.c
(aarch64_simd_builtin_type_mode): Handle SF types.
(sf_UP): Define.
(BUILTIN_GPF): Define.
(aarch64_init_simd_builtins): Handle SF types.
* config/aarch64/aarch64-simd-builtins.def (frecpe): Add support.
(frecps): Likewise.
(frecpx): Likewise.
* config/aarch64/aarch64-simd.md
(simd_types): Update simd_frcp<esx> to simd_frecp<esx>.
(aarch64_frecpe<mode>): New.
(aarch64_frecps<mode>): Likewise.
* config/aarch64/aarch64.md (unspec): Add UNSPEC_FRECP<ESX>.
(v8type): Add frecp<esx>.
(aarch64_frecp<FRECP:frecp_suffix><mode>): New.
(aarch64_frecps<mode>): Likewise.
* config/aarch64/iterators.md (FRECP): New.
(frecp_suffix): Likewise.
* config/aarch64/arm_neon.h
(vrecp<esx><qsd>_<fd><32, 64>): Convert to using builtins.

gcc/testsuite/
* gcc.target/aarch64/vrecps.c: New.
* gcc.target/aarch64/vrecpx.c: Likewise.

From-SVN: r198136

11 years agoexp_prag.adb (Expand_Pragma_Loop_Variant): Rewrite pragma as null statement if ignored.
Yannick Moy [Mon, 22 Apr 2013 10:58:05 +0000 (10:58 +0000)] 
exp_prag.adb (Expand_Pragma_Loop_Variant): Rewrite pragma as null statement if ignored.

2013-04-22  Yannick Moy  <moy@adacore.com>

* exp_prag.adb (Expand_Pragma_Loop_Variant): Rewrite pragma as
null statement if ignored.
* sem_ch6.adb (Expand_Contract_Cases): Do nothing if pragma is ignored.
* sem_prag.adb (Analyze_Pragma): Keep analyzing ignored pragmas.

From-SVN: r198135

11 years ago[multiple changes]
Arnaud Charlet [Mon, 22 Apr 2013 10:52:55 +0000 (12:52 +0200)] 
[multiple changes]

2013-04-22  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Contract_Case): New routine.
(Analyze_Pragma): Aspect/pragma Contract_Cases can
now be associated with a library level subprogram.
Add circuitry to detect illegal uses of aspect/pragma Contract_Cases
in a subprogram body.
(Chain_Contract_Cases): Rename formal parameter Subp_Decl to
Subp_Id. Remove local constant Subp. The entity of the subprogram
is now obtained via the formal paramter.

2013-04-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Do not set
Is_Constr_Subt_For_Unc_Aliased on the subtype of the expression,
if the expression is a source entity.

From-SVN: r198134

11 years ago[multiple changes]
Arnaud Charlet [Mon, 22 Apr 2013 10:50:34 +0000 (12:50 +0200)] 
[multiple changes]

2013-04-22  Yannick Moy  <moy@adacore.com>

* exp_prag.adb, sinfo.ads, sem_prag.ads: Minor correction of typos in
comments.
* sem_ch6.adb (Expand_Contract_Cases): Add location to message.

2013-04-22  Thomas Quinot  <quinot@adacore.com>

* sem_prag.adb (Fix_Error): For a pragma rewritten from another
pragma, fix up error message to include original pragma name.
* par_sco.adb: Minor reformatting.

From-SVN: r198133

11 years agosem_prag.adb, [...]: Minor reformatting.
Robert Dewar [Mon, 22 Apr 2013 10:48:43 +0000 (10:48 +0000)] 
sem_prag.adb, [...]: Minor reformatting.

2013-04-22  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb, sem_util.adb, sem_util.ads, sem_res.adb, exp_ch6.adb,
sem_ch6.adb, opt.ads: Minor reformatting.

From-SVN: r198132

11 years agoexp_ch6.adb: Omit check for init proc.
Ed Schonberg [Mon, 22 Apr 2013 10:47:36 +0000 (12:47 +0200)] 
exp_ch6.adb: Omit check for init proc.

2013-04-22  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb: Omit check for init proc.

From-SVN: r198131

11 years ago[multiple changes]
Arnaud Charlet [Mon, 22 Apr 2013 10:44:46 +0000 (12:44 +0200)] 
[multiple changes]

2013-04-22  Pascal Obry  <obry@adacore.com>

* gnat_ugn.texi, prj-nmsc.adb, projects.texi: Add check for
Library_Standalone and Library_Kind.

2013-04-22  Ed Schonberg  <schonberg@adacore.com>

* exp_ch6.adb (Expand_Actuals): If the call is to an
inherited operation and the actual is a by-reference type with
predicates, add predicate call to post-call actions.
* sem_util.adb (Is_Inherited_Operation_For_Type): Fix coding
error: a type declaration has a defining identifier, not an Etype.
* sem_res.adb: Restore code removed because of above error.

2013-04-22  Doug Rupp  <rupp@adacore.com>

* init.c (__gnat_handle_vms_condition): Also match C$_SIGINT.

From-SVN: r198130

11 years ago[multiple changes]
Arnaud Charlet [Mon, 22 Apr 2013 10:42:42 +0000 (12:42 +0200)] 
[multiple changes]

2013-04-22  Yannick Moy  <moy@adacore.com>

* gnat_rm.texi, exp_util.adb, sem_prag.adb, sem_prag.ads, par-ch2.adb,
opt.ads, sem_ch13.adb: Minor correction of typos in comments/doc.

2013-04-22  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Check_Library_Attributes): Set Library_Dir to
No_Path_Information only when Directories_Must_Exist_In_Projects
is False.
(Get_Directories): Set Object_Directory
or Exec_Directory to No_Path_Information only when
Directories_Must_Exist_In_Projects is False.

From-SVN: r198129

11 years agopar-prag.adb, [...]: Remove all references to Pragma_Contract_Case and Name_Contract_...
Yannick Moy [Mon, 22 Apr 2013 10:41:08 +0000 (10:41 +0000)] 
par-prag.adb, [...]: Remove all references to Pragma_Contract_Case and Name_Contract_Case.

2013-04-22  Yannick Moy  <moy@adacore.com>

* par-prag.adb, sem_attr.adb, sem_ch6.adb, sem_prag.adb, sem_warn.adb,
snames.ads-tmpl, sinfo.ads, sem_util.ads: Remove all references to
Pragma_Contract_Case and Name_Contract_Case.

From-SVN: r198128

11 years agoaspects.ads, [...]: Removal of references to Contract_Case.
Yannick Moy [Mon, 22 Apr 2013 10:38:57 +0000 (10:38 +0000)] 
aspects.ads, [...]: Removal of references to Contract_Case.

2013-04-22  Yannick Moy  <moy@adacore.com>

* aspects.ads, aspects.adb, sem_ch13.adb: Removal of references to
Contract_Case.
* gnat_ugn.texi, gnat_rm.texi Description of Contract_Case replaced by
description of Contract_Cases.

From-SVN: r198127

11 years agore PR libstdc++/57010 ([c++0x] priority_queue<>::pop() calls self-move-assignment...
Paolo Carlini [Mon, 22 Apr 2013 10:07:31 +0000 (10:07 +0000)] 
re PR libstdc++/57010 ([c++0x] priority_queue<>::pop() calls self-move-assignment operator)

2013-04-22  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/57010
* include/bits/stl_heap.h (pop_heap): Avoid self move-assignment.
* testsuite/25_algorithms/pop_heap/57010.cc: New.

From-SVN: r198125

11 years agofix date
Christian Bruel [Mon, 22 Apr 2013 07:39:54 +0000 (09:39 +0200)] 
fix date

From-SVN: r198124

11 years agore PR target/56995 (sh4 -mfmovd: ICE in find_costs_and_classes)
Christian Bruel [Mon, 22 Apr 2013 07:16:21 +0000 (09:16 +0200)] 
re PR target/56995 (sh4 -mfmovd: ICE in find_costs_and_classes)

2013-04-18  Christian Bruel  <christian.bruel@st.com>

       PR target/56995
       * config/sh/sh.h (enum reg_class): Remove DF_HI_REGS.
       (REG_CLASS_NAMES): Idem.
       (REG_CLASS_CONTENTS): Idem.
       (REGCLASS_HAS_FP_REG): Idem.
       * config/sh/sh.c (sh_cannot_change_mode_class): Idem.
       (sh_conditional_register_usage): Idem.

From-SVN: r198123

11 years agotree-ssa-forwprop.c (simplify_conversion_from_bitmask): New function.
Jeff Law [Mon, 22 Apr 2013 02:59:00 +0000 (20:59 -0600)] 
tree-ssa-forwprop.c (simplify_conversion_from_bitmask): New function.

* tree-ssa-forwprop.c (simplify_conversion_from_bitmask): New function.
(ssa_forward_propagate_and_combine): Use it.

* gcc.dg/tree-ssa/forwprop-26.c: New test.

From-SVN: r198121

11 years agoDaily bump.
GCC Administrator [Mon, 22 Apr 2013 00:16:42 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198120

11 years agosystem_error.cc (generic_category_instance): Add initializer.
Evgeniy Stepanov [Sun, 21 Apr 2013 08:40:24 +0000 (08:40 +0000)] 
system_error.cc (generic_category_instance): Add initializer.

2013-04-21  Evgeniy Stepanov  <eugenis@google.com>

* src/c++11/system_error.cc (generic_category_instance): Add
initializer.
(system_category_instance): Likewise.
* src/c++11/future.cc (__fec): Likewise.

From-SVN: r198115

11 years agoDaily bump.
GCC Administrator [Sun, 21 Apr 2013 00:16:36 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198113

11 years ago* doc/xml/manual/extensions.xml: Fix anachronism.
Jonathan Wakely [Sat, 20 Apr 2013 19:40:28 +0000 (19:40 +0000)] 
* doc/xml/manual/extensions.xml: Fix anachronism.

From-SVN: r198110

11 years agore PR fortran/56907 (C_LOC shall not call internal-PACK when an array argument is...
Tobias Burnus [Sat, 20 Apr 2013 11:01:55 +0000 (13:01 +0200)] 
re PR fortran/56907 (C_LOC shall not call internal-PACK when an array argument is used)

2013-04-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56907
        * trans-intrinsic.c (conv_isocbinding_function): Don't pack
        * array
        passed to C_LOC

2013-04-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56907
        * gfortran.dg/c_loc_test_22.f90: New.

From-SVN: r198109

11 years agoDaily bump.
GCC Administrator [Sat, 20 Apr 2013 00:16:45 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198108

11 years agolra.c: Update the flow chart diagram.
Vladimir Makarov [Fri, 19 Apr 2013 21:09:33 +0000 (21:09 +0000)] 
lra.c: Update the flow chart diagram.

2013-04-19  Vladimir Makarov  <vmakarov@redhat.com>

* lra.c: Update the flow chart diagram.

From-SVN: r198102

11 years agore PR rtl-optimization/56847 ('-fpie' triggers - internal compiler error: in gen_add2...
Vladimir Makarov [Fri, 19 Apr 2013 19:55:57 +0000 (19:55 +0000)] 
re PR rtl-optimization/56847 ('-fpie' triggers - internal compiler error: in gen_add2_insn, at optabs.c:4705)

2013-04-19  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/56847
* lra-constraints.c (process_alt_operands): Discourage alternative
with non-matche doffsettable memory constraint fro memory with
known offset.

From-SVN: r198101

11 years agoN3638 changes to return type deduction
Jason Merrill [Fri, 19 Apr 2013 16:28:24 +0000 (12:28 -0400)] 
N3638 changes to return type deduction

* decl.c (undeduced_auto_decl): New.
(require_deduced_type): New.
(fndecl_declared_return_type): New.
(decls_match): Use it.
(duplicate_decls): Don't check for auto return.
(grokdeclarator): Reject virtual auto.
* class.c (resolve_address_of_overloaded_function): Handle
auto function templates.
* decl2.c (mark_used): Use undeduced_auto_decl, require_deduced_type.
* cp-tree.h: Declare new fns.
* error.c (dump_function_decl): Use fndecl_declared_return_type.
* search.c (check_final_overrider): Likewise.
* pt.c (make_decltype_auto): New.
(do_auto_deduction): Require plain decltype(auto).
(is_auto): Adjust.

From-SVN: r198099

11 years agoDR 941
Jason Merrill [Fri, 19 Apr 2013 16:28:03 +0000 (12:28 -0400)] 
DR 941

DR 941
* decl.c (duplicate_decls): Don't propagate DECL_DELETED_FN to
template specializations.

From-SVN: r198098

11 years agore PR tree-optimization/56982 (Bad optimization with setjmp())
Richard Biener [Fri, 19 Apr 2013 13:39:16 +0000 (13:39 +0000)] 
re PR tree-optimization/56982 (Bad optimization with setjmp())

2013-04-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56982
* builtins.def (BUILT_IN_LONGJMP): longjmp is not a leaf
function.
* gimplify.c (gimplify_call_expr): Notice special calls.
(gimplify_modify_expr): Likewise.
* tree-cfg.c (make_abnormal_goto_edges): Handle setjmp-like
abnormal control flow receivers.
(call_can_make_abnormal_goto): Handle cfun->calls_setjmp
in the same way as cfun->has_nonlocal_labels.
(gimple_purge_dead_abnormal_call_edges): Likewise.
(stmt_starts_bb_p): Make setjmp-like abnormal control flow
receivers start a basic-block.

* gcc.c-torture/execute/pr56982.c: New testcase.

From-SVN: r198096

11 years agore PR tree-optimization/56270 (loop over array of struct float causes compiler error...
Richard Biener [Fri, 19 Apr 2013 13:37:12 +0000 (13:37 +0000)] 
re PR tree-optimization/56270 (loop over array of struct float causes compiler error: segmentation fault)

2013-04-19  Richard Biener  <rguenther@suse.de>

* tree-vectorizer.h (struct _slp_instance): Move load_permutation
member ...
(struct _slp_tree): ... here.  Make it a vector of unsigned ints.
(SLP_INSTANCE_LOAD_PERMUTATION): Remove.
(SLP_TREE_LOAD_PERMUTATION): Add.
(vect_transform_slp_perm_load): Adjust prototype.
* tree-vect-slp.c (vect_free_slp_tree): Adjust.
(vect_free_slp_instance): Likewise.
(vect_create_new_slp_node): Likewise.
(vect_supported_slp_permutation_p): Remove.
(vect_slp_rearrange_stmts): Adjust.
(vect_supported_load_permutation_p): Likewise.  Inline
vect_supported_slp_permutation_p here.
(vect_analyze_slp_instance): Compute load permutations per
slp node instead of per instance.
(vect_get_slp_defs): Adjust.
(vect_transform_slp_perm_load): Likewise.
(vect_schedule_slp_instance): Remove redundant code.
(vect_schedule_slp): Remove hack for PR56270, add it ...
* tree-vect-stmts.c (vectorizable_load): ... here, do not
CSE loads for SLP.  Adjust.

From-SVN: r198095

11 years agoarm.c (load_multiple_sequence, [...]): Fix spelling in two comments.
Greta Yorsh [Fri, 19 Apr 2013 13:25:09 +0000 (14:25 +0100)] 
arm.c (load_multiple_sequence, [...]): Fix spelling in two comments.

2013-04-19  Greta Yorsh  <Greta.Yorsh@arm.com>

* config/arm/arm.c (load_multiple_sequence, ldm_stm_operation_p): Fix
spelling in two comments.

From-SVN: r198093

11 years agore PR target/56797 (internal compiler error: in extract_insn, at recog.c:2150)
Greta Yorsh [Fri, 19 Apr 2013 12:55:26 +0000 (13:55 +0100)] 
re PR target/56797 (internal compiler error: in extract_insn, at recog.c:2150)

2013-04-19  Greta Yorsh  <Greta.Yorsh@arm.com>

PR target/56797
* config/arm/arm.c (load_multiple_sequence): Require SP
as base register for loads if SP is in the register list.

From-SVN: r198091

11 years agosfp-machine.h (_FP_W_TYPE): Change to define as 'unsigned long long' instead of ...
Yufeng Zhang [Fri, 19 Apr 2013 12:17:26 +0000 (12:17 +0000)] 
sfp-machine.h (_FP_W_TYPE): Change to define as 'unsigned long long' instead of 'unsigned long'.

libgcc/

* config/aarch64/sfp-machine.h (_FP_W_TYPE): Change to define
as 'unsigned long long' instead of 'unsigned long'.
(_FP_WS_TYPE): Change to define as 'signed long long' instead of
'signed long'.

From-SVN: r198090

11 years agore PR tree-optimization/56718 (Early inlining prevents type based devirtualization)
Martin Jambor [Fri, 19 Apr 2013 12:00:27 +0000 (14:00 +0200)] 
re PR tree-optimization/56718 (Early inlining prevents type based devirtualization)

2013-04-19  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/56718
* ipa-cp.c (ipa_value_from_known_type_jfunc): Moved...
* ipa-prop.c (ipa_binfo_from_known_type_jfunc): ...here, renamed
and made public.  Adjusted all callers.
(ipa_intraprocedural_devirtualization): New function.
* ipa-prop.h (ipa_binfo_from_known_type_jfunc): Declare.
(ipa_intraprocedural_devirtualization): Likewise.
* Makefile.in (tree-ssa-pre.o): Add ipa-prop.h to dependencies.

testsuite/
* g++.dg/ipa/imm-devirt-1.C: New test.
* g++.dg/ipa/imm-devirt-2.C: Likewise.

From-SVN: r198088

11 years agore PR tree-optimization/57000 (ICE with -Ofast and -frounding-math)
Richard Biener [Fri, 19 Apr 2013 10:15:15 +0000 (10:15 +0000)] 
re PR tree-optimization/57000 (ICE with -Ofast and -frounding-math)

2013-04-19  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57000
* tree-ssa-reassoc.c (pass_reassoc): Add TODO_update_ssa_only_virtuals.

* gcc.dg/tree-ssa/reassoc-27.c: New testcase.

From-SVN: r198087

11 years agore PR fortran/56872 (Incorrect SUM evaluation, involving implied-do loop, with -ffron...
Thomas Koenig [Fri, 19 Apr 2013 09:58:41 +0000 (09:58 +0000)] 
re PR fortran/56872 (Incorrect SUM evaluation, involving implied-do loop, with -ffrontend-optimize)

2013-04-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
    Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/56872
* frontend-passes.c (copy_walk_reduction_arg): Change argument type
to gfc_constructor.  If it has an iterator, wrap the copy of its
expression in an array constructor with that iterator.  Don't special
case function expressions.
(callback_reduction): Update caller.  Don't return early if there is
an iterator.

2013-04-19  Thomas Koenig  <tkoenig@gcc.gnu.org>
    Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/56872
* gfortran.dg/array_constructor_45.f90:  New test.
* gfortran.dg/array_constructor_46.f90:  New test.
* gfortran.dg/array_constructor_47.f90:  New test.
* gfortran.dg/array_constructor_40.f90:  Adjust number of
while loops.

Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>
From-SVN: r198086

11 years agocortex-m4-fpu.md (cortex_m4_v): Delete cpu unit.
Terry Guo [Fri, 19 Apr 2013 06:38:32 +0000 (06:38 +0000)] 
cortex-m4-fpu.md (cortex_m4_v): Delete cpu unit.

* config/arm/cortex-m4-fpu.md (cortex_m4_v): Delete cpu unit.
Replace with ...
(cortex_m4_v_a,  cortex_m4_v_b): ... new cpu units.
(cortex_m4_v, cortex_m4_exa_va, cortex_m4_exb_vb): New reservations.
(cortex_m4_fmacs): Use new reservations.
(cortex_m4_f_load, cortex_m4_f_store): Likewise.

From-SVN: r198084

11 years agoFixing PR number in Changelogs
Vladimir Makarov [Fri, 19 Apr 2013 04:00:57 +0000 (04:00 +0000)] 
Fixing PR number in Changelogs

From-SVN: r198083

11 years ago[multiple changes]
Vladimir Makarov [Fri, 19 Apr 2013 03:57:22 +0000 (03:57 +0000)] 
[multiple changes]

2013-04-18  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/56992
* lra-coalesce.c (coalescable_pseudo_p): Remove 2nd parameter and
related code.
(lra_coalesce): Remove split_origin_bitmap and related code.
* lra.c (lra): Coalesce after undoing inheritance.  Recreate live
ranges if necessary.

2013-04-18  Jakub Jelinek  <jakub@redhat.com>

PR rtl-optimization/56992
* g++.dg/opt/pr56999.C: New test.

From-SVN: r198082

11 years agoDaily bump.
GCC Administrator [Fri, 19 Apr 2013 00:16:33 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198080

11 years ago* validate_failures.py: Fix typo.
Diego Novillo [Thu, 18 Apr 2013 20:52:15 +0000 (16:52 -0400)] 
* validate_failures.py: Fix typo.

From-SVN: r198074

11 years ago* config/i386/predicates.md (call_rex64_ms_sysv_operation): Fix comment.
Uros Bizjak [Thu, 18 Apr 2013 19:28:31 +0000 (21:28 +0200)] 
* config/i386/predicates.md (call_rex64_ms_sysv_operation): Fix comment.

From-SVN: r198070

11 years agoi386.c (x86_64_ms_sysv_extra_clobbered_registers): New array.
Uros Bizjak [Thu, 18 Apr 2013 19:18:12 +0000 (21:18 +0200)] 
i386.c (x86_64_ms_sysv_extra_clobbered_registers): New array.

* config/i386/i386.c (x86_64_ms_sysv_extra_clobbered_registers):
New array.
(ix86_expand_call): Remove clobbered_registers array and use
x86_64_ms_sysv_extra_clobbered_registers instead.
* config/i386/i386.h (x86_64_ms_sysv_extra_clobbered_registers):
Declare here.
* config/i386/predicates.md (call_rex64_ms_sysv_operation): New
predicate.
* config/i386/i386.md (*call_rex64_ms_sysv): Use
call_rex64_ms_sysv_operation predicate.  Remove explicit clobbers.
(*call_value_rex64_ms_sysv): Ditto.

From-SVN: r198069

11 years agoexpr.c (find_array_element): Don't copy expr.
Tobias Burnus [Thu, 18 Apr 2013 18:59:38 +0000 (20:59 +0200)] 
expr.c (find_array_element): Don't copy expr.

2013-04-18  Tobias Burnus  <burnus@net-b.de>

        * expr.c (find_array_element): Don't copy expr.
        * data.c (create_character_initializer): Free expr.
        * frontend-passes.c (combine_array_constructor): Ditto.
        * match.c (match_typebound_call, gfc_match_select_type): Ditto.
        * resolve.c (resolve_typebound_function): Free gfc_ref.

From-SVN: r198068

11 years agodwarf2out.c (output_pubnames): Check die_perennial_p of parent instead of die_mark.
Cary Coutant [Thu, 18 Apr 2013 18:55:18 +0000 (18:55 +0000)] 
dwarf2out.c (output_pubnames): Check die_perennial_p of parent instead of die_mark.

gcc/
* dwarf2out.c (output_pubnames): Check die_perennial_p of
parent instead of die_mark.

gcc/testsuite/
* g++.dg/debug/dwarf2/pubnames-2.C: Add -fno-debug-types-section.
* g++.dg/debug/dwarf2/pubnames-3.C: New test case.

From-SVN: r198067

11 years agoLoosen check for build directory.
Diego Novillo [Thu, 18 Apr 2013 18:11:05 +0000 (14:11 -0400)] 
Loosen check for build directory.

* validate_failures.py: Loosen check for build directory.
State what failed if we couldn't find the source tree or
the target triplet.

From-SVN: r198064

11 years agotypedef2.C: Add -fno-debug-types-section flag.
Cary Coutant [Thu, 18 Apr 2013 17:25:28 +0000 (17:25 +0000)] 
typedef2.C: Add -fno-debug-types-section flag.

gcc/testsuite/
* g++.dg/debug/dwarf2/typedef2.C: Add -fno-debug-types-section flag.
* g++.dg/debug/dwarf2/typedef4.C: Likewise.
* g++.dg/debug/dwarf2/static-data-member1.C: Likewise.
* g++.dg/debug/dwarf2/global-used-types-1.C: Likewise.
* g++.dg/debug/dwarf2/self-ref-1.C: Likewise.
* g++.dg/debug/dwarf2/nested-2.C: Likewise.
* g++.dg/debug/dwarf2/typedef1.C: Likewise.
* g++.dg/debug/dwarf2/namespace-2.C: Likewise.
* g++.dg/debug/dwarf2/integer-typedef.C: Likewise.
* g++.dg/debug/dwarf2/self-ref-2.C: Likewise.
* g++.dg/debug/dwarf2/explicit-constructor.C: Likewise.

From-SVN: r198060

11 years agoSimplified GIMPLE IL builder functions.
Diego Novillo [Thu, 18 Apr 2013 14:29:54 +0000 (10:29 -0400)] 
Simplified GIMPLE IL builder functions.

* gimple.c (create_gimple_tmp): New.
(get_expr_type): New.
(build_assign): New.
(build_type_cast): New.
* gimple.h (enum ssa_mode): Define.
(gimple_seq_set_location): New.
* asan.c (build_check_stmt): Change some gimple_build_* calls
        to use build_assign and build_type_cast.

From-SVN: r198056

11 years agoavx2-vpop-check.h: volatility is casted away in memcmp().
Grigoriy Kraynov [Thu, 18 Apr 2013 13:54:57 +0000 (13:54 +0000)] 
avx2-vpop-check.h: volatility is casted away in memcmp().

* gcc.target/i386/avx2-vpop-check.h: volatility is casted away in
        memcmp().

From-SVN: r198055

11 years agotree-vect-data-refs.c (vect_analyze_group_access): Properly handle negative step.
Richard Biener [Thu, 18 Apr 2013 12:57:17 +0000 (12:57 +0000)] 
tree-vect-data-refs.c (vect_analyze_group_access): Properly handle negative step.

2013-04-18  Richard Biener  <rguenther@suse.de>

* tree-vect-data-refs.c (vect_analyze_group_access): Properly
handle negative step.  Remove redundant checks.
(vect_create_data_ref_ptr): Avoid ICEs with non-constant steps.
* tree-vect-stmts.c (vectorizable_load): Instead of asserting
for negative step and grouped loads fail to vectorize.

From-SVN: r198054

11 years agoemit-rtl.c (reset_insn_used_flags): New function.
Steven Bosscher [Thu, 18 Apr 2013 08:28:10 +0000 (08:28 +0000)] 
emit-rtl.c (reset_insn_used_flags): New function.

* emit-rtl.c (reset_insn_used_flags): New function.
(reset_all_used_flags): Use it.
(verify_insn_sharing): New function.
(verify_rtl_sharing): Fix verification for SEQUENCEs.

From-SVN: r198053

11 years agore PR tree-optimization/56984 (ICE in tree_vrp.c)
Jakub Jelinek [Thu, 18 Apr 2013 07:54:58 +0000 (09:54 +0200)] 
re PR tree-optimization/56984 (ICE in tree_vrp.c)

PR tree-optimization/56984
* tree-vrp.c (register_edge_assert_for_2): For (x >> M) < N
and (x >> M) >= N don't register any assertion if N << M is the
minimum value.

* gcc.c-torture/compile/pr56984.c: New test.

From-SVN: r198051

11 years agore PR fortran/56994 (Incorrect documentation for Fortran NEAREST intrinsic function)
Tobias Burnus [Thu, 18 Apr 2013 07:47:37 +0000 (09:47 +0200)] 
re PR fortran/56994 (Incorrect documentation for Fortran NEAREST intrinsic function)

2013-04-18  Tobias Burnus  <burnus@net-b.de>

        PR fortran/56994
        * invoke.texi (NEAREST): S argument is not optional.

From-SVN: r198048

11 years agore PR rtl-optimization/56992 (building Wine with -Og causes GCC to seg fault)
Jakub Jelinek [Thu, 18 Apr 2013 06:29:35 +0000 (08:29 +0200)] 
re PR rtl-optimization/56992 (building Wine with -Og causes GCC to seg fault)

PR rtl-optimization/56992
* gcc.dg/pr56992.c: New test.

From-SVN: r198046

11 years agoDaily bump.
GCC Administrator [Thu, 18 Apr 2013 00:16:36 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198045

11 years agolower-subreg.c (resolve_simple_move): If called self-recursive...
Steven Bosscher [Wed, 17 Apr 2013 23:05:59 +0000 (23:05 +0000)] 
lower-subreg.c (resolve_simple_move): If called self-recursive...

* lower-subreg.c (resolve_simple_move): If called self-recursive,
do not delete_insn insns that have not yet been emitted, only
unlink them with remove_insn.
* df-scan.c (df_insn_delete): Revert r197492.

From-SVN: r198042

11 years agofix previous commit, include reviewer request.
Steven Bosscher [Wed, 17 Apr 2013 19:34:14 +0000 (19:34 +0000)] 
fix previous commit, include reviewer request.

From-SVN: r198037

11 years agoemit-rtl.c (link_insn_into_chain): Handle chaining of SEQUENCEs.
Steven Bosscher [Wed, 17 Apr 2013 19:33:24 +0000 (19:33 +0000)] 
emit-rtl.c (link_insn_into_chain): Handle chaining of SEQUENCEs.

* emit-rtl.c (link_insn_into_chain): Handle chaining of SEQUENCEs.
* reorg.c (emit_delay_sequence): Simplify with emit-rtl API.

From-SVN: r198036

11 years agore PR fortran/56814 (Bogus Interface mismatch in dummy procedure)
Janus Weil [Wed, 17 Apr 2013 16:13:07 +0000 (18:13 +0200)] 
re PR fortran/56814 (Bogus Interface mismatch in dummy procedure)

2013-04-17  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56814
* interface.c (check_result_characteristics): Get result from interface
if present.

2013-04-17  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56814
* gfortran.dg/proc_ptr_42.f90: New.

From-SVN: r198032

11 years ago2013-04-17 Greta Yorsh <Greta.Yorsh at arm.com>
Greta Yorsh [Wed, 17 Apr 2013 15:22:05 +0000 (16:22 +0100)] 
2013-04-17  Greta Yorsh  <Greta.Yorsh at arm.com>

* config/arm/arm.md (movsicc_insn): Convert define_insn into
define_insn_and_split.
(and_scc,ior_scc,negscc): Likewise.
(cmpsi2_addneg, subsi3_compare): Convert to named patterns.

From-SVN: r198030

11 years ago2013-04-17 Greta Yorsh <Greta.Yorsh at arm.com>
Greta Yorsh [Wed, 17 Apr 2013 15:17:10 +0000 (16:17 +0100)] 
2013-04-17  Greta Yorsh  <Greta.Yorsh at arm.com>

* config/arm/arm.c (use_return_insn): Return 0 for targets that
can benefit from using a sequence of LDRD instructions in epilogue
instead of a single LDM instruction.

From-SVN: r198029

11 years agore PR web/45688 (Typo in __attribute__((version-id)) docs)
Manuel López-Ibáñez [Wed, 17 Apr 2013 13:17:42 +0000 (13:17 +0000)] 
re PR web/45688 (Typo in __attribute__((version-id)) docs)

2013-04-17  Manuel López-Ibáñez  <manu@gcc.gnu.org>

       PR 45688
       * doc/extend.texi: Fix typo.

From-SVN: r198028

11 years agotree-vect-slp.c (vect_build_slp_tree_1): Split out from ...
Richard Biener [Wed, 17 Apr 2013 12:13:37 +0000 (12:13 +0000)] 
tree-vect-slp.c (vect_build_slp_tree_1): Split out from ...

2013-04-17  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_build_slp_tree_1): Split out from ...
(vect_build_slp_tree): ... here.
(vect_build_slp_tree_1): Compute which stmts of the SLP group
match.  Remove special-casing of mismatched complex loads.
(vect_build_slp_tree): Based on the result from vect_build_slp_tree_1
re-try the match with swapped commutative operands.
(vect_supported_load_permutation_p): Remove special-casing of
mismatched complex loads.
(vect_analyze_slp_instance): Adjust.

From-SVN: r198026

11 years agore PR rtl-optimization/56921 (ICE in rtx_cost called by doloop_optimize_loops for...
Richard Biener [Wed, 17 Apr 2013 12:01:46 +0000 (12:01 +0000)] 
re PR rtl-optimization/56921 (ICE in rtx_cost called by doloop_optimize_loops for PPC)

2013-04-17  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/56921
* cfgloop.h (struct loop): Add simple_loop_desc member.
(struct niter_desc): Mark with GTY(()).
(simple_loop_desc): Do not use aux field but simple_loop_desc.
* loop-iv.c (get_simple_loop_desc): Likewise.
(free_simple_loop_desc): Likewise.

Revert
2013-04-16  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/56921
* loop-init.c (pass_rtl_move_loop_invariants): Add
TODO_do_not_ggc_collect to todo_flags_finish.
(pass_rtl_unswitch): Same.
(pass_rtl_unroll_and_peel_loops): Same.
(pass_rtl_doloop): Same.

From-SVN: r198025

11 years agotree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): New.
Eric Botcazou [Wed, 17 Apr 2013 11:22:07 +0000 (11:22 +0000)] 
tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): New.

* tree-ssa-alias.c (nonoverlapping_component_refs_of_decl_p): New.
(decl_refs_may_alias_p): Add REF1 and REF2 parameters.
Use nonoverlapping_component_refs_of_decl_p to disambiguate component
references.
(refs_may_alias_p_1): Adjust call to decl_refs_may_alias_p.
* tree-streamer.c (record_common_node): Adjust reference in comment.

From-SVN: r198024

11 years agoPR 40958 Compress module files with zlib.
Janne Blomqvist [Wed, 17 Apr 2013 10:19:40 +0000 (13:19 +0300)] 
PR 40958 Compress module files with zlib.

frontend ChangeLog:

2013-04-17  Janne Blomqvist  <jb@gcc.gnu.org>

PR fortran/40958
* scanner.h: New file.
* Make-lang.in: Dependencies on scanner.h.
* scanner.c (gfc_directorylist): Move to scanner.h.
* module.c: Don't include md5.h, include scanner.h and zlib.h.
(MOD_VERSION): Add comment about backwards compatibility.
(module_fp): Change type to gzFile.
(ctx): Remove.
(gzopen_included_file_1): New function.
(gzopen_included_file): New function.
(gzopen_intrinsic_module): New function.
(write_char): Use gzputc.
(read_crc32_from_module_file): New function.
(read_md5_from_module_file): Remove.
(gfc_dump_module): Use gz* functions instead of stdio, check gzip
crc32 instead of md5.
(read_module_to_tmpbuf): Use gz* functions instead of stdio.
(gfc_use_module): Use gz* functions.

testsuite ChangeLog:

2013-04-17  Janne Blomqvist  <jb@gcc.gnu.org>

        PR fortran/40958
        * lib/gcc-dg.exp (scan-module): Uncompress module file before
        scanning.
        * gfortran.dg/module_md5_1.f90: Remove.

From-SVN: r198023

11 years ago* config/arm/cortex-m4.md: Add a new bypass.
Terry Guo [Wed, 17 Apr 2013 06:24:48 +0000 (06:24 +0000)] 
* config/arm/cortex-m4.md: Add a new bypass.

From-SVN: r198021

11 years agoaarch64.md (*adds_<optab><mode>_multp2): New pattern.
Naveen H.S [Wed, 17 Apr 2013 05:37:10 +0000 (05:37 +0000)] 
aarch64.md (*adds_<optab><mode>_multp2): New pattern.

gcc/

2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* config/aarch64/aarch64.md (*adds_<optab><mode>_multp2):
New pattern.
(*subs_<optab><mode>_multp2): New pattern.
(*adds_<optab><ALLX:mode>_<GPI:mode>): New pattern.
(*subs_<optab><ALLX:mode>_<GPI:mode>): New pattern.

gcc/testsuite/

2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* gcc.target/aarch64/adds3.c: New.
* gcc.target/aarch64/subs3.c: New.

From-SVN: r198020

11 years agoaarch64.md (*adds_mul_imm_<mode>): New pattern.
Naveen H.S [Wed, 17 Apr 2013 05:11:55 +0000 (05:11 +0000)] 
aarch64.md (*adds_mul_imm_<mode>): New pattern.

gcc/

2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* config/aarch64/aarch64.md (*adds_mul_imm_<mode>): New pattern.
(*subs_mul_imm_<mode>): New pattern.

gcc/testsuite/

2013-04-16   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* gcc.target/aarch64/adds1.c: New.
* gcc.target/aarch64/adds2.c: New.
* gcc.target/aarch64/subs1.c: New.
* gcc.target/aarch64/subs2.c: New.

From-SVN: r198019

11 years agoImplement n3599 String literal operator templates.
Ed Smith-Rowland [Wed, 17 Apr 2013 01:05:43 +0000 (01:05 +0000)] 
Implement n3599 String literal operator templates.

From-SVN: r198018

11 years agoDaily bump.
GCC Administrator [Wed, 17 Apr 2013 00:16:34 +0000 (00:16 +0000)] 
Daily bump.

From-SVN: r198017

11 years agore PR fortran/39505 (Consider a 'no arg check' directive)
Tobias Burnus [Tue, 16 Apr 2013 20:54:21 +0000 (22:54 +0200)] 
re PR fortran/39505 (Consider a 'no arg check' directive)

2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39505
        * decl.c (ext_attr_list): Add EXT_ATTR_NO_ARG_CHECK.
        * gfortran.h (ext_attr_id_t): Ditto.
        * gfortran.texi (GNU Fortran Compiler Directives):
        Document it.
        * interface.c (compare_type_rank): Ignore rank for NO_ARG_CHECK.
        (compare_parameter): Ditto - and regard as unlimited polymorphic.
        * resolve.c (resolve_symbol, resolve_variable): Add same
        * constraint
        checks as for TYPE(*); turn dummy to TYPE(*),dimension(*).
        (gfc_explicit_interface_required): Require explicit interface
        for NO_ARG_CHECK.

2013-04-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39505
        * gfortran.dg/no_arg_check_1.f90: New.
        * gfortran.dg/no_arg_check_2.f90: New.
        * gfortran.dg/no_arg_check_3.f90: New.

From-SVN: r198011

11 years agore PR fortran/56968 ([F03] Issue with a procedure defined with a generic name returni...
Janus Weil [Tue, 16 Apr 2013 19:07:34 +0000 (21:07 +0200)] 
re PR fortran/56968 ([F03] Issue with a procedure defined with a generic name returning procedure pointer)

2013-04-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56968
* expr.c (gfc_check_pointer_assign): Handle generic functions returning
procedure pointers.

2013-04-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/56968
* gfortran.dg/proc_ptr_41.f90: New.

From-SVN: r198008

11 years agore PR target/56948 (PPC V2DI ICE when loading zero into GPRs)
David Edelsohn [Tue, 16 Apr 2013 17:49:14 +0000 (17:49 +0000)] 
re PR target/56948 (PPC V2DI ICE when loading zero into GPRs)

        PR target/56948
        * config/rs6000/vsx.md (vsx_mov<mode>): Add j->r alternative.
        (vsx_movti_64bit): Change j->wa to O->wa.  Add n->r alternative.
        (vsx_movti_32bit): Change j->wa to O->wa.

From-SVN: r198007

11 years agore PR rtl-optimization/56921 (ICE in rtx_cost called by doloop_optimize_loops for...
Richard Biener [Tue, 16 Apr 2013 17:46:20 +0000 (17:46 +0000)] 
re PR rtl-optimization/56921 (ICE in rtx_cost called by doloop_optimize_loops for PPC)

2013-04-16  Richard Biener  <rguenther@suse.de>

        PR rtl-optimization/56921
        * loop-init.c (pass_rtl_move_loop_invariants): Add
        TODO_do_not_ggc_collect to todo_flags_finish.
        (pass_rtl_unswitch): Same.
        (pass_rtl_unroll_and_peel_loops): Same.
        (pass_rtl_doloop): Same.

From-SVN: r198006

11 years agoPrologue/epilogue using STRD/LDRD in ARM mode
Greta Yorsh [Tue, 16 Apr 2013 17:04:22 +0000 (18:04 +0100)] 
Prologue/epilogue using STRD/LDRD in ARM mode

2013-04-16  Greta Yorsh  <Greta.Yorsh at arm.com>

* config/arm/arm.c (emit_multi_reg_push): New declaration
for an existing function.
(arm_emit_strd_push): New function.
(arm_expand_prologue): Used here.
(arm_emit_ldrd_pop): New function.
(arm_expand_epilogue): Used here.
(arm_get_frame_offsets): Update condition.
(arm_emit_multi_reg_pop): Add a special case for load of a single
register with writeback.

From-SVN: r198004

11 years agoinvoke.texi (i386 Option): Reword -mstack-protector-guard description.
Uros Bizjak [Tue, 16 Apr 2013 16:13:35 +0000 (18:13 +0200)] 
invoke.texi (i386 Option): Reword -mstack-protector-guard description.

* doc/invoke.texi (i386 Option): Reword -mstack-protector-guard
description.

From-SVN: r198002

11 years agore PR tree-optimization/56756 (ICE: verify_ssa failed (definition in block n follows...
Richard Biener [Tue, 16 Apr 2013 15:32:26 +0000 (15:32 +0000)] 
re PR tree-optimization/56756 (ICE: verify_ssa failed (definition in block n follows the use !))

2013-04-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/56756
* tree-ssa-loop-im.c (struct first_mem_ref_loc_1): New functor.
(first_mem_ref_loc): New.
(execute_sm): Place the load temporarily before a previous
access instead of in the latch edge to ensure its SSA dependencies
are defined at points dominating the load.

* gcc.dg/torture/pr56756.c: New testcase.

From-SVN: r198001