platform/upstream/gcc.git
10 years ago(clh 5)
Tom Tromey [Wed, 25 Sep 2013 15:52:30 +0000 (15:52 +0000)]
(clh 5)

From-SVN: r202894

10 years ago(clh 6)
Tom Tromey [Wed, 25 Sep 2013 15:51:26 +0000 (15:51 +0000)]
(clh 6)

From-SVN: r202893

10 years agotree-ssa-threadedge.c (thread_across_edge): Use foo.last () rather than foo[foo.lengt...
Jeff Law [Wed, 25 Sep 2013 15:33:34 +0000 (09:33 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Use foo.last () rather than foo[foo.length () - 1] to access last member in a vec.

        * tree-ssa-threadedge.c (thread_across_edge): Use foo.last () rather
        than foo[foo.length () - 1] to access last member in a vec.
        * tree-ssa-threadupdate.c (register_jump_thread): Similarly.

From-SVN: r202892

10 years agore PR bootstrap/58521 (bootstrap failure: ICE in mem_ref_in_stmt, at tree-ssa-loop...
Richard Biener [Wed, 25 Sep 2013 09:51:13 +0000 (09:51 +0000)]
re PR bootstrap/58521 (bootstrap failure: ICE in mem_ref_in_stmt, at tree-ssa-loop-im.c:677)

2013-09-25  Richard Biener  <rguenther@suse.de>

PR middle-end/58521
* tree.c (iterative_hash_expr): Remove MEM_REF special handling.

From-SVN: r202889

10 years agocgraph.c (cgraph_resolve_speculation): Use semantical equivalency test.
Jan Hubicka [Wed, 25 Sep 2013 09:48:55 +0000 (11:48 +0200)]
cgraph.c (cgraph_resolve_speculation): Use semantical equivalency test.

* cgraph.c (cgraph_resolve_speculation): Use semantical equivalency
test.

From-SVN: r202888

10 years agore PR sanitizer/58420 (internal compiler error: in ubsan_type_descriptor, at ubsan...
Marek Polacek [Wed, 25 Sep 2013 09:04:20 +0000 (09:04 +0000)]
re PR sanitizer/58420 (internal compiler error: in ubsan_type_descriptor, at ubsan.c:280)

PR sanitizer/58420
* ubsan.c (ubsan_type_descriptor): Handle IDENTIFIER_NODEs
when determining the type name.

From-SVN: r202887

10 years agore PR sanitizer/58413 (ubsan constant folding)
Marek Polacek [Wed, 25 Sep 2013 08:58:57 +0000 (08:58 +0000)]
re PR sanitizer/58413 (ubsan constant folding)

PR sanitizer/58413
c-family/
* c-ubsan.c (ubsan_instrument_shift): Don't instrument
an expression if we can prove it is correct.
(ubsan_instrument_division): Likewise.  Remove unnecessary
check.
testsuite/
* c-c++-common/ubsan/shift-5.c: New test.
* c-c++-common/ubsan/shift-6.c: New test.
* c-c++-common/ubsan/div-by-zero-5.c: New test.
* gcc.dg/ubsan/c-shift-1.c: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r202886

10 years agore PR c++/58516 (ICE with __transaction_atomic)
Marek Polacek [Wed, 25 Sep 2013 07:48:47 +0000 (07:48 +0000)]
re PR c++/58516 (ICE with __transaction_atomic)

PR c++/58516
cp/
* semantics.c (finish_transaction_stmt): Check for EXPR_P before
setting the expr location.

testsuite/
* g++.dg/tm/pr58516.C: New test.

From-SVN: r202883

10 years agocompiler: don't permit nil assignment to blank identifier.
Ian Lance Taylor [Wed, 25 Sep 2013 03:28:06 +0000 (03:28 +0000)]
compiler: don't permit nil assignment to blank identifier.

Fixes https://code.google.com/p/go/issues/detail?id=6005.

From-SVN: r202881

10 years agoDaily bump.
GCC Administrator [Wed, 25 Sep 2013 00:17:32 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r202879

10 years agosh.md: Fix formatting.
Oleg Endo [Tue, 24 Sep 2013 22:18:37 +0000 (22:18 +0000)]
sh.md: Fix formatting.

* config/sh/sh.md: Fix formatting.

From-SVN: r202876

10 years agoImplement --param=vect-max-peeling-for-alignment=..
Xinliang David Li [Tue, 24 Sep 2013 20:44:03 +0000 (20:44 +0000)]
Implement --param=vect-max-peeling-for-alignment=..

From-SVN: r202875

10 years agoUpdate libvtv to install header files in standard
Caroline Tice [Tue, 24 Sep 2013 19:29:28 +0000 (12:29 -0700)]
Update libvtv to install header files in standard
location rather than top level include dir.

From-SVN: r202873

10 years agotarget-supports.exp (check_effective_target_arm_cond_exec): New procedure.
Kyrylo Tkachov [Tue, 24 Sep 2013 17:23:43 +0000 (17:23 +0000)]
target-supports.exp (check_effective_target_arm_cond_exec): New procedure.

[gcc/testsuite/]
2013-09-24  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

    * lib/target-supports.exp (check_effective_target_arm_cond_exec):
    New procedure.
    * gcc.target/arm/minmax_minus.c: Check for cond_exec target.

From-SVN: r202872

10 years agogimple-pretty-print.c: Various whitespace tweaks.
Christophe Lyon [Tue, 24 Sep 2013 15:57:00 +0000 (15:57 +0000)]
gimple-pretty-print.c: Various whitespace tweaks.

2013-09-24  Christophe Lyon  <christophe.lyon@linaro.org>

* gimple-pretty-print.c: Various whitespace tweaks.
* tree-core.h: Likewise.
* tree-pretty-print.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-ssanames.h: Likewise.
* tree-vrp.c: Likewise.

From-SVN: r202869

10 years agore PR middle-end/57134 (ICE with -mstrict-align and inline assembly on ppc64)
Alan Modra [Tue, 24 Sep 2013 11:32:28 +0000 (21:02 +0930)]
re PR middle-end/57134 (ICE with -mstrict-align and inline assembly on ppc64)

PR middle-end/57134
PR middle-end/57586
* stmt.c (expand_asm_operands): Call expand_expr with
EXPAND_MEMORY for output operands that disallow regs.  Don't
use EXPAND_WRITE on inout operands.

From-SVN: r202866

10 years agore PR tree-optimization/58513 (*var and MEM[(const int &)var] (var has int* type...
Richard Biener [Tue, 24 Sep 2013 11:04:04 +0000 (11:04 +0000)]
re PR tree-optimization/58513 (*var and MEM[(const int &)var]  (var has int* type) are not treated as the same data ref.)

2013-09-24  Richard Biener  <rguenther@suse.de>

PR middle-end/58513
* tree.c (reference_alias_ptr_type): Move ...
* alias.c (reference_alias_ptr_type): ... here and implement
in terms of the new reference_alias_ptr_type_1.
(ref_all_alias_ptr_type_p): New helper.
(get_deref_alias_set_1): Drop flag_strict_aliasing here,
use ref_all_alias_ptr_type_p.
(get_deref_alias_set): Add flag_strict_aliasing check here.
(reference_alias_ptr_type_1): New function, split out from ...
(get_alias_set): ... here.
(alias_ptr_types_compatible_p): New function.
* alias.h (reference_alias_ptr_type): Declare.
(alias_ptr_types_compatible_p): Likewise.
* tree.h (reference_alias_ptr_type): Remove.
* fold-const.c (operand_equal_p): Use alias_ptr_types_compatible_p
to compare MEM_REF alias types.

* g++.dg/vect/pr58513.cc: New testcase.

From-SVN: r202865

10 years agotree-vrp.c (vrp_finalize): Check for SSA name presence.
Richard Biener [Tue, 24 Sep 2013 10:37:28 +0000 (10:37 +0000)]
tree-vrp.c (vrp_finalize): Check for SSA name presence.

2013-09-24  Richard Biener  <rguenther@suse.de>

* tree-vrp.c (vrp_finalize): Check for SSA name presence.

From-SVN: r202863

10 years agore PR libstdc++/58338 (Add noexcept to functions with a narrow contract)
Marc Glisse [Tue, 24 Sep 2013 10:07:32 +0000 (12:07 +0200)]
re PR libstdc++/58338 (Add noexcept to functions with a narrow contract)

2013-09-24  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/58338
PR libstdc++/56166
* include/bits/basic_string.h (basic_string)
[basic_string(basic_string&&)]: Make the noexcept conditional.
[operator=(basic_string&&), assign(basic_string&&)]: Link to PR 58265.
[begin(), end(), rbegin(), rend(), clear]: Remove noexcept.
[pop_back]: Comment on the lack of noexcept.
* include/debug/string (basic_string) [basic_string(const _Allocator&),
basic_string(basic_string&&), begin(), end(), rbegin(), rend(), clear,
operator[](size_type), pop_back]: Comment out noexcept, until vstring
replaces basic_string.

From-SVN: r202861

10 years agoatomic-comp-swap-release-acquire.c: Adjust expected output.
Yvan Roux [Tue, 24 Sep 2013 08:39:55 +0000 (08:39 +0000)]
atomic-comp-swap-release-acquire.c: Adjust expected output.

2013-09-24  Yvan Roux  <yvan.roux@linaro.org>

* gcc.target/arm/atomic-comp-swap-release-acquire.c: Adjust expected
output.

From-SVN: r202860

10 years ago0;261;0c2013-09-23 Michael Meissner <meissner@linux.vnet.ibm.com>
Michael Meissner [Tue, 24 Sep 2013 03:35:46 +0000 (03:35 +0000)]
0;261;0c2013-09-23  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (rs6000_vector_reload): Delete, combine
reload helper function arrays into a single array reg_addr.
(reload_fpr_gpr): Likewise.
(reload_gpr_vsx): Likewise.
(reload_vsx_gpr): Likewise.
(struct rs6000_reg_addr): Likewise.
(reg_addr): Likewise.
(rs6000_debug_reg_global): Change rs6000_vector_reload,
reload_fpr_gpr, reload_gpr_vsx, reload_vsx_gpr uses to reg_addr.
(rs6000_init_hard_regno_mode_ok): Likewise.
(rs6000_secondary_reload_direct_move): Likewise.
(rs6000_secondary_reload): Likewise.

From-SVN: r202859

10 years agoMakefile.am: Add regex.tcc.
Tim Shen [Tue, 24 Sep 2013 02:05:00 +0000 (02:05 +0000)]
Makefile.am: Add regex.tcc.

2013-09-24  Tim Shen  <timshen91@gmail.com>

* include/Makefile.am: Add regex.tcc.
* include/Makefile.in: Regenerate.
* include/bits/regex.h: Remove definitions to regex.tcc.
* include/bits/regex.tcc: New.
(match_results::format, regex_replace): Implement;
* include/bits/regex_compiler.h: Move _M_flags to the top of class
member list, because other members' initialization depend on it.
* include/bits/regex_compiler.tcc
(_Compiler<>::_Compiler): Adjust member initializations.
(_Compiler<>::_M_quantifier): Fix ungreedy interval quantifier.
* include/bits/regex_executor.h: Remove _RegexT from _*Executor classes.
In the future, all regex classes may refactor to *Impl style.
* include/bits/regex_executor.tcc (_Executor::_M_set_results):
Merge identical code from _*Executor classes.
* testsuite/28_regex/algorithms/regex_match/extended/
string_dispatch_01.cc (fake_match<>): Adjust the hacking-style testcase
caller for new __get_executors interface.
* testsuite/28_regex/algorithms/regex_replace/char/basic_replace.cc:
New.
* testsuite/28_regex/match_results/format.cc: New.
* testsuite/28_regex/traits/char/lookup_collatename.cc: Remove digraph
testcase.
* testsuite/28_regex/traits/wchar_t/lookup_collatename.cc: Likewise.

From-SVN: r202858

10 years agoDaily bump.
GCC Administrator [Tue, 24 Sep 2013 00:16:43 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202854

10 years agoFix 58500.
Adam Butcher [Mon, 23 Sep 2013 22:43:44 +0000 (23:43 +0100)]
Fix 58500.

gcc/cp/
PR c++/58500
* type-utils.h (find_type_usage): Only traverse one type level into
member function pointers.

gcc/testsuite/
PR c++/58500
* g++.dg/cpp1y/pr58500.C: New testcase.

From-SVN: r202851

10 years agoFix instantiation of implicit function template forward declarations.
Adam Butcher [Mon, 23 Sep 2013 22:43:34 +0000 (23:43 +0100)]
Fix instantiation of implicit function template forward declarations.

* parser.c (cp_parser_init_declarator): Defer calling
finish_fully_implicit_template for forward declarations until after
other decl processing is complete.  Cleanup for clarity: Extract 'else'
case after 'if' containing unconditional return.

From-SVN: r202850

10 years agoGenerate more intuitive name for 'auto' parameters.
Adam Butcher [Mon, 23 Sep 2013 22:43:25 +0000 (23:43 +0100)]
Generate more intuitive name for 'auto' parameters.

* parser.c (make_generic_type_name): Spell generic type names '<autoN>'
rather than '__GenN'.

From-SVN: r202849

10 years agoSupport nested generic lambdas.
Adam Butcher [Mon, 23 Sep 2013 22:43:15 +0000 (23:43 +0100)]
Support nested generic lambdas.

* lambda.c (maybe_add_lambda_conv_op): Don't check for instantiated
callop in the case of generic lambdas.

From-SVN: r202848

10 years agoUse translation-unit-global rather than parameter-list-local counter for generic...
Adam Butcher [Mon, 23 Sep 2013 22:43:06 +0000 (23:43 +0100)]
Use translation-unit-global rather than parameter-list-local counter for generic type names to facilitate nested implicit function templates.

* parser.c (make_generic_type_name): Use global count rather than
parameter and ...
(add_implicit_template_parms): ... propagate interface change here.

From-SVN: r202847

10 years agors6000.h (enum r6000_reg_class_enum): Add new constraints: wu, ww, and wy.
Michael Meissner [Mon, 23 Sep 2013 21:13:38 +0000 (21:13 +0000)]
rs6000.h (enum r6000_reg_class_enum): Add new constraints: wu, ww, and wy.

2013-09-20  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Add new
constraints: wu, ww, and wy.  Repurpose wv constraint added during
power8 changes.  Put wg constraint in alphabetical order.

* config/rs6000/rs6000.opt (-mvsx-scalar-float): New debug switch
for future work to add ISA 2.07 VSX single precision support.
(-mvsx-scalar-double): Change default from -1 to 1, update
documentation comment.
(-mvsx-scalar-memory): Rename debug switch to -mupper-regs-df.
(-mupper-regs-df): New debug switch to control whether DF values
can go in the traditional Altivec registers.
(-mupper-regs-sf): New debug switch to control whether SF values
can go in the traditional Altivec registers.

* config/rs6000/rs6000.c (rs6000_debug_reg_global): Print wu, ww,
and wy constraints.
(rs6000_init_hard_regno_mode_ok): Use ssize_t instead of int for
loop variables.  Rename -mvsx-scalar-memory to -mupper-regs-df.
Add new constraints, wu/ww/wy.  Repurpose wv constraint.
(rs6000_debug_legitimate_address_p): Print if we are running
before, during, or after reload.
(rs6000_secondary_reload): Add a comment.
(rs6000_opt_masks): Add -mupper-regs-df, -mupper-regs-sf.

* config/rs6000/constraints.md (wa constraint): Sort w<x>
constraints.  Update documentation string.
(wd constraint): Likewise.
(wf constraint): Likewise.
(wg constraint): Likewise.
(wn constraint): Likewise.
(ws constraint): Likewise.
(wt constraint): Likewise.
(wx constraint): Likewise.
(wz constraint): Likewise.
(wu constraint): New constraint for ISA 2.07 SFmode scalar
instructions.
(ww constraint): Likewise.
(wy constraint): Likewise.
(wv constraint): Repurpose ISA 2.07 constraint that we not used in
the previous submissions.
* doc/md.texi (PowerPC and IBM RS6000): Likewise.

From-SVN: r202843

10 years agortl.texi (REG_NOTES): Say that int_list can also be used.
Richard Sandiford [Mon, 23 Sep 2013 17:41:02 +0000 (17:41 +0000)]
rtl.texi (REG_NOTES): Say that int_list can also be used.

gcc/
* doc/rtl.texi (REG_NOTES): Say that int_list can also be used.
(REG_BR_PROB): Say that the probability is stored in an int_list.
* reg-notes.def: Update commentary to mention INT_LIST.
* rtl.def (EXPR_LIST, INSN_LIST): Capitalize comments.
(INT_LIST): New rtx.
* rtl.h (add_int_reg_note, add_shallow_copy_of_reg_note): Declare.
* rtlanal.c (int_reg_note_p): New function.
(alloc_reg_note): Assert that the note does not have an int argument.
(add_int_reg_note, add_shallow_copy_of_reg_note): New functions.
* combine.c (distribute_notes): Use add_shallow_copy_of_rtx.
* cse.c (cse_process_notes_1): Expect REG_EQUAL to be an EXPR_LIST
rather than an INSN_LIST.  Handle INT_LIST.
* ifcvt.c (cond_exec_process_insns): Take the probability as an int
rather than an rtx.  Use gen_rtx_INT_LIST to create a REG_BR_PROB note.
(cond_exec_process_if_block): Use XINT to extract REG_BR_PROB values.
Manipulate them as ints rather than rtxes.
* reg-stack.c (subst_asm_stack_regs): Only handle EXPR_LIST notes.
* regmove.c (copy_src_to_dest): Likewise.
* sched-vis.c (print_insn_with_notes): Handle INT_LIST.

* config/i386/winnt.c (i386_pe_seh_unwind_emit): Sink pat assignment
into the cases that need it.
* config/arm/arm.c (arm_unwind_emit): Likewise.

* asan.c (asan_clear_shadow): Use add_int_reg_note for REG_BR_PROB.
* emit-rtl.c (try_split, emit_copy_of_insn_after): Likewise.
* loop-doloop.c (add_test, doloop_modify): Likewise.
* loop-unswitch.c (compare_and_jump_seq): Likewise.
* optabs.c (emit_cmp_and_jump_insn_1): Likewise.
* predict.c (combine_predictions_for_insn): Likewise.
* print-rtl.c (print_rtx): Handle INT_LIST.
* config/aarch64/aarch64.c (aarch64_emit_unlikely_jump): Likewise.
* config/alpha/alpha.c (emit_unlikely_jump): Likewise.
* config/arm/arm.c (emit_unlikely_jump): Likewise.
* config/i386/i386.c (ix86_expand_split_stack_prologue): Likewise.
(ix86_split_fp_branch, predict_jump): Likewise.
* config/rs6000/rs6000.c (emit_unlikely_jump): Likewise.
* config/sh/sh.c (expand_cbranchsi4): Likewise.
* config/spu/spu.c (ea_load_store_inline): Likewise.

* cfgbuild.c (compute_outgoing_frequencies): Use XINT to access the
value of a REG_BR_PROB note.
* cfgrtl.c (force_nonfallthru_and_redirect): Likewise.
(update_br_prob_note, rtl_verify_edges, purge_dead_edges): Likewise.
* emit-rtl.c (try_split): Likewise.
* predict.c (br_prob_note_reliable_p): Likewise.
(invert_br_probabilities, combine_predictions_for_insn): Likewise.
* reorg.c (mostly_true_jump): Likewise.
* config/bfin/bfin.c (cbranch_predicted_taken_p): Likewise.
* config/frv/frv.c (frv_print_operand_jump_hint): Likewise.
* config/i386/i386.c (ix86_print_operand): Likewise.
* config/ia64/ia64.c (ia64_print_operand): Likewise.
* config/mmix/mmix.c (mmix_print_operand): Likewise.
* config/rs6000/rs6000.c (output_cbranch): Likewise.
* config/s390/s390.c (s390_expand_tbegin): Likewise.
* config/sh/sh.c (sh_print_operand, sh_adjust_cost): Likewise.
* config/sparc/sparc.c (output_cbranch): Likewise.
* config/spu/spu.c (get_branch_target): Likewise.
* config/tilegx/tilegx.c (cbranch_predicted_p): Likewise.
* config/tilepro/tilepro.c (cbranch_predicted_p): Likewise.

From-SVN: r202839

10 years agoipa-cp.c (ipa_get_indirect_edge_target_1): Add sanity check for ipa-devirt.
Jan Hubicka [Mon, 23 Sep 2013 16:54:34 +0000 (18:54 +0200)]
ipa-cp.c (ipa_get_indirect_edge_target_1): Add sanity check for ipa-devirt.

* ipa-cp.c (ipa_get_indirect_edge_target_1): Add sanity check
for ipa-devirt.
* ipa-utils.h (possible_polymorphic_call_target_p): New function.
* ipa-devirt.c (possible_polymorphic_call_target_p): Be tolerant
of external calls
* gimple-fold.c: Include ipa-utils.h and gimple-pretty-print.h
(gimple_fold_call): Dump inconsistent devirtualizations; add
sanity check for type based devirtualizations.
* ipa-prop.c: Include ipa-utils.h
(ipa_intraprocedural_devirtualization): Add sanity check.
(try_make_edge_direct_virtual_call): Likewise.

From-SVN: r202837

10 years agosnprintf_lite.cc (__concat_size_t): Use unsigned long long conditionally.
Paul Pluzhnikov [Mon, 23 Sep 2013 16:36:11 +0000 (09:36 -0700)]
snprintf_lite.cc (__concat_size_t): Use unsigned long long conditionally.

2013-09-23  Paul Pluzhnikov  <ppluzhnikov@google.com>

* src/c++11/snprintf_lite.cc (__concat_size_t): Use
unsigned long long conditionally.

From-SVN: r202836

10 years agotree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy assignment...
Eric Botcazou [Mon, 23 Sep 2013 16:07:19 +0000 (16:07 +0000)]
tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy assignment statements.

* tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy
assignment statements.

From-SVN: r202833

10 years agoUnbreak i386 and other builds where size_t != unsigned long.
Paul Pluzhnikov [Mon, 23 Sep 2013 15:29:14 +0000 (08:29 -0700)]
Unbreak i386 and other builds where size_t != unsigned long.

2013-09-23  Paul Pluzhnikov  <ppluzhnikov@google.com>

* src/c++11/snprintf_lite.cc (__concat_size_t): Use only
std::__int_to_char<unsigned long long>()

From-SVN: r202832

10 years agogimple-pretty-print.c (dump_ssaname_info): New function.
Kugan Vivekanandarajah [Mon, 23 Sep 2013 15:13:39 +0000 (15:13 +0000)]
gimple-pretty-print.c (dump_ssaname_info): New function.

2013-09-23  Kugan Vivekanandarajah  <kuganv@linaro.org>

gcc/
* gimple-pretty-print.c (dump_ssaname_info): New function.
(dump_gimple_phi): Call it.
(pp_gimple_stmt_1): Likewise.
* tree-core.h (tree_ssa_name): New union ssa_name_info_type field.
(range_info_def): Declare.
* tree-pretty-print.c (pp_double_int): New function.
(dump_generic_node): Call it.
* tree-pretty-print.h (pp_double_int): Declare.
* tree-ssa-alias.c (dump_alias_info): Check pointer type.
* tree-ssanames.h (range_info_def): New structure.
(value_range_type): Move definition here.
(set_range_info, value_range_type, duplicate_ssa_name_range_info):
Declare.
* tree-ssanames.c (make_ssa_name_fn): Check pointer type at
initialization.
(set_range_info): New function.
(get_range_info): Likewise.
(duplicate_ssa_name_range_info): Likewise.
(duplicate_ssa_name_fn): Check pointer type and call
duplicate_ssa_name_range_info.
* tree-ssa-copy.c (fini_copy_prop): Likewise.
* tree-vrp.c (value_range_type): Remove definition, now in
tree-ssanames.h.
(vrp_finalize): Call set_range_info to update value range of
SSA_NAMEs.
* tree.h (SSA_NAME_PTR_INFO): Macro changed to access via union.
(SSA_NAME_RANGE_INFO): New macro.

From-SVN: r202831

10 years agore PR tree-optimization/58464 (Crashes with SIGSEGV (infinite recursion in phi_transl...
Richard Biener [Mon, 23 Sep 2013 12:37:17 +0000 (12:37 +0000)]
re PR tree-optimization/58464 (Crashes with SIGSEGV (infinite recursion in phi_translate))

2013-09-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/58464
* tree-ssa-pre.c (phi_trans_lookup): Remove.
(phi_trans_add): Change to add conditionally on being not
present.
(phi_translate_1): Remove recursion detection here.
(phi_translate): Pre-seed the cache with NULL to catch
recursion here in a more generic way.
(bitmap_find_leader): Adjust comment.
(get_representative_for): Dump value-numbers.
(create_expression_by_pieces): Likewise.
(insert_into_preds_of_block): Likewise.

* g++.dg/torture/pr58464.C: New testcase.

From-SVN: r202826

10 years agore PR target/58475 (SH4 insn swapb does not satisfy its constraints:)
Christian Bruel [Mon, 23 Sep 2013 08:30:00 +0000 (10:30 +0200)]
re PR target/58475 (SH4 insn swapb does not satisfy its constraints:)

2013-09-23  Christian Bruel  <christian.bruel@st.com>

        PR target/58475
        * config/sh/sh.md (movsf_ie): Allow fpul_operand.
        * config/sh/predicate.md (arith_reg_operand): Disallow FPUL_REG.

From-SVN: r202825

10 years agoRevert r202780:
James Greenhalgh [Mon, 23 Sep 2013 08:25:55 +0000 (08:25 +0000)]
Revert r202780:

* config/aarch64/aarch64.c (aarch64_expand_prologue): Use plus_constant.
(aarch64_expand_epilogue): Likewise.
(aarch64_legitimize_reload_address): Likewise.

From-SVN: r202824

10 years agore PR fortran/58355 ([F03] ICE with TYPE, EXTENDS before parent TYPE defined)
Janus Weil [Mon, 23 Sep 2013 07:40:39 +0000 (09:40 +0200)]
re PR fortran/58355 ([F03] ICE with TYPE, EXTENDS before parent TYPE defined)

2013-09-23  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58355
* decl.c (check_extended_derived_type): Prevent segfault, modify error
message.

2013-09-23  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58355
* gfortran.dg/extends_15.f90: New.

From-SVN: r202823

10 years agoDaily bump.
GCC Administrator [Mon, 23 Sep 2013 00:16:55 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202822

10 years agogimplify.c (gimplify_asm_expr): Reset the TREE_CHAIN of clobbers to NULL_TREE before...
Eric Botcazou [Sun, 22 Sep 2013 21:57:39 +0000 (21:57 +0000)]
gimplify.c (gimplify_asm_expr): Reset the TREE_CHAIN of clobbers to NULL_TREE before pushing them onto the vector.

* gimplify.c (gimplify_asm_expr): Reset the TREE_CHAIN of clobbers to
NULL_TREE before pushing them onto the vector.  Likewise for labels.

From-SVN: r202819

10 years agoPrint additional info when various out-of-range conditions are detected.
Paul Pluzhnikov [Sun, 22 Sep 2013 02:04:13 +0000 (19:04 -0700)]
Print additional info when various out-of-range conditions are detected.

2013-09-21  Paul Pluzhnikov  <ppluzhnikov@google.com>

* include/bits/functexcept.h (__throw_out_of_range_fmt): New.
* src/c++11/functexcept.cc (__throw_out_of_range_fmt): New.
* src/c++11/snprintf_lite.cc: New.
* src/c++11/Makefile.am: Add snprintf_lite.cc.
* src/c++11/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add _ZSt24__throw_out_of_range_fmtPKcz.
* include/std/array (at): Use __throw_out_of_range_fmt.
* include/debug/array (at): Likewise.
* include/profile/array (at): Likewise.
* include/std/bitset (_M_check_initial_position, _M_check): New.
(bitset::bitset): Use _M_check_initial_position.
(set, reset, flip, test): Use _M_check.
* include/ext/vstring.h (_M_check, at): Use __throw_out_of_range_fmt.
* include/bits/stl_vector.h (_M_range_check): Likewise.
* include/bits/stl_bvector.h (_M_range_check): Likewise.
* include/bits/stl_deque.h (_M_range_check): Likewise.
* include/bits/basic_string.h (_M_check, at): Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise.
* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc: Likewise.
* testsuite/23_containers/array/tuple_interface/tuple_element_debug_neg.cc:
Likewise.
* testsuite/23_containers/array/tuple_interface/get_neg.cc: Likewise.
* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Likewise.
* testsuite/util/exception/safety.h (generate): Use __throw_out_of_range_fmt.

From-SVN: r202818

10 years agoDaily bump.
GCC Administrator [Sun, 22 Sep 2013 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202817

10 years agopredicates.md (ia64_cbranch_operator): Accept unordered comparison operators when...
Eric Botcazou [Sat, 21 Sep 2013 21:12:20 +0000 (21:12 +0000)]
predicates.md (ia64_cbranch_operator): Accept unordered comparison operators when -fno-trapping-math is in effect.

* config/ia64/predicates.md (ia64_cbranch_operator): Accept unordered
comparison operators when -fno-trapping-math is in effect.
* config/ia64/ia64.c (ia64_expand_compare): Add support for unordered
comparison operators in TFmode and assert that unsupported operators
cannot reach here.
(ia64_print_operand): Likewise.

From-SVN: r202814

10 years agox86-tune.def (partial_reg_stall): Disable for CoreI7 and newer.
Jan Hubicka [Sat, 21 Sep 2013 20:59:10 +0000 (22:59 +0200)]
x86-tune.def (partial_reg_stall): Disable for CoreI7 and newer.

* x86-tune.def (partial_reg_stall): Disable for CoreI7 and newer.
(sse_typeless_stores): Enable for core
(sse_load0_by_pxor): Likewise.
(four_jump_limit): Disable for core.
(pad_returns): Likewise.
(avoid_vector_decode): Likewise.
(fuse_cmp_and_branch): Enable for cores.
* i386.c (x86_accumulate_outgoing_args): Disable for cores.

From-SVN: r202813

10 years agoDaily bump.
GCC Administrator [Sat, 21 Sep 2013 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202811

10 years agore PR middle-end/56791 (Segmentation fault in stage2 gengenrtl -- Incorrect instructi...
John David Anglin [Fri, 20 Sep 2013 23:58:43 +0000 (23:58 +0000)]
re PR middle-end/56791 (Segmentation fault in stage2 gengenrtl -- Incorrect instruction sequence generated by reload)

PR middle-end/56791
* config/pa/pa.c (pa_option_override): Disable auto increment and
decrement instructions until reload is completed.

From-SVN: r202807

10 years agopa-linux.h (TARGET_OS_CPP_BUILTINS): Define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1...
John David Anglin [Fri, 20 Sep 2013 23:37:56 +0000 (23:37 +0000)]
pa-linux.h (TARGET_OS_CPP_BUILTINS): Define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1...

* config/pa/pa-linux.h (TARGET_OS_CPP_BUILTINS): Define
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1, __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2,
and __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4.

From-SVN: r202803

10 years agorl78.c: Various whitespace and comment tweaks.
DJ Delorie [Fri, 20 Sep 2013 22:42:26 +0000 (18:42 -0400)]
rl78.c: Various whitespace and comment tweaks.

* config/rl78/rl78.c: Various whitespace and comment tweaks.
(need_to_save): Save bank 0 on interrupts.
(characterize_address): Strip far address wrappers.
(rl78_as_legitimate_address): Likewise.
(transcode_memory_rtx): Likewise.
(rl78_peep_movhi_p): Disable this peephole after devirt.
(rl78_propogate_register_origins): Forget all origins when a
CLOBBER is seen.
* config/rl78/rl78-virt.md: Various whitespace tweaks.
* config/rl78/rl78-real.md: Various whitespace tweaks.  Additional
peephole2's.
* config/rl78/rl78.md (sel_rb): Disable for G10 just in case.
* config/rl78/rl78-expand.md (movqi): Check for subregs of consts.
* config/rl78/rl78.h (LINK_SPEC): Pass -gc-sections unless
relocating.
* config/rl78/constraints.md: Various whitespace and paren tweaks.

Co-Authored-By: Nick Clifton <nickc@redhat.com>
From-SVN: r202801

10 years agopa.md: In "scc" insn patterns...
John David Anglin [Fri, 20 Sep 2013 22:28:34 +0000 (22:28 +0000)]
pa.md: In "scc" insn patterns...

* config/pa/pa.md: In "scc" insn patterns, change output template to
handle const0_rtx in reg_or_0_operand operands.

From-SVN: r202798

10 years agore PR c++/58481 (Internal compiler error when passing argument packs to base class...
Paolo Carlini [Fri, 20 Sep 2013 21:04:09 +0000 (21:04 +0000)]
re PR c++/58481 (Internal compiler error when passing argument packs to base class method inside a lambda)

/cp
2013-09-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58481
* pt.c (tsubst_copy): Use current_nonlambda_class_type to
call tsubst_baselink.

/testsuite
2013-09-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58481
* g++.dg/cpp0x/lambda/lambda-this17.C: New.

From-SVN: r202797

10 years agoWork around buggy gas not properly sign-extending a 64bit value on a 32bit host
Jan-Benedict Glaw [Fri, 20 Sep 2013 19:00:02 +0000 (19:00 +0000)]
Work around buggy gas not properly sign-extending a 64bit value on a 32bit host

PR target/56875
2013-09-20  Martin Husemann  <martin@NetBSD.org>
    Jan-Benedict Glaw  <jbglaw@lug-owl.de>

gcc/
* config/vax/vax.c (vax_output_int_move): Use D format specifier.
* config/vax/vax.md (ashldi3, <unnamed>): Ditto.

gcc/testsuite/
* gcc.target/vax/vax.exp: New.
* gcc.target/vax/pr56875.c: Ditto.

From-SVN: r202796

10 years agore PR testsuite/57605 (colors break note pruning in the testsuite)
Jakub Jelinek [Fri, 20 Sep 2013 17:52:29 +0000 (19:52 +0200)]
re PR testsuite/57605 (colors break note pruning in the testsuite)

PR testsuite/57605
libstdc++-v3/
* testsuite/lib/libstdc++.exp (libstdc++_init): Prepend
-fdiagnostics-color=never to cxxflags.
libmudflap/
* testsuite/lib/libmudflap.exp (libmudflap-init): Append
-fdiagnostics-color=never to cxxflags.
libgomp/
* testsuite/lib/libgomp.exp: Add -fdiagnostics-color=never to
ALWAYS_CFLAGS.

From-SVN: r202791

10 years agore PR middle-end/58484 (ICE in chrec_fold_plus_1, at tree-chrec.c:272 building 416...
Richard Biener [Fri, 20 Sep 2013 17:49:45 +0000 (17:49 +0000)]
re PR middle-end/58484 (ICE in chrec_fold_plus_1, at tree-chrec.c:272 building 416.gamess)

2013-09-20  Richard Biener  <rguenther@suse.de>

PR middle-end/58484
* tree-scalar-evolution.c (struct scev_info_str): Shrink by
remembering SSA name version and block index.
(new_scev_info_str): Adjust.
(hash_scev_info): Likewise.  Also hash the block index.
(eq_scev_info): Adjust.
(find_var_scev_info): Likewise.
(struct instantiate_cache_entry): Remove.
(struct instantiate_cache_type): Use a htab to map name, block
to chrec.
(instantiate_cache_type::~instantiate_cache_type): Adjust.
(get_instantiated_value_entry): Likewise.
(hash_idx_scev_info, eq_idx_scev_info): New functions.
(instantiate_scev_name): Adjust.

* gfortran.dg/pr58484.f: New testcase.

From-SVN: r202790

10 years ago* tree-ssa-dom.c (record_temporary_equivalences): Add comment.
Jeff Law [Fri, 20 Sep 2013 17:43:08 +0000 (11:43 -0600)]
* tree-ssa-dom.c (record_temporary_equivalences): Add comment.

From-SVN: r202789

10 years ago* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add missing dg-final clause.
Jeff Law [Fri, 20 Sep 2013 17:36:38 +0000 (11:36 -0600)]
* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add missing dg-final clause.

From-SVN: r202788

10 years agoaarch64-builtins.c (aarch64_simd_expand_args): Call aarch64_simd_expand_args to updat...
Yufeng Zhang [Fri, 20 Sep 2013 16:25:07 +0000 (16:25 +0000)]
aarch64-builtins.c (aarch64_simd_expand_args): Call aarch64_simd_expand_args to update op[argc].

gcc/

* config/aarch64/aarch64-builtins.c (aarch64_simd_expand_args):
Call aarch64_simd_expand_args to update op[argc].

From-SVN: r202784

10 years agoplugin.c (parse_plugin_arg_opt): Accept equal sign inside plugin argument.
Basile Starynkevitch [Fri, 20 Sep 2013 15:54:47 +0000 (15:54 +0000)]
plugin.c (parse_plugin_arg_opt): Accept equal sign inside plugin argument.

2013-09-20  Basile Starynkevitch  <basile@starynkevitch.net>

* plugin.c (parse_plugin_arg_opt): Accept equal sign inside
          plugin argument.

From-SVN: r202783

10 years agogengtype.c (file_rules): Added rule for *.cc files.
Basile Starynkevitch [Fri, 20 Sep 2013 15:50:56 +0000 (15:50 +0000)]
gengtype.c (file_rules): Added rule for *.cc files.

2013-09-20  Basile Starynkevitch  <basile@starynkevitch.net>

       * gengtype.c (file_rules): Added rule for *.cc files.
       (get_output_file_with_visibility): Give fatal message when no
       rules found.

From-SVN: r202782

10 years agore PR libstdc++/58338 (Add noexcept to functions with a narrow contract)
Marc Glisse [Fri, 20 Sep 2013 15:50:09 +0000 (17:50 +0200)]
re PR libstdc++/58338 (Add noexcept to functions with a narrow contract)

2013-09-20  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/58338
* include/bits/allocator.h (__alloc_swap::_S_do_it,
__shrink_to_fit_aux::_S_do_it): Mark as noexcept.
* include/bits/basic_string.h (basic_string::_Rep) [_S_empty_rep,
_M_is_leaked, _M_is_shared, _M_set_leaked, _M_set_sharable,
_M_set_length_and_sharable, _M_dispose]: Likewise.
(basic_string::_Alloc_hider::_Alloc_hider): Likewise.
(basic_string) [_M_data, _M_rep, _M_ibegin, _M_iend, _M_limit,
_M_disjunct, _M_copy, _M_move, _M_assign, _S_copy_chars, _S_compare,
_S_empty_rep, shrink_to_fit, operator[] const, front const, back const]:
Likewise.
[clear]: Link to PR 56166.
[swap]: Link to PR 58265.
* include/bits/stl_deque.h (_Deque_iterator) [_S_buffer_size,
_Deque_iterator, _M_const_cast, operator*, operator->, operator++,
operator--, operator+=, operator+, operator-=, operator-, operator[],
_M_set_node]: Mark as noexcept.
(operator==(const _Deque_iterator&, const _Deque_iterator&),
operator!=(const _Deque_iterator&, const _Deque_iterator&),
operator<(const _Deque_iterator&, const _Deque_iterator&),
operator>(const _Deque_iterator&, const _Deque_iterator&),
operator<=(const _Deque_iterator&, const _Deque_iterator&),
operator>=(const _Deque_iterator&, const _Deque_iterator&),
operator-(const _Deque_iterator&, const _Deque_iterator&),
operator+(ptrdiff_t, const _Deque_iterator&)): Likewise.
(_Deque_base) [_Deque_base(const allocator_type&)]: Add missing call to
_M_initialize_map.
[~_Deque_base, _M_deallocate_node, _M_deallocate_map, _M_destroy_nodes]:
Mark as noexcept.
(_Deque_base::_Deque_impl) [_Deque_impl(const _Tp_alloc_type&),
_Deque_impl(_Tp_alloc_type&&)]: Likewise.
(deque) [_S_buffer_size, operator=(deque&&), shrink_to_fit, operator[],
front, back, pop_front, pop_back, swap]: Likewise.
[deque(), deque(const allocator_type&)]: Merge.
* include/debug/deque (deque) [operator=(deque&&), shrink_to_fit,
operator[], front, back, pop_front, pop_back, swap]: Mark as noexcept.
* include/profile/deque (deque) [operator=(deque&&), operator[], front,
back, pop_front, pop_back, swap]: Likewise.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc:
Adjust line number.
* testsuite/23_containers/deque/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r202781

10 years ago[AArch64] Use plus_constant.
Renlin Li [Fri, 20 Sep 2013 14:59:18 +0000 (14:59 +0000)]
[AArch64] Use plus_constant.

2013-09-20  Renlin Li  <renlin.li@arm.com>

* config/aarch64/aarch64.c (aarch64_expand_prologue): Use plus_constant.
(aarch64_expand_epilogue): Likewise.
(aarch64_legitimize_reload_address): Likewise.

From-SVN: r202780

10 years agore PR middle-end/57748 (ICE when expanding assignment to unaligned zero-sized array)
Bernd Edlinger [Fri, 20 Sep 2013 14:10:14 +0000 (14:10 +0000)]
re PR middle-end/57748 (ICE when expanding assignment to unaligned zero-sized array)

2013-09-20  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR middle-end/57748
        * expr.c (expand_assignment): Remove misalignp code path.

testsuite/

        PR middle-end/57748
        * gcc.dg/torture/pr57748-1.c: New test.
        * gcc.dg/torture/pr57748-2.c: New test.

From-SVN: r202778

10 years agore PR sanitizer/58413 (ubsan constant folding)
Marek Polacek [Fri, 20 Sep 2013 13:26:07 +0000 (13:26 +0000)]
re PR sanitizer/58413 (ubsan constant folding)

2013-09-20  Marek Polacek  <polacek@redhat.com>

PR sanitizer/58413
* ubsan.c (get_ubsan_type_info_for_type): Use TYPE_SIZE instead of
TYPE_PRECISION.  Add asserts.

testsuite/
* c-c++-common/ubsan/shift-4.c: New test.

From-SVN: r202776

10 years agore PR tree-optimization/58453 (Revision 202431 results in miscompare for CPU2006...
Richard Biener [Fri, 20 Sep 2013 12:21:08 +0000 (12:21 +0000)]
re PR tree-optimization/58453 (Revision 202431 results in miscompare for CPU2006 434.zeusmp)

2013-09-20  Richard Biener  <rguenther@suse.de>

PR tree-optimization/58453
* tree-loop-distribution.c (distribute_loop): Apply the cost
model for -ftree-loop-distribute-patterns, too.

* gcc.dg/tree-ssa/ldist-23.c: New testcase.

From-SVN: r202775

10 years agore PR tree-optimization/58473 (FAIL: ext/random/normal_mv_distribution/cons/default...
Richard Biener [Fri, 20 Sep 2013 10:19:12 +0000 (10:19 +0000)]
re PR tree-optimization/58473 (FAIL: ext/random/normal_mv_distribution/cons/default.cc (test for excess errors))

2013-09-20  Richard Biener  <rguenther@suse.de>

PR middle-end/58473
* tree-chrec.h (build_polynomial_chrec): Use gcc_checking_assert,
make type comparison less strict.

From-SVN: r202774

10 years agolibtool.m4 (_LT_ENABLE_LOCK <ld -m flags>): Remove non-canonical ppc host match.
Alan Modra [Fri, 20 Sep 2013 09:47:52 +0000 (19:17 +0930)]
libtool.m4 (_LT_ENABLE_LOCK <ld -m flags>): Remove non-canonical ppc host match.

* libtool.m4 (_LT_ENABLE_LOCK <ld -m flags>): Remove non-canonical
ppc host match.  Support little-endian powerpc linux hosts.
Regenerate configure throughout.

From-SVN: r202773

10 years agore PR fortran/58099 ([F03] over-zealous procedure-pointer error checking)
Janus Weil [Fri, 20 Sep 2013 07:44:05 +0000 (09:44 +0200)]
re PR fortran/58099 ([F03] over-zealous procedure-pointer error checking)

2013-09-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58099
* expr.c (gfc_check_pointer_assign): Remove second call to
'gfc_compare_interfaces' with swapped arguments.
* interface.c (gfc_compare_interfaces): Symmetrize the call to
'check_result_characteristics' by calling it with swapped arguments.

2013-09-20  Janus Weil  <janus@gcc.gnu.org>

PR fortran/58099
* gfortran.dg/proc_ptr_43.f90: New.

From-SVN: r202766

10 years agore PR other/58467 (Documentation of the "used" variable attribute needs additional...
Marek Polacek [Fri, 20 Sep 2013 06:08:44 +0000 (06:08 +0000)]
re PR other/58467 (Documentation of the "used" variable attribute needs additional information)

2013-09-20  Marek Polacek  <polacek@redhat.com>

PR other/58467
* doc/extend.texi: Document that attribute used is meant to be used
on variables with static storage duration.

From-SVN: r202764

10 years agoDaily bump.
GCC Administrator [Fri, 20 Sep 2013 00:16:56 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r202763

10 years agocompiler: Fix inconsistent check for structs using memcmp for ==.
Ian Lance Taylor [Thu, 19 Sep 2013 17:32:56 +0000 (17:32 +0000)]
compiler: Fix inconsistent check for structs using memcmp for ==.

Test is bug479.

From-SVN: r202751

10 years agore PR tree-optimization/58472 (gomp4: ICE in in vectorizable_store, at tree-vect...
Jakub Jelinek [Thu, 19 Sep 2013 16:56:40 +0000 (18:56 +0200)]
re PR tree-optimization/58472 (gomp4: ICE in in vectorizable_store, at tree-vect-stmts.c:4192)

PR tree-optimization/58472
* tree-vect-stmts.c (vectorizable_store, vectorizable_load): For
simd_lane_access set inv_p = false.
* omp-low.c (lower_rec_input_clauses): Set TREE_NO_WARNING on
the simduid magic VAR_DECL.

* c-c++-common/gomp/pr58472.c: New test.

From-SVN: r202748

10 years ago* i386.c (generic_memcpy, generic_memset): Fix 32bit template.
Jan Hubicka [Thu, 19 Sep 2013 15:42:55 +0000 (17:42 +0200)]
* i386.c (generic_memcpy, generic_memset): Fix 32bit template.

From-SVN: r202747

10 years agotree-ssa-dom.c (record_temporary_equivalences): New function split out of dom_opt_dom...
Jeff Law [Thu, 19 Sep 2013 12:49:30 +0000 (06:49 -0600)]
tree-ssa-dom.c (record_temporary_equivalences): New function split out of dom_opt_dom_walker::after_dom_children.

       * tree-ssa-dom.c (record_temporary_equivalences): New function
        split out of dom_opt_dom_walker::after_dom_children.
        (dom_opt_dom_walker::thread_across_edge): Move common code
        in here from dom_opt_dom_walker::after_dom_children.
        (dom_opt_dom_walker::after_dom_children): Corresponding simplifictions.

From-SVN: r202742

10 years agoi386.h (TARGET_GENERIC32, [...]): Remove.
Jan Hubicka [Thu, 19 Sep 2013 12:43:57 +0000 (14:43 +0200)]
i386.h (TARGET_GENERIC32, [...]): Remove.

* i386.h (TARGET_GENERIC32, TARGET_GENERIC64): Remove.
(TARGET_GENERIC): Use PROCESOR_GENERIC
(enum processor_type): Unify generic32 and 64.
* i386.md (cpu): Likewise.
* x86-tune.def (use_leave): Enable for generic32.
(avoid_vector_decode, slow_imul_imm32_mem, slow_imul_imm8): Likewise.
* athlon.md: Change generic64 to generic in all occurences.
* i386-c.c (ix86_target_macros_internal): Unify generic64 and 32.
(ix86_target_macros_internal): Likewise.
* driver-i386.c (host_detect_local_cpu): Likewise.
* i386.c (generic64_memcpy, generic64_memset, generic64_cost): Rename to ..
(generic_memcpy, generic_memset, generic_cost): This one.
(generic32_memcpy, generic32_memset, generic32_cost): Remove.
(m_GENERIC32, m_GENERIC64): Remove.
(m_GENERIC): Turn into one flag.
(processor_target): Unify generic tunnings.
(ix86_option_override_internal): Replace generic32/64 by generic.
(ix86_issue_rate): Likewise.
(ix86_adjust_cost): Likewise.

From-SVN: r202741

10 years agocgraph.c (cgraph_create_edge_1): Avoid uninitialized read of speculative flag.
Jan Hubicka [Thu, 19 Sep 2013 12:20:47 +0000 (14:20 +0200)]
cgraph.c (cgraph_create_edge_1): Avoid uninitialized read of speculative flag.

* cgraph.c (cgraph_create_edge_1): Avoid uninitialized read
of speculative flag.

From-SVN: r202740

10 years agoomp-low.c (expand_omp_sections): Always pass len - 1 to GOMP_sections_start, even...
Jakub Jelinek [Thu, 19 Sep 2013 11:52:52 +0000 (13:52 +0200)]
omp-low.c (expand_omp_sections): Always pass len - 1 to GOMP_sections_start, even if !exit_reachable.

* omp-low.c (expand_omp_sections): Always pass len - 1 to
GOMP_sections_start, even if !exit_reachable.
libgomp/
* testsuite/libgomp.c/sections-2.c: New test.

From-SVN: r202738

10 years agore PR libstdc++/58338 (Add noexcept to functions with a narrow contract)
Marc Glisse [Thu, 19 Sep 2013 11:40:29 +0000 (13:40 +0200)]
re PR libstdc++/58338 (Add noexcept to functions with a narrow contract)

2013-09-19  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/58338
* include/bits/stl_tree.h (_Rb_tree_node_base) [_S_minimum, _S_maximum]:
Mark as noexcept.
(_Rb_tree_iterator) [_Rb_tree_iterator, operator*, operator->,
operator++, operator--, operator==, operator!=]: Likewise.
(_Rb_tree_const_iterator) [_Rb_tree_const_iterator, _M_const_cast,
operator*, operator->, operator++, operator--, operator==, operator!=]:
Likewise.
(operator==(const _Rb_tree_iterator&, const _Rb_tree_const_iterator&),
operator!=(const _Rb_tree_iterator&, const _Rb_tree_const_iterator&)):
Likewise.
(_Rb_tree) [_M_put_node, _M_destroy_node, _M_root, _M_leftmost,
_M_rightmost, _M_begin, _M_end, _S_left, _S_right, _S_minimum,
_S_maximum]: Likewise.
* include/debug/string (basic_string) [basic_string(const _Allocator&),
shrink_to_fit, operator[], pop_back]: Likewise.
* include/ext/vstring.h (__versa_string) [_M_limit, _M_disjunct,
_M_ibegin, _M_iend, __versa_string(const _Alloc&),
operator=(__versa_string&&), shrink_to_fit, operator[], front,
back, assign(__versa_string&&), swap]: Likewise.
(__versa_string) [__versa_string(), __versa_string(const _Alloc&)]:
Merge.

From-SVN: r202737

10 years agoAdd myself to MAINTAINERS file as diagnostics maintainer
Dodji Seketeli [Thu, 19 Sep 2013 07:12:13 +0000 (07:12 +0000)]
Add myself to MAINTAINERS file as diagnostics maintainer

* MAINTAINERS (diagnostic messages): Add myself as diagnostics
maintainer.

From-SVN: r202732

10 years agoDaily bump.
GCC Administrator [Thu, 19 Sep 2013 00:17:01 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r202731

10 years agocompiler: Fix name of unexported method of embedded imported type.
Ian Lance Taylor [Wed, 18 Sep 2013 23:28:00 +0000 (23:28 +0000)]
compiler: Fix name of unexported method of embedded imported type.

Test case is fixedbugs/bug478.go in master testsuite.

From-SVN: r202726

10 years agore PR fortran/57697 ([OOP] Segfault with defined assignment for components during...
Tobias Burnus [Wed, 18 Sep 2013 22:19:03 +0000 (00:19 +0200)]
re PR fortran/57697 ([OOP] Segfault with defined assignment for components during intrinsic assignment)

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

        PR fortran/57697
        * gfortran.dg/defined_assignment_11.f90: New.

From-SVN: r202725

10 years agocompiler: Correctly handle identical unnamed structs with methods.
Ian Lance Taylor [Wed, 18 Sep 2013 21:53:44 +0000 (21:53 +0000)]
compiler: Correctly handle identical unnamed structs with methods.

From-SVN: r202723

10 years agoexpr.c (gfc_check_assign_symbol): Free lvalue.ref.
Tobias Burnus [Wed, 18 Sep 2013 20:52:01 +0000 (22:52 +0200)]
expr.c (gfc_check_assign_symbol): Free lvalue.ref.

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

        * expr.c (gfc_check_assign_symbol): Free lvalue.ref.

From-SVN: r202722

10 years agolra-constraints.c (need_for_all_save_p): Use macro HARD_REGNO_CALL_PART_CLOBBERED.
Vladimir Makarov [Wed, 18 Sep 2013 19:12:16 +0000 (19:12 +0000)]
lra-constraints.c (need_for_all_save_p): Use macro HARD_REGNO_CALL_PART_CLOBBERED.

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

* lra-constraints.c (need_for_all_save_p): Use macro
HARD_REGNO_CALL_PART_CLOBBERED.
* lra-lives.c (check_pseudos_live_through_calls): Use the macro to
set up pseudo conflict hard regs.

From-SVN: r202721

10 years agore PR target/58452 (GCC 4.8 and trunk do not compile simple powerpc-linuxpaired ...
Michael Meissner [Wed, 18 Sep 2013 18:54:06 +0000 (18:54 +0000)]
re PR target/58452 (GCC 4.8 and trunk do not compile simple powerpc-linuxpaired -O3 case)

2013-09-18  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/58452
* config/rs6000/paired.md (movmisalignv2sf): Fix to allow memory
operands.

From-SVN: r202719

10 years agocompiler: Fix type of result of shortcut calculation.
Ian Lance Taylor [Wed, 18 Sep 2013 18:36:21 +0000 (18:36 +0000)]
compiler: Fix type of result of shortcut calculation.

From-SVN: r202717

10 years agore PR libstdc++/58338 (Add noexcept to functions with a narrow contract)
Marc Glisse [Wed, 18 Sep 2013 18:31:01 +0000 (20:31 +0200)]
re PR libstdc++/58338 (Add noexcept to functions with a narrow contract)

2013-09-18  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/58338
* include/bits/stl_iterator.h (__normal_iterator) [__normal_iterator,
_M_const_cast, operator*, operator->, operator++, operator--,
operator[], operator+=, operator+, operator-=, operator-, base]:
Mark as noexcept.
(operator==(const __normal_iterator&, const __normal_iterator&),
operator!=(const __normal_iterator&, const __normal_iterator&),
operator<(const __normal_iterator&, const __normal_iterator&),
operator>(const __normal_iterator&, const __normal_iterator&),
operator<=(const __normal_iterator&, const __normal_iterator&),
operator>=(const __normal_iterator&, const __normal_iterator&),
operator-(const __normal_iterator&, const __normal_iterator&),
operator+(difference_type, const __normal_iterator&)): Likewise.
* include/bits/stl_list.h (list) [splice, _M_check_equal_allocators]:
Likewise.
(list::_M_check_equal_allocators): Abort instead of throwing.
* include/debug/array (array) [operator[], front, back]: Mark as
noexcept.
* include/profile/array (array) [operator[], front, back]: Likewise.
* include/std/array (array) [operator[], front, back]: Likewise.
* include/debug/list (list::splice): Likewise.
* include/profile/list (list::splice): Likewise.
* testsuite/23_containers/list/operations/5.cc: Remove file.
* testsuite/23_containers/list/operations/5.h: Likewise.

From-SVN: r202716

10 years agoAdd missed testsuite/g++.dg/pr58438.C
Vladimir Makarov [Wed, 18 Sep 2013 18:27:49 +0000 (18:27 +0000)]
Add missed testsuite/g++.dg/pr58438.C

From-SVN: r202715

10 years agore PR rtl-optimization/58438 (ICE: in check_rtl, at lra.c:2036)
Vladimir Makarov [Wed, 18 Sep 2013 18:24:49 +0000 (18:24 +0000)]
re PR rtl-optimization/58438 (ICE: in check_rtl, at lra.c:2036)

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

PR rtl-optimization/58438
* lra.c (lra): Clear lra_optional_reload_pseudos in upper loop.
* lra-constraints.c (undo_optional_reloads): Keep optional reloads
from previous subpasses.

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

PR rtl-optimization/58438
* g++.dg/pr58438.C: New test.

From-SVN: r202714

10 years agore PR fortran/43366 ([OOP][F08] Intrinsic assign to polymorphic variable)
Tobias Burnus [Wed, 18 Sep 2013 18:14:57 +0000 (20:14 +0200)]
re PR fortran/43366 ([OOP][F08] Intrinsic assign to polymorphic variable)

2013-09-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/43366
        * primary.c (gfc_variable_attr): Also handle codimension.
        * resolve.c (resolve_ordinary_assign): Add invalid-diagnostic
        * for
        polymorphic assignment.

2013-09-15  Tobias Burnus  <burnus@net-b.de>

        PR fortran/43366
        * gfortran.dg/class_39.f03: Update dg-error.
        * gfortran.dg/class_5.f03: Ditto.
        * gfortran.dg/class_53.f90: Ditto.
        * gfortran.dg/realloc_on_assign_20.f90: New.
        * gfortran.dg/realloc_on_assign_21.f90: New.
        * gfortran.dg/realloc_on_assign_22.f90: New.

From-SVN: r202713

10 years agore PR c++/58457 (ICE when placement new operator is used with using keyword and custo...
Paolo Carlini [Wed, 18 Sep 2013 18:11:46 +0000 (18:11 +0000)]
re PR c++/58457 (ICE when placement new operator is used with using keyword and custom constructor)

/cp
2013-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58457
* class.c (instantiate_type): Loosen a bit the gcc_assert.

/testsuite
2013-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58457
* g++.dg/parse/using4.C: New.

From-SVN: r202711

10 years agoregex.h: Add friend classes.
Tim Shen [Wed, 18 Sep 2013 15:56:20 +0000 (15:56 +0000)]
regex.h: Add friend classes.

2013-09-18  Tim Shen  <timshen91@gmail.com>

* include/bits/regex.h: Add friend classes.
(match_results<>::position, regex_iterator<>::operator++):
Implement position specification in regex_iterator.
(regex_match<>, regex_search<>):
Move match_results initializations to these function. Remove `todo`.
* include/bits/regex_compiler.tcc:
(_Compiler<>::_M_quantifier): Fix greedy/ungreedy of interval matching.
* include/bits/regex_constants.h:
Fix indentation. Change match_flag_type to enum type.
* include/bits/regex_executor.h:
Merge identical code to the base class _Executor.
Support flags in regex_constants.
* include/bits/regex_executor.tcc: Likewise.
* include/bits/regex_scanner.h: Add comments.
* include/bits/regex_scanner.tcc: Same.
* testsuite/28_regex/algorithms/regex_search/ecma/assertion.cc:
Add a testcase.
* testsuite/28_regex/algorithms/regex_search/ecma/flags.cc: New.
* testsuite/28_regex/iterators/regex_iterator/char/
string_position_01.cc: Remove `xfail`.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc:
Remove `xfail` and make the case really work.

From-SVN: r202706

10 years agosearch_n.cc: Fix typo.
Paolo Carlini [Wed, 18 Sep 2013 14:49:28 +0000 (14:49 +0000)]
search_n.cc: Fix typo.

2013-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/performance/25_algorithms/search_n.cc: Fix typo.

From-SVN: r202704

10 years agopr58419.c (b): Change type to signed char.
Kyrylo Tkachov [Wed, 18 Sep 2013 14:01:52 +0000 (14:01 +0000)]
pr58419.c (b): Change type to signed char.

[gcc/testsuite]
2013-09-18  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* gcc.c-torture/execute/pr58419.c (b): Change type to signed char.

From-SVN: r202703

10 years agoarm.c (arm_get_frame_offsets): Validate architecture supports LDRD/STRD before accept...
Richard Earnshaw [Wed, 18 Sep 2013 13:57:27 +0000 (13:57 +0000)]
arm.c (arm_get_frame_offsets): Validate architecture supports LDRD/STRD before accepting the tuning preference.

* arm.c (arm_get_frame_offsets): Validate architecture supports
LDRD/STRD before accepting the tuning preference.
(arm_expand_prologue): Likewise.
(arm_expand_epilogue): Likewise.

From-SVN: r202702

10 years agore PR sanitizer/58443 (ubsan doesn't properly honor fsanitize= flags)
Marek Polacek [Wed, 18 Sep 2013 13:31:34 +0000 (13:31 +0000)]
re PR sanitizer/58443 (ubsan doesn't properly honor fsanitize= flags)

2013-09-18  Marek Polacek  <polacek@redhat.com>

PR sanitize/58443
cp/
* typeck.c (cp_build_binary_op): Properly honor -fsanitize options.
Remove unnecessary check.

c/
* c-typeck.c (build_binary_op): Properly honor -fsanitize options.
Remove unnecessary check.

testsuite/
* g++.dg/ubsan/div-by-zero-1.C: Use the integer-divide-by-zero option
instead of the shift option.
* c-c++-common/ubsan/pr58443-1.c: New test.
* c-c++-common/ubsan/pr58443-3.c: New test.
* c-c++-common/ubsan/pr58443-2.c: New test.

From-SVN: r202701

10 years agore PR tree-optimization/58417 (Incorrect optimization in SCEV const-prop)
Richard Biener [Wed, 18 Sep 2013 12:31:45 +0000 (12:31 +0000)]
re PR tree-optimization/58417 (Incorrect optimization in SCEV const-prop)

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

PR tree-optimization/58417
* tree-chrec.c (chrec_fold_plus_1): Assert that we do not
have chrecs with symbols defined in the loop as operands.
(chrec_fold_multiply): Likewise.
* tree-scalar-evolution.c (interpret_rhs_expr): Instantiate
parameters before folding binary operations.
(struct instantiate_cache_entry_hasher): Remove.
(struct instantiate_cache_type): Use a pointer-map.
(instantiate_cache_type::instantiate_cache_type): New function.
(instantiate_cache_type::get): Likewise.
(instantiate_cache_type::set): Likewise.
(instantiate_cache_type::~instantiate_cache_type): Adjust.
(get_instantiated_value_entry): Likewise.
(global_cache): New global.
(instantiate_scev_r, instantiate_scev_poly, instantiate_scev_binary,
instantiate_array_ref, instantiate_scev_convert, instantiate_scev_3,
instantiate_scev_2, instantiate_scev_1): Do not pass along cache.
(instantiate_scev_name): Adjust.
(instantiate_scev): Construct global instead of local cache.
(resolve_mixers): Likewise.

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

From-SVN: r202700

10 years agore PR libstdc++/58338 (Add noexcept to functions with a narrow contract)
Marc Glisse [Wed, 18 Sep 2013 11:21:51 +0000 (13:21 +0200)]
re PR libstdc++/58338 (Add noexcept to functions with a narrow contract)

2013-09-18  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/58338
* include/bits/list.tcc (_List_base::_M_clear, list::erase): Mark as
noexcept.
* include/bits/stl_list.h (_List_iterator) [_List_iterator,
_M_const_cast, operator*, operator->, operator++, operator--,
operator==, operator!=]: Likewise.
(_List_const_iterator) [_List_const_iterator, _M_const_cast, operator*,
operator->, operator++, operator--, operator==, operator!=]: Likewise.
(operator==(const _List_iterator&, const _List_const_iterator&),
operator!=(const _List_iterator&, const _List_const_iterator&)):
Likewise.
(_List_impl) [_List_impl(const _Node_alloc_type&),
_List_impl(_Node_alloc_type&&)]: Likewise.
(_List_base) [_M_put_node, _List_base(const _Node_alloc_type&),
_List_base(_List_base&&), _M_clear, _M_init]: Likewise.
(list) [list(), list(const allocator_type&)]: Merge.
(list) [list(const allocator_type&), front, back, pop_front, pop_back,
erase, _M_erase]: Mark as noexcept.
* include/debug/list (list) [list(const _Allocator&), front, back,
pop_front, pop_back, _M_erase, erase]: Likewise.
* include/profile/list (list) [list(const _Allocator&), front, back,
pop_front, pop_back, erase]: Likewise.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust line number.
* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r202699

10 years agore PR c++/58458 (ISO 14882 typo in docs)
Daniel Morris [Wed, 18 Sep 2013 11:06:15 +0000 (11:06 +0000)]
re PR c++/58458 (ISO 14882 typo in docs)

2013-09-18  Daniel Morris  <danielm@ecoscentric.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58458
* doc/implement-cxx.texi: Fix references to the C++ standards.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r202696

10 years agore PR ada/58264 (incorrect bounds of string when assigned from dereference of functio...
Eric Botcazou [Wed, 18 Sep 2013 10:51:43 +0000 (10:51 +0000)]
re PR ada/58264 (incorrect bounds of string when assigned from dereference of function result)

PR ada/58264
* gcc-interface/trans.c (Attribute_to_gnu): Define GNAT_PREFIX local
variable and use it throughout.
<Attr_Length>: Note whether the prefix is the dereference of a pointer
to unconstrained array and, in this case, capture the result for both
Attr_First and Attr_Last.

From-SVN: r202694