1. 25 Sep, 2013 14 commits
  2. 24 Sep, 2013 13 commits
    • sh.md: Fix formatting. · e3f02798
      	* config/sh/sh.md: Fix formatting.
      
      From-SVN: r202876
      Oleg Endo committed
    • Implement --param=vect-max-peeling-for-alignment=.. · 4f17aa0b
      From-SVN: r202875
      Xinliang David Li committed
    • Update libvtv to install header files in standard · 114f3eb9
      location rather than top level include dir.
      
      From-SVN: r202873
      Caroline Tice committed
    • target-supports.exp (check_effective_target_arm_cond_exec): New procedure. · aec2eae6
      [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
      Kyrylo Tkachov committed
    • gimple-pretty-print.c: Various whitespace tweaks. · 0498471b
      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
      Christophe Lyon committed
    • re PR middle-end/57134 (ICE with -mstrict-align and inline assembly on ppc64) · 5a8c2b57
      	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
      Alan Modra committed
    • re PR tree-optimization/58513 (*var and MEM[(const int &)var] (var has int*… · f40333af
      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
      Richard Biener committed
    • tree-vrp.c (vrp_finalize): Check for SSA name presence. · 583e8bf5
      2013-09-24  Richard Biener  <rguenther@suse.de>
      
      	* tree-vrp.c (vrp_finalize): Check for SSA name presence.
      
      From-SVN: r202863
      Richard Biener committed
    • re PR libstdc++/58338 (Add noexcept to functions with a narrow contract) · 63ebd8f1
      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
      Marc Glisse committed
    • atomic-comp-swap-release-acquire.c: Adjust expected output. · fae20561
      2013-09-24  Yvan Roux  <yvan.roux@linaro.org>
      
      	* gcc.target/arm/atomic-comp-swap-release-acquire.c: Adjust expected 
      	output.
      
      From-SVN: r202860
      Yvan Roux committed
    • 0;261;0c2013-09-23 Michael Meissner <meissner@linux.vnet.ibm.com> · 19c3e797
      	* 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
      Michael Meissner committed
    • Makefile.am: Add regex.tcc. · c2669da9
      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
      Tim Shen committed
    • Daily bump. · 5704e022
      From-SVN: r202854
      GCC Administrator committed
  3. 23 Sep, 2013 13 commits
    • Fix 58500. · ef436967
      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
      Adam Butcher committed
    • Fix instantiation of implicit function template forward declarations. · 7a9a6e24
      	* 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
      Adam Butcher committed
    • Generate more intuitive name for 'auto' parameters. · 1a4109b6
      	* parser.c (make_generic_type_name): Spell generic type names '<autoN>'
      	rather than '__GenN'.
      
      From-SVN: r202849
      Adam Butcher committed
    • Support nested generic lambdas. · 162b25fa
      	* lambda.c (maybe_add_lambda_conv_op): Don't check for instantiated
      	callop in the case of generic lambdas.
      
      From-SVN: r202848
      Adam Butcher committed
    • Use translation-unit-global rather than parameter-list-local counter for generic… · 707df8ad
      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
      Adam Butcher committed
    • rs6000.h (enum r6000_reg_class_enum): Add new constraints: wu, ww, and wy. · 5e8586d7
      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
      Michael Meissner committed
    • rtl.texi (REG_NOTES): Say that int_list can also be used. · e5af9ddd
      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
      Richard Sandiford committed
    • ipa-cp.c (ipa_get_indirect_edge_target_1): Add sanity check for ipa-devirt. · 450ad0cd
      	* 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
      Jan Hubicka committed
    • snprintf_lite.cc (__concat_size_t): Use unsigned long long conditionally. · dfff7c46
      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
      Paul Pluzhnikov committed
    • tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy assignment statements. · cefce769
      	* tree-ssa-ccp.c (insert_clobber_before_stack_restore): Recurse on copy
      	assignment statements.
      
      From-SVN: r202833
      Eric Botcazou committed
    • Unbreak i386 and other builds where size_t != unsigned long. · 5303f3a4
      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
      Paul Pluzhnikov committed
    • gimple-pretty-print.c (dump_ssaname_info): New function. · a895a2b8
      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
      Kugan Vivekanandarajah committed
    • re PR tree-optimization/58464 (Crashes with SIGSEGV (infinite recursion in phi_translate)) · 984af6ac
      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
      Richard Biener committed