gcc.git
9 years agoFix IPA memory leaks.
Martin Liska [Fri, 17 Apr 2015 13:56:15 +0000 (15:56 +0200)]
Fix IPA memory leaks.

* ipa-cp.c (ipcp_driver): Release prev_edge_clone.
* ipa-icf.c (sem_item_optimizer::subdivide_classes_by_sensitive_refs):
Release symbol_compare_collection.
* ipa-reference.c: Add TODO that a vector should be released.

From-SVN: r222180

9 years agore PR target/65296 ([avr] fix various issues with specs file generation)
Sivanupandi Pitchumani [Fri, 17 Apr 2015 13:54:16 +0000 (13:54 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)

PR target/65296
* config/avr/gen-avr-mmcu-specs.c (*avrlibc_startfile): Adjust
to new AVR-LibC file layout (bug #44574).
(*avrlibc_devicelib): Same.
* config/avr/avr-mcus.def: Adjust comments.
* config/avr/avr.opt (nodevicelib): Adjust help.

From-SVN: r222179

9 years agoHide __cpu_indicator_init/__cpu_model from linker
H.J. Lu [Fri, 17 Apr 2015 12:58:07 +0000 (12:58 +0000)]
Hide __cpu_indicator_init/__cpu_model from linker

We shouldn't call external function, __cpu_indicator_init, while an object
is being relocated since its .got.plt section hasn't been updated.  It
works for non-PIE since no update on .got.plt section is required.  This
patch creates libgcc.so as a linker script, hides __cpu_indicator_init
and __cpu_model in libgcc.so.1 from linker, forces linker to resolve
__cpu_indicator_init and __cpu_model to their hidden definitions in
libgcc.a while providing backward binary compatibility.

gcc/testsuite/

PR target/65612
* g++.dg/ext/mv18.C: New test.
* g++.dg/ext/mv19.C: Likewise.
* g++.dg/ext/mv20.C: Likewise.
* g++.dg/ext/mv21.C: Likewise.
* g++.dg/ext/mv22.C: Likewise.
* g++.dg/ext/mv23.C: Likewise.

libgcc/

PR target/65612
* config.host (tmake_file): Add t-slibgcc-libgcc for Linux/x86.
* config/i386/cpuinfo.c (__cpu_model): Initialize.
(__cpu_indicator_init@GCC_4.8.0): New.
(__cpu_model@GCC_4.8.0): Likewise.
* config/i386/t-linux (HOST_LIBGCC2_CFLAGS): Add
-DUSE_ELF_SYMVER.

From-SVN: r222178

9 years agoarm_neon.h (vdup_n_f32): Remove forward declaration.
Alan Lawrence [Fri, 17 Apr 2015 12:56:45 +0000 (12:56 +0000)]
arm_neon.h (vdup_n_f32): Remove forward declaration.

        * config/aarch64/arm_neon.h (vdup_n_f32): Remove forward declaration.

From-SVN: r222177

9 years agore PR c++/64527 (Constructor for empty struct not called in some situations)
Patrick Palka [Fri, 17 Apr 2015 12:14:24 +0000 (12:14 +0000)]
re PR c++/64527 (Constructor for empty struct not called in some situations)

Fix PR c++/64527

gcc/
PR c++/64527
* gimplify.c (gimplify_init_constructor): Always emit a
side-effecting constructor.

gcc/testsuite/
PR c++/64527
* g++.dg/init/pr64527.C: New test.

From-SVN: r222176

9 years agoAdd missing PR lines in ChangeLog
Tom de Vries [Fri, 17 Apr 2015 09:47:10 +0000 (09:47 +0000)]
Add missing PR lines in ChangeLog

From-SVN: r222175

9 years agoSet PROP_gimple_lva for functions without IFN_VA_ARG
Tom de Vries [Fri, 17 Apr 2015 09:27:08 +0000 (09:27 +0000)]
Set PROP_gimple_lva for functions without IFN_VA_ARG

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* gimplify.c (gimplify_function_tree): Tentatively set PROP_gimple_lva
in cfun->curr_properties.
(gimplify_va_arg_expr): Clear PROP_gimple_lva in cfun->curr_properties
if we generate an IFN_VA_ARG.
* tree-inline.c (expand_call_inline): Reset PROP_gimple_lva in dest
function if PROP_gimple_lva is not set in src function.

From-SVN: r222174

9 years agoPostpone expanding va_arg until pass_stdarg
Tom de Vries [Fri, 17 Apr 2015 09:26:59 +0000 (09:26 +0000)]
Postpone expanding va_arg until pass_stdarg

2015-04-17  Tom de Vries  <tom@codesourcery.com>
    Michael Matz  <matz@suse.de>

* gimple-iterator.c (update_modified_stmts): Remove static.
* gimple-iterator.h (update_modified_stmts): Declare.
* gimplify.c (gimplify_modify_expr): Handle IFN_VA_ARG.
(gimplify_va_arg_internal): New function.
(gimplify_va_arg_expr): Use IFN_VA_ARG.
* gimplify.h (gimplify_va_arg_internal): Declare.
* internal-fn.c (expand_VA_ARG): New unreachable function.
* internal-fn.def (VA_ARG): New DEF_INTERNAL_FN.
* tree-stdarg.c (gimple_call_ifn_va_arg_p, expand_ifn_va_arg_1)
(expand_ifn_va_arg): New function.
(pass_data_stdarg): Add PROP_gimple_lva to properties_provided field.
(pass_stdarg::execute): Call expand_ifn_va_arg.
(pass_data_lower_vaarg): New pass_data.
(pass_lower_vaarg): New gimple_opt_pass.
(pass_lower_vaarg::gate, pass_lower_vaarg::execute)
(make_pass_lower_vaarg): New function.
* cfgexpand.c (pass_data_expand): Add PROP_gimple_lva to
properties_required field.
* passes.def (all_passes): Add pass_lower_vaarg.
* tree-pass.h (PROP_gimple_lva): Add define.
(make_pass_lower_vaarg): Declare.

* gcc.dg/tree-ssa/stdarg-2.c: Change f15 scan-tree-dump for target
x86_64-*-*.

Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r222173

9 years agoHandle internal_fn in operand_equal_p
Tom de Vries [Fri, 17 Apr 2015 09:26:50 +0000 (09:26 +0000)]
Handle internal_fn in operand_equal_p

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* fold-const.c (operand_equal_p): Handle INTERNAL_FNs.
* calls.c (call_expr_flags): Same.

From-SVN: r222172

9 years agoFactor optimize_va_list_gpr_fpr_size out of pass_stdarg::execute
Tom de Vries [Fri, 17 Apr 2015 09:26:41 +0000 (09:26 +0000)]
Factor optimize_va_list_gpr_fpr_size out of pass_stdarg::execute

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* tree-stdarg.c (optimize_va_list_gpr_fpr_size): Factor out of ...
(pass_stdarg::execute): ... here.

From-SVN: r222171

9 years agoAdd gimple_find_sub_bbs
Tom de Vries [Fri, 17 Apr 2015 09:26:33 +0000 (09:26 +0000)]
Add gimple_find_sub_bbs

2015-04-17  Tom de Vries  <tom@codesourcery.com>
    Michael Matz  <matz@suse.de>

* tree-cfg.c (make_blocks_1): Factor out of ...
(make_blocks): ... here.
(make_edges_bb): Factor out of ...
(make_edges): ... here.
(gimple_find_sub_bbs): New function.
* tree-cfg.h (gimple_find_sub_bbs): Declare.

Co-Authored-By: Michael Matz <matz@suse.de>
From-SVN: r222170

9 years agoDisable lang_hooks.gimplify_expr in free_lang_data
Tom de Vries [Fri, 17 Apr 2015 09:26:24 +0000 (09:26 +0000)]
Disable lang_hooks.gimplify_expr in free_lang_data

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* tree.c (free_lang_data): Disable lang_hooks.gimplify_expr.

From-SVN: r222169

9 years agoasan.c (set_sanitized_sections): New function.
Yury Gribov [Fri, 17 Apr 2015 07:51:02 +0000 (07:51 +0000)]
asan.c (set_sanitized_sections): New function.

2015-04-17  Yury Gribov  <y.gribov@samsung.com>

gcc/
* asan.c (set_sanitized_sections): New function.
(section_sanitized_p): Ditto.
(asan_protect_global): Optionally sanitize user-defined
sections.
* asan.h (set_sanitized_sections): Declare new function.
* common.opt (fsanitize-sections): New option.
* doc/invoke.texi (-fsanitize-sections): Document new option.
* opts-global.c (handle_common_deferred_options): Handle new
option.

gcc/testsuite/
* c-c++-common/asan/user-section-1.c: New test.

From-SVN: r222168

9 years agore PR debug/65771 (ICE (in loc_list_from_tree, at dwarf2out.c:14964) on arm-linux...
Jakub Jelinek [Fri, 17 Apr 2015 07:44:30 +0000 (09:44 +0200)]
re PR debug/65771 (ICE (in loc_list_from_tree, at dwarf2out.c:14964) on arm-linux-gnueabihf)

PR debug/65771
* dwarf2out.c (loc_list_from_tree): Return NULL
for DEBUG_EXPR_DECL.

* gcc.dg/debug/pr65771.c: New test.

From-SVN: r222166

9 years agoipa-inline.c (can_inline_edge_p): Allow inlining of functions with same attributes.
Christian Bruel [Fri, 17 Apr 2015 06:50:08 +0000 (08:50 +0200)]
ipa-inline.c (can_inline_edge_p): Allow inlining of functions with same attributes.

* ipa-inline.c (can_inline_edge_p): Allow inlining of functions with
same attributes.

From-SVN: r222165

9 years agoDaily bump.
GCC Administrator [Fri, 17 Apr 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222164

9 years agoclass.c (resolve_address_of_overloaded_function, [...]): Rename tsubst_flags_t parame...
Paolo Carlini [Thu, 16 Apr 2015 20:57:46 +0000 (20:57 +0000)]
class.c (resolve_address_of_overloaded_function, [...]): Rename tsubst_flags_t parameter flags -> complain.

2015-04-16  Paolo Carlini  <paolo.carlini@oracle.com>

* class.c (resolve_address_of_overloaded_function, instantiate_type):
Rename tsubst_flags_t parameter flags -> complain.

From-SVN: r222159

9 years agoira-color.c (setup_left_conflict_sizes_p): Do not process node itself when computing...
Zhouyi Zhou [Thu, 16 Apr 2015 20:02:01 +0000 (20:02 +0000)]
ira-color.c (setup_left_conflict_sizes_p): Do not process node itself when computing left conflict subnode size.

       * ira-color.c (setup_left_conflict_sizes_p): Do not process
        node itself when computing left conflict subnode size.

From-SVN: r222157

9 years agopredicates.md (register_mixssei387nonimm_operand): New.
Uros Bizjak [Thu, 16 Apr 2015 18:50:59 +0000 (20:50 +0200)]
predicates.md (register_mixssei387nonimm_operand): New.

* config/i386/predicates.md (register_mixssei387nonimm_operand): New.
* config/i386/i386.md (*fop_<mode>_1_mixed): Merge with
*fop_<mode>_1_sse using enabled attribute.  Use
register_mixssei387nonimm_operand operand 1 predicate. Change
alternative 3 constraints from "x" to "v".

From-SVN: r222154

9 years agoReplace __buitlin_alloca with __builtin_alloca
H.J. Lu [Thu, 16 Apr 2015 15:34:11 +0000 (15:34 +0000)]
Replace __buitlin_alloca with __builtin_alloca

* gcc.target/i386/mpx/alloca-1-lbv.c (mpx_test): Replace
__buitlin_alloca with __builtin_alloca.

From-SVN: r222151

9 years agocall.c (build_op_delete_call, [...]): Check mark_used return value.
Paolo Carlini [Thu, 16 Apr 2015 15:12:10 +0000 (15:12 +0000)]
call.c (build_op_delete_call, [...]): Check mark_used return value.

2015-04-16  Paolo Carlini  <paolo.carlini@oracle.com>

* call.c (build_op_delete_call, build_over_call): Check mark_used
return value.
* class.c (resolve_address_of_overloaded_function): Likewise.
* decl.c (cxx_maybe_build_cleanup): Likewise.
* pt.c (gen_elem_of_pack_expansion_instantiation, tsubst_baselink,
tsubst_qualified_id, tsubst_copy, tsubst_copy_and_build): Likewise.
* rtti.c (build_dynamic_cast_1): Likewise.
* semantics.c (process_outer_var_ref): Likewise.
* typeck.c (build_class_member_access_expr,
cp_build_function_call_vec, cp_build_addr_expr_1): Likewise.

From-SVN: r222150

9 years ago[AArch64 Testsuite] Fix comments in vldN_lane_1.c
Alan Lawrence [Thu, 16 Apr 2015 12:25:34 +0000 (12:25 +0000)]
[AArch64 Testsuite] Fix comments in vldN_lane_1.c

        * gcc.target/aarch64/vldN_lane_1.c: Correct dup->lane in comments.

From-SVN: r222148

9 years agore PR tree-optimization/65774 (FAIL: gcc.dg/builtin-arith-overflow-1.c (internal...
Richard Biener [Thu, 16 Apr 2015 12:10:34 +0000 (12:10 +0000)]
re PR tree-optimization/65774 (FAIL: gcc.dg/builtin-arith-overflow-1.c (internal compiler error))

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

PR tree-optimization/65774
* tree-ssa-ccp.c (evaluate_stmt): Constrain types we invoke
bit-value tracking on.

From-SVN: r222147

9 years agore PR tree-optimization/64277 (Incorrect warning "array subscript is above array...
Richard Biener [Thu, 16 Apr 2015 12:03:11 +0000 (12:03 +0000)]
re PR tree-optimization/64277 (Incorrect warning "array subscript is above array bounds")

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

PR tree-optimization/64277
* tree-vrp.c (check_array_ref): Fix anti-range handling,
simplify upper bound handling.
(search_for_addr_array): Simplify.
(check_array_bounds): Handle ADDR_EXPRs here.
(check_all_array_refs): Simplify.

* gcc.dg/Warray-bounds-14.c: New testcase.
* gcc.dg/Warray-bounds-15.c: Likewise.
* c-c++-common/ubsan/bounds-4.c: Disable -Warray-bounds.
* c-c++-common/ubsan/bounds-6.c: Likewise.

From-SVN: r222146

9 years agoi386.c (print_reg): Rewrite function.
Uros Bizjak [Thu, 16 Apr 2015 11:39:53 +0000 (13:39 +0200)]
i386.c (print_reg): Rewrite function.

* config/i386/i386.c (print_reg): Rewrite function.

From-SVN: r222145

9 years agoS/390: Fix ira cost multiplier
Andreas Krebbel [Thu, 16 Apr 2015 11:29:28 +0000 (11:29 +0000)]
S/390: Fix ira cost multiplier

* config/s390/s390.h (IRA_HARD_REGNO_ADD_COST_MULTIPLIER):
Invert the condition.

From-SVN: r222144

9 years ago[PATCH]Enable two UNSIGNED_FLOAT simplifications in simplify_unary_operation_1.
Renlin Li [Thu, 16 Apr 2015 08:36:21 +0000 (08:36 +0000)]
[PATCH]Enable two UNSIGNED_FLOAT simplifications in simplify_unary_operation_1.

gcc/

2015-04-16  Renlin Li  <renlin.li@arm.com>

* simplify-rtx.c (simplify_unary_operation_1): Fix a typo. Enable two
simplifications for UNSIGNEDED_FLOAT.

gcc/testsuite/

2015-04-16  Renlin Li  <renlin.li@arm.com>

* gcc.target/aarch64/unsigned-float.c: New.
* gcc.target/arm/unsigned-float.c: New.

From-SVN: r222143

9 years agorl78-opts.h (enum rl78_mul_types): Add MUL_G14 and MUL_UNINIT.
Nick Clifton [Thu, 16 Apr 2015 07:57:56 +0000 (07:57 +0000)]
rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and MUL_UNINIT.

  * config/rl78/rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and
  MUL_UNINIT.
  (enum rl78_cpu_type): New.
  * config/rl78/rl78-virt.md (attr valloc): Add divhi and divsi.
  (umulhi3_shift_virt): Remove m constraint from operand 1.
  (umulqihi3_virt): Likewise.
  * config/rl78/rl78.c (rl78_option_override): Add code to process
  -mcpu and -mmul options.
  (rl78_alloc_physical_registers): Add code to handle divhi and
  divsi valloc attributes.
  (set_origin): Likewise.
  * config/rl78/rl78.h (RL78_MUL_G14): Define.
  (TARGET_G10, TARGET_G13, TARGET_G14): Define.
  (TARGET_CPU_CPP_BUILTINS): Define __RL78_MUL_xxx__ and
  __RL78_Gxx__.
  (ASM_SPEC): Pass -mcpu on to assembler.
  * config/rl78/rl78.md (mulqi3): Add a clobber of AX.
  (mulqi3_rl78): Likewise.
  (mulhi3_g13): Likewise.
  (mulhi3): Generate the G13 or G14 versions of the insn directly.
  (mulsi3): Likewise.
  (mulhi3_g14): Add clobbers of AX and BC.
  (mulsi3_g14): Likewise.
  (mulsi3_g13): Likewise.
  (udivmodhi4, udivmodhi4_g14, udivmodsi4): New patterns.
  (udivmodsi4_g14, udivmodsi4_g13): New patterns.
  * config/rl78/rl78.opt (mmul): Initialise value to
  RL78_MUL_UNINIT.
  (mcpu): New option.
  (m13, m14, mrl78): New option aliases.
  * config/rl78/t-rl78 (MULTILIB_OPTIONS): Add mg13 and mg14.
  (MULTILIB_DIRNAMES): Add g13 and g14.
  * doc/invoke.texi: Document -mcpu and -mmul options.

  * config/rl78/divmodhi.S: Add G14 and G13 versions of the __divhi3
  and __modhi3 functions.
* config/rl78/divmodso.S: Add G14 and G13 versions of the
  __divsi3, __udivsi3, __modsi3 and __umodsi3 functions.

From-SVN: r222142

9 years agotree-ssa-ccp.c (likely_value): See if we have operands that are marked as never simul...
Richard Biener [Thu, 16 Apr 2015 07:55:57 +0000 (07:55 +0000)]
tree-ssa-ccp.c (likely_value): See if we have operands that are marked as never simulate again and return...

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

* tree-ssa-ccp.c (likely_value): See if we have operands that
are marked as never simulate again and return CONSTANT in this
case.
* tree-ssa-propagate.c (simulate_stmt): Mark stmts that do
not have any operands that will be simulated again as
not being simulated again.

* gcc.dg/tree-ssa/ssa-ccp-36.c: New testcase.
* gcc.dg/tree-ssa/pr37508.c: Adjust.
* gfortran.dg/reassoc_6.f: Remove XFAIL.

From-SVN: r222141

9 years agoDaily bump.
GCC Administrator [Thu, 16 Apr 2015 00:16:21 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222140

9 years agoconstexpr.c (cxx_eval_store_expression): Ignore clobbers.
Jason Merrill [Wed, 15 Apr 2015 21:17:29 +0000 (17:17 -0400)]
constexpr.c (cxx_eval_store_expression): Ignore clobbers.

* constexpr.c (cxx_eval_store_expression): Ignore clobbers.
(build_constexpr_constructor_member_initializers): Loop to find
the BIND_EXPR.
* decl.c (start_preparsed_function): Clobber the object at the
beginning of a constructor.

From-SVN: r222135

9 years agodecl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
Jason Merrill [Wed, 15 Apr 2015 21:17:21 +0000 (17:17 -0400)]
decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.

* decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
* method.c (implicitly_declare_fn): Likewise.
* decl2.c (vague_linkage_p): Check TREE_PUBLIC first.

From-SVN: r222134

9 years ago* decl2.c (determine_visibility): Use get_template_info.
Jason Merrill [Wed, 15 Apr 2015 21:17:15 +0000 (17:17 -0400)]
* decl2.c (determine_visibility): Use get_template_info.

From-SVN: r222133

9 years agore PR c++/65727 (Segfault With Decltype In Lambda Expression Used To Initialize Stati...
Jason Merrill [Wed, 15 Apr 2015 21:17:03 +0000 (17:17 -0400)]
re PR c++/65727 (Segfault With Decltype In Lambda Expression Used To Initialize Static Class Member)

PR c++/65727
* lambda.c (lambda_expr_this_capture): In unevaluated context go
through the normal loop, just don't capture.
(maybe_resolve_dummy): Handle null return.

Co-Authored-By: Marek Polacek <polacek@redhat.com>
From-SVN: r222132

9 years agoi386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed): Merge with *cmpi<FPCMP:unord><MODEF...
Uros Bizjak [Wed, 15 Apr 2015 19:32:07 +0000 (21:32 +0200)]
i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed): Merge with *cmpi<FPCMP:unord><MODEF:mode>_sse using enabled attribute.

* config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed):
Merge with *cmpi<FPCMP:unord><MODEF:mode>_sse using enabled attribute.
(*extendsfdf2_mixed): Merge with *extendsfdf2_sse using enabled
attribute.
(*truncdfsf_fast_mixed): Merge with *truncdfsf_fast_sse using
enabled attribute.
(*float<SWI48:mode><MODEF:mode>2_mixed): Rename from
*float<SWI48:mode><MODEF:mode>2_sse.
(*absneg<mode>2_mixed): Merge with *absneg<mode>2_sse using
enabled attribute.
(*fop_<mode>_comm_mixed): Merge with *fop_<mode>_comm_sse using
enabled attribute.

From-SVN: r222131

9 years agore PR tree-optimization/47679 (Strange uninitialized warning after SRA)
Jeff Law [Wed, 15 Apr 2015 18:51:49 +0000 (12:51 -0600)]
re PR tree-optimization/47679 (Strange uninitialized warning after SRA)

PR tree-optimization/47679
* tree-ssa-dom.c (build_and_record_new_cond): Moved to avoid
need for forward declaration in upcoming changes.
(record_conditions, record_edge_info): Likewise.

From-SVN: r222130

9 years agoFix fdump-passes
Tom de Vries [Wed, 15 Apr 2015 18:43:32 +0000 (18:43 +0000)]
Fix fdump-passes

2015-04-15  Tom de Vries  <tom@codesourcery.com>

PR other/65487
* function.c (push_dummy_function): New function.
(init_dummy_function_start): Use push_dummy_function.
(pop_dummy_function): New function.  Factored out of ...
(expand_dummy_function_end): ... here.
* function.h (push_dummy_function, pop_dummy_function): Declare.
* passes.c (pass_manager::dump_passes): Use push_dummy_function and
pop_dummy_function.
* tree-chkp.c (chkp_gate): Handle cgraph_node::get (cfun->decl) == NULL.

From-SVN: r222129

9 years agocall.c (enforce_access): Emit error + inform.
Paolo Carlini [Wed, 15 Apr 2015 17:18:27 +0000 (17:18 +0000)]
call.c (enforce_access): Emit error + inform.

/cp
2015-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

* call.c (enforce_access): Emit error + inform.

/testsuite
2015-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/alias-decl-22.C: Adjust for error + inform change.
* g++.dg/cpp0x/decltype-call1.C: Likewise.
* g++.dg/cpp0x/defaulted21.C: Likewise.
* g++.dg/cpp0x/defaulted28.C: Likewise.
* g++.dg/cpp0x/defaulted47.C: Likewise.
* g++.dg/cpp0x/elision_neg.C: Likewise.
* g++.dg/cpp0x/fntmpdefarg3.C: Likewise.
* g++.dg/cpp0x/implicit-trivial1.C: Likewise.
* g++.dg/cpp0x/implicit1.C: Likewise.
* g++.dg/cpp0x/implicit9.C: Likewise.
* g++.dg/cpp0x/inh-ctor9.C: Likewise.
* g++.dg/cpp0x/range-for13.C: Likewise.
* g++.dg/gomp/clause-2.C: Likewise.
* g++.dg/gomp/udr-5.C: Likewise.
* g++.dg/inherit/access6.C: Likewise.
* g++.dg/lookup/duperr1.C: Likewise.
* g++.dg/lookup/friend2.C: Likewise.
* g++.dg/lookup/pr6936.C: Likewise.
* g++.dg/lookup/scoped1.C: Likewise.
* g++.dg/lookup/using26.C: Likewise.
* g++.dg/lookup/using38.C: Likewise.
* g++.dg/other/access2.C: Likewise.
* g++.dg/overload/defarg3.C: Likewise.
* g++.dg/overload/defarg6.C: Likewise.
* g++.dg/parse/access11.C: Likewise.
* g++.dg/parse/access2.C: Likewise.
* g++.dg/parse/access3.C: Likewise.
* g++.dg/parse/access4.C: Likewise.
* g++.dg/parse/access5.C: Likewise.
* g++.dg/parse/access6.C: Likewise.
* g++.dg/parse/access8.C: Likewise.
* g++.dg/parse/access9.C: Likewise.
* g++.dg/parse/crash40.C: Likewise.
* g++.dg/tc1/dr142.C: Likewise.
* g++.dg/tc1/dr166.C: Likewise.
* g++.dg/tc1/dr52.C: Likewise.
* g++.dg/template/access11.C: Likewise.
* g++.dg/template/access18.C: Likewise.
* g++.dg/template/access19.C: Likewise.
* g++.dg/template/access2.C: Likewise.
* g++.dg/template/access20.C: Likewise.
* g++.dg/template/access26.C: Likewise.
* g++.dg/template/access3.C: Likewise.
* g++.dg/template/access7.C: Likewise.
* g++.dg/template/conv12.C: Likewise.
* g++.dg/template/crash69.C: Likewise.
* g++.dg/template/friend31.C: Likewise.
* g++.dg/template/friend32.C: Likewise.
* g++.dg/template/memfriend15.C: Likewise.
* g++.dg/template/memfriend16.C: Likewise.
* g++.dg/template/memfriend17.C: Likewise.
* g++.dg/template/memfriend7.C: Likewise.
* g++.dg/template/pr32519.C: Likewise.
* g++.dg/template/qualttp21.C: Likewise.
* g++.dg/template/qualttp8.C: Likewise.
* g++.dg/template/ttp10.C: Likewise.
* g++.dg/template/typedef11.C: Likewise.
* g++.dg/template/typedef13.C: Likewise.
* g++.dg/template/typedef19.C: Likewise.
* g++.dg/template/typedef20.C: Likewise.
* g++.dg/template/typedef22.C: Likewise.
* g++.dg/template/using16.C: Likewise.
* g++.dg/template/virtual3.C: Likewise.
* g++.dg/ubsan/pr61272.C: Likewise.
* g++.old-deja/g++.bob/inherit2.C: Likewise.
* g++.old-deja/g++.brendan/crash11.C: Likewise.
* g++.old-deja/g++.brendan/enum6.C: Likewise.
* g++.old-deja/g++.brendan/visibility1.C: Likewise.
* g++.old-deja/g++.brendan/visibility10.C: Likewise.
* g++.old-deja/g++.brendan/visibility2.C: Likewise.
* g++.old-deja/g++.brendan/visibility6.C: Likewise.
* g++.old-deja/g++.brendan/visibility7.C: Likewise.
* g++.old-deja/g++.brendan/visibility8.C: Likewise.
* g++.old-deja/g++.brendan/visibility9.C: Likewise.
* g++.old-deja/g++.bugs/900428_03.C: Likewise.
* g++.old-deja/g++.jason/access17.C: Likewise.
* g++.old-deja/g++.jason/access18.C: Likewise.
* g++.old-deja/g++.jason/access22.C: Likewise.
* g++.old-deja/g++.jason/access23.C: Likewise.
* g++.old-deja/g++.jason/access8.C: Likewise.
* g++.old-deja/g++.jason/delete3.C: Likewise.
* g++.old-deja/g++.jason/report.C: Likewise.
* g++.old-deja/g++.law/access2.C: Likewise.
* g++.old-deja/g++.law/access3.C: Likewise.
* g++.old-deja/g++.law/access4.C: Likewise.
* g++.old-deja/g++.law/access5.C: Likewise.
* g++.old-deja/g++.law/arm12.C: Likewise.
* g++.old-deja/g++.law/arm14.C: Likewise.
* g++.old-deja/g++.law/ctors13.C: Likewise.
* g++.old-deja/g++.law/union2.C: Likewise.
* g++.old-deja/g++.law/visibility12.C: Likewise.
* g++.old-deja/g++.law/visibility15.C: Likewise.
* g++.old-deja/g++.law/visibility16.C: Likewise.
* g++.old-deja/g++.law/visibility17.C: Likewise.
* g++.old-deja/g++.law/visibility18.C: Likewise.
* g++.old-deja/g++.law/visibility19.C: Likewise.
* g++.old-deja/g++.law/visibility20.C: Likewise.
* g++.old-deja/g++.law/visibility21.C: Likewise.
* g++.old-deja/g++.law/visibility24.C: Likewise.
* g++.old-deja/g++.law/visibility4.C: Likewise.
* g++.old-deja/g++.law/visibility5.C: Likewise.
* g++.old-deja/g++.law/visibility6.C: Likewise.
* g++.old-deja/g++.law/visibility7.C: Likewise.
* g++.old-deja/g++.law/visibility8.C: Likewise.
* g++.old-deja/g++.law/visibility9.C: Likewise.
* g++.old-deja/g++.niklas/t135.C: Likewise.
* g++.old-deja/g++.oliva/delete1.C: Likewise.
* g++.old-deja/g++.oliva/partord1.C: Likewise.
* g++.old-deja/g++.other/access11.C: Likewise.
* g++.old-deja/g++.other/access4.C: Likewise.
* g++.old-deja/g++.other/access7.C: Likewise.
* g++.old-deja/g++.other/crash1.C: Likewise.
* g++.old-deja/g++.other/crash7.C: Likewise.
* g++.old-deja/g++.other/friend1.C: Likewise.
* g++.old-deja/g++.other/friend4.C: Likewise.
* g++.old-deja/g++.other/friend9.C: Likewise.
* g++.old-deja/g++.other/lineno1.C: Likewise.
* g++.old-deja/g++.other/using1.C: Likewise.
* g++.old-deja/g++.pt/enum14.C: Likewise.
* g++.old-deja/g++.pt/friend11.C: Likewise.
* g++.old-deja/g++.pt/friend21.C: Likewise.
* g++.old-deja/g++.pt/friend3.C: Likewise.
* g++.old-deja/g++.pt/inherit2.C: Likewise.
* g++.old-deja/g++.pt/memtemp74.C: Likewise.
* g++.old-deja/g++.pt/memtemp89.C: Likewise.
* g++.old-deja/g++.robertl/eb94.C: Likewise.

From-SVN: r222128

9 years agogthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Use empty do-while loop as macro body...
Chen Gang [Wed, 15 Apr 2015 15:29:12 +0000 (15:29 +0000)]
gthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Use empty do-while loop as macro body to avoid warnings.

2015-04-15  Chen Gang  <gang.chen.5i5j@gmail.com>

       * gthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Use empty
       do-while loop as macro body to avoid warnings.

From-SVN: r222127

9 years agoconstexpr.c (use_new_call): Remove #define.
Marek Polacek [Wed, 15 Apr 2015 14:46:22 +0000 (14:46 +0000)]
constexpr.c (use_new_call): Remove #define.

* constexpr.c (use_new_call): Remove #define.
(lookup_parameter_binding): Remove function.
(cxx_bind_parameters_in_call): Remove unused code.
(cxx_eval_call_expression): Likewise.
(cxx_eval_constant_expression): Likewise.

From-SVN: r222126

9 years agore PR rtl-optimization/42522 ((zero_extract:SI (mem:QI) ...) misoptimized)
Jeff Law [Wed, 15 Apr 2015 12:24:28 +0000 (06:24 -0600)]
re PR rtl-optimization/42522 ((zero_extract:SI (mem:QI) ...) misoptimized)

        PR rtl-optimization/42522
        * cse.c (fold_rtx): Try to simplify a ZERO_EXTRACT or
        SIGN_EXTRACT as a whole object rather than simplifying
        its operand.

From-SVN: r222125

9 years agore PR ipa/65765 (Compiling Firefox with GCC 5 leads to broken javascript engine on...
Jakub Jelinek [Wed, 15 Apr 2015 11:47:44 +0000 (13:47 +0200)]
re PR ipa/65765 (Compiling Firefox with GCC 5 leads to broken javascript engine on x86-64)

PR ipa/65765
* ipa-icf-gimple.c (func_checker::compare_bb): For GIMPLE_NOP
and GIMPLE_PREDICT use break instead of return true. For
GIMPLE_EH_DISPATCH, compare dispatch region.

* g++.dg/ipa/pr65765.C: New test.

From-SVN: r222123

9 years agore PR bootstrap/65763 (tm.h: No such file or directory)
Andreas Schwab [Wed, 15 Apr 2015 09:23:59 +0000 (09:23 +0000)]
re PR bootstrap/65763 (tm.h: No such file or directory)

PR bootstrap/65763
* Makefile.am (gcc_build_dir): Remove $(host_subdir)/ part.
* Makefile.in: Regenerated.

From-SVN: r222121

9 years agoextend.texi (__sync Builtins): Simplify some text.
Matthew Wahab [Wed, 15 Apr 2015 08:35:53 +0000 (08:35 +0000)]
extend.texi (__sync Builtins): Simplify some text.

* doc/extend.texi (__sync Builtins): Simplify some text.  Update
details about the implementation.  Make clear preference for
__atomic builtins.  Reduce possibility of future change.

From-SVN: r222120

9 years agoIgnore elfdump warnings in scripts/extract_symvers.pl
Rainer Orth [Wed, 15 Apr 2015 07:48:59 +0000 (07:48 +0000)]
Ignore elfdump warnings in scripts/extract_symvers.pl

* scripts/extract_symvers.pl: Ignore elfdump error output.

From-SVN: r222117

9 years agorx.opt (mallow-string-insns): New option.
Nick Clifton [Wed, 15 Apr 2015 07:41:07 +0000 (07:41 +0000)]
rx.opt (mallow-string-insns): New option.

* config/rx/rx.opt (mallow-string-insns): New option.
* config/rx/rx.c (RX_BUILTIN_RMPA): Disable the use of this
builtin if string instructions are denied.
* config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Define
__RX_ALLOW_STRING_INSNS__ or __RX_DISALLOW_STRING_INSNS__, as
appropriate.
(ASM_SPEC): Pass -mno-allow-string-insns on to the assembler.
* config/rx/rx.md (movstr): Enable pattern only if string
instructions are allowed.
(rx_movstr, rx_strend, movmemsi, rx_movmem): Likewise.
(cmpstrnsi, cmpstrsi, rx_cmpstrn, rmpa): Likewise.
* config/rx/t-rx (MULTILIB_OPTIONS): Add mno-allow-string-insns.
(MULTILIB_DIRNAMES): Add no-strings.
* doc/invoke.texi: Document -mno-allow-string-insns.

* gcc.target/rx/builtins.c: Disable RMPA test if string
instructions are not allowed.

From-SVN: r222116

9 years agore PR target/65408 (powerpc64 function argument passing may access invalid memory)
Alan Modra [Wed, 15 Apr 2015 07:29:01 +0000 (16:59 +0930)]
re PR target/65408 (powerpc64 function argument passing may access invalid memory)

PR target/65408
PR target/58744
PR middle-end/36043
* calls.c (load_register_parameters): Don't load past end of
mem unless suitably aligned.

From-SVN: r222115

9 years agorl78.c (rl78_expand_prologue): Mark large stack decrement instruction as being frame...
Nick Clifton [Wed, 15 Apr 2015 07:24:44 +0000 (07:24 +0000)]
rl78.c (rl78_expand_prologue): Mark large stack decrement instruction as being frame related.

* config/rl78/rl78.c (rl78_expand_prologue): Mark large stack
decrement instruction as being frame related.
(rl78_print_operand_1): Handle 'p' modifier to add +0 to HL
based addresses.
If zero extending a function address enclose the operation in
%code(...).
(rl78_preferred_reload_class): New function.
(TARGET_PREFERRED_RELOAD_CLASS): Define.
* config/rl78/rl78.md: Remove useless constraints in expanders.
(mulqi3_rl78): Remove + qualifier on input-only operand 1.
(mulhi3_rl78): Likewise.
(mulhi3_g13): Likewise.
(mulsi3_rl78): Likewise.
(es_addr): Move to before the multiply patterns.

From-SVN: r222114

9 years agofunction.h (struct emit_status): Delete x_first_insn, x_last_insn and sequence_stack.
Alan Modra [Wed, 15 Apr 2015 06:05:44 +0000 (15:35 +0930)]
function.h (struct emit_status): Delete x_first_insn, x_last_insn and sequence_stack.

* function.h (struct emit_status): Delete x_first_insn, x_last_insn
and sequence_stack.  Add seq.
(seq_stack): Delete.
* function.c (prepare_function_start): Don't access x_last_insn.
* emit-rtl.h (get_current_sequence, get_topmost_sequence): New.
(get_insns, set_first_insn, get_last_insn, set_last_insn): Use them.
* emit_rtl.c (start_sequence, push_topmost_sequence,
pop_topmost_sequence, end_sequence, in_sequence_p, init_emit): Use
sequence accessors.
(get_last_insn_anywhere, add_insn_after_nobb, add_insn_before_nobb,
remove_insn): Likewise.  Simplify.
* config/m32c/m32c.c (m32c_leaf_function_p): Use push_topmost_sequence
and pop_topmost_sequence.
(m32c_function_needs_enter): Use get_topmost_sequence.  Ignore
debug insns.
* config/rs6000/rs6000.c (rs6000_call_aix): Use get_current_sequence.

From-SVN: r222112

9 years agore PR fortran/65089 (FAIL: gfortran.dg/io_real_boz(2|_[45]).f90 when tested with...
Jerry DeLisle [Wed, 15 Apr 2015 01:27:03 +0000 (01:27 +0000)]
re PR fortran/65089 (FAIL: gfortran.dg/io_real_boz(2|_[45]).f90 when tested with -fsanitize=address)

2015-04-14 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/65089
* io/format.h (free_format): New function to free memory
allocated for building format error messages.
* io/format.c (format_error): Add checks before freeing memory
to avoid potential segfaults and free formatting data when
needed on error conditions. Always allocate and NULL terminate
the string.
* io/transfer.c (st_read_done, st_write_done): Use new
free_format function to clean up memory allocations when done.

From-SVN: r222111

9 years agotree.c (replace_placeholders_t): Remove unused type.
Mikhail Maltsev [Wed, 15 Apr 2015 00:58:28 +0000 (00:58 +0000)]
tree.c (replace_placeholders_t): Remove unused type.

* tree.c (replace_placeholders_t): Remove unused type.
(replace_placeholders): Remove unused pset.

From-SVN: r222110

9 years agoDaily bump.
GCC Administrator [Wed, 15 Apr 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222109

9 years ago* pt.c (lookup_template_class_1): Use coerce_innermost_template_parms.
Jason Merrill [Tue, 14 Apr 2015 21:31:07 +0000 (17:31 -0400)]
* pt.c (lookup_template_class_1): Use coerce_innermost_template_parms.

From-SVN: r222104

9 years agore PR target/65729 (ICE (in prohibited_class_reg_set_mode_p, at lra-constraints.c...
Yvan Roux [Tue, 14 Apr 2015 17:21:54 +0000 (17:21 +0000)]
re PR target/65729 (ICE (in prohibited_class_reg_set_mode_p, at lra-constraints.c) on arm-linux-gnueabihf)

gcc/
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

PR target/65729
* lra-constraints.c (prohibited_class_reg_set_mode_p): Restore and fix
the assertiion.

gcc/testsuite/
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

PR target/65729
* gcc.target/arm/pr65729.c: New test.

From-SVN: r222101

9 years agoi386.h (LEGACY_INT_REG_P): New define.
Uros Bizjak [Tue, 14 Apr 2015 17:17:05 +0000 (19:17 +0200)]
i386.h (LEGACY_INT_REG_P): New define.

* config/i386/i386.h (LEGACY_INT_REG_P): New define.
(LEGACY_INT_REGNO_P): Ditto.
(GENERAL_REGNO_P): Use LEGACY_INT_REGNO_P.
(ANY_MASK_REG_P): Remove.
(BND_REG_P): Rename from ANY_BND_REG_P.
* config/i386/i386.c (print_reg): Use LEGACY_INT_REG_P to print
legacy integer registers.  Do not handle MMX_REG_P in a special way.
Merge 64byte and 32byte SSE handling.

From-SVN: r222100

9 years agoMakefile.tpl (EXTRA_HOST_EXPORTS): New variables.
Max Ostapenko [Tue, 14 Apr 2015 16:14:04 +0000 (19:14 +0300)]
Makefile.tpl (EXTRA_HOST_EXPORTS): New variables.

2015-04-14  Max Ostapenko  <m.ostapenko@partner.samsung.com>

* Makefile.tpl (EXTRA_HOST_EXPORTS): New variables.
(EXTRA_BOOTSTRAP_FLAGS): Likewise.
(check-[+module+]): Add EXTRA_HOST_EXPORTS and EXTRA_BOOTSTRAP_FLAGS.
* Makefile.in: Regenerate.

libiberty/
* testsuite/Makefile.in (LIBCFLAGS): Add LDFLAGS.

From-SVN: r222099

9 years agoexpr.c (expand_assignment): Force an address offset computation into a register befor...
Nick Clifton [Tue, 14 Apr 2015 16:12:34 +0000 (16:12 +0000)]
expr.c (expand_assignment): Force an address offset computation into a register before changing its mode.

* expr.c (expand_assignment): Force an address offset computation
into a register before changing its mode.
(expand_expr_real_1): Likewise.

From-SVN: r222098

9 years agore PR c++/65695 (NSDMI calling constexpr constructor with pointer-to-member is not...
Jason Merrill [Tue, 14 Apr 2015 16:02:41 +0000 (12:02 -0400)]
re PR c++/65695 (NSDMI calling constexpr constructor with pointer-to-member is not a constant expression)

PR c++/65695
* cvt.c (cp_fold_convert): Avoid wrapping PTRMEM_CST in NOP_EXPR.

From-SVN: r222097

9 years agore PR c++/65721 (Internal compiler error segmentation fault)
Jason Merrill [Tue, 14 Apr 2015 15:29:34 +0000 (11:29 -0400)]
re PR c++/65721 (Internal compiler error segmentation fault)

PR c++/65721
* name-lookup.c (do_class_using_decl): Complain about specifying
the current class even if there are dependent bases.

From-SVN: r222096

9 years agore PR c++/59766 (c++1y: declaring friend function with 'auto' return type deduction...
David Krauss [Tue, 14 Apr 2015 15:29:27 +0000 (15:29 +0000)]
re PR c++/59766 (c++1y: declaring friend function with 'auto' return type deduction is rejected with bogus reason)

PR c++/59766
* decl.c (grokdeclarator): Do not flag friends with deduced return.

From-SVN: r222095

9 years agore PR c++/60994 (gcc does not recognize hidden/shadowed enumeration as valid nested...
Momchil Velikov [Tue, 14 Apr 2015 15:29:21 +0000 (15:29 +0000)]
re PR c++/60994 (gcc does not recognize hidden/shadowed enumeration as valid nested-name-specifier)

PR c++/60994
* parser.c (cp_parser_class_name): Add enum_ok parameter.
(cp_parser_qualifying_entity): Use it instead of cp_parser_type_name.
(cp_parser_diagnose_invalid_type_name): Don't assume a template is
a class template.

Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r222094

9 years agoAdd the missing file
H.J. Lu [Tue, 14 Apr 2015 15:04:45 +0000 (08:04 -0700)]
Add the missing file

From-SVN: r222093

9 years ago[AArch64 Intrinsics] Replace temporary assembler for vst1_lane
Alan Lawrence [Tue, 14 Apr 2015 13:59:06 +0000 (13:59 +0000)]
[AArch64 Intrinsics] Replace temporary assembler for vst1_lane

* config/aarch64/arm_neon.h (vst1_lane_f32, vst1_lane_f64,
vst1_lane_p8, vst1_lane_p16, vst1_lane_s8, vst1_lane_s16,
vst1_lane_s32, vst1_lane_s64, vst1_lane_u8, vst1_lane_u16,
vst1_lane_u32, vst1_lane_u64, vst1q_lane_f32, vst1q_lane_f64,
vst1q_lane_p8, vst1q_lane_p16, vst1q_lane_s8, vst1q_lane_s16,
vst1q_lane_s32, vst1q_lane_s64, vst1q_lane_u8, vst1q_lane_u16,
vst1q_lane_u32, vst1q_lane_u64): Reimplement with pointer dereference
and __aarch64_vget_lane_any.

From-SVN: r222092

9 years agore PR rtl-optimization/65761 (internal compiler error: in patch_jump_insn, at cfgrtl...
Jakub Jelinek [Tue, 14 Apr 2015 13:24:53 +0000 (15:24 +0200)]
re PR rtl-optimization/65761 (internal compiler error: in patch_jump_insn, at cfgrtl.c:1296)

PR rtl-optimization/65761
* cfgrtl.c (rtl_split_edge): For EDGE_CROSSING split, use
get_last_bb_insn (after) instead of NEXT_INSN (BB_END (after)).

From-SVN: r222090

9 years agoAdd bootstrap-mpx.mk
H.J. Lu [Tue, 14 Apr 2015 12:45:34 +0000 (05:45 -0700)]
Add bootstrap-mpx.mk

* bootstrap-mpx.mk: New file.

From-SVN: r222088

9 years agographite-scop-detection.c: Do not include cp/cp-tree.h.
Richard Biener [Tue, 14 Apr 2015 12:33:57 +0000 (12:33 +0000)]
graphite-scop-detection.c: Do not include cp/cp-tree.h.

2015-04-14  Richard Biener  <rguenther@suse.de>

* graphite-scop-detection.c: Do not include cp/cp-tree.h.
(graphite_can_represent_scev): Use POINTER_TYPE_P.

From-SVN: r222087

9 years agore PR middle-end/65758 (191.fma3d in SPEC CPU 200 failed to build)
Richard Biener [Tue, 14 Apr 2015 12:17:05 +0000 (12:17 +0000)]
re PR middle-end/65758 (191.fma3d in SPEC CPU 200 failed to build)

2015-04-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65758
* tree-ssa-ccp.c (get_value_from_alignment): Adjust mask test
against -1.
(ccp_lattice_meet): Likewise.
(bit_value_unop): Likewise.
(bit_value_binop): Likewise.
(bit_value_assume_aligned): Likewise.

* gfortran.fortran-torture/compile/pr65758.f90: New testcase.

From-SVN: r222085

9 years ago15-04-14 Christian Bruel <christian.bruel@st.com>
Christian Bruel [Tue, 14 Apr 2015 12:14:04 +0000 (14:14 +0200)]
15-04-14  Christian Bruel  <christian.bruel@st.com>

* execute_dwarf2_frame (dw_frame_pointer_regnum): Reinitialize for each
function.

From-SVN: r222084

9 years agoAdd missing testcase.
Yvan Roux [Tue, 14 Apr 2015 12:12:29 +0000 (12:12 +0000)]
Add missing testcase.

2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

PR target/65648
* gcc.c-torture/execute/pr65648.c: New test.

From-SVN: r222083

9 years agore PR libstdc++/61347 (std::distance(list.first(),list.end()) in O(1))
Marc Glisse [Tue, 14 Apr 2015 11:02:48 +0000 (13:02 +0200)]
re PR libstdc++/61347 (std::distance(list.first(),list.end()) in O(1))

2015-04-14  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/61347
* include/bits/stl_iterator_base_funcs.h (_List_iterator,
_List_const_iterator): Declare.
(__distance): Declare new overloads for _List_iterator and
_List_const_iterator.
* include/bits/stl_list.h (__distance): New overloads for
_List_iterator and _List_const_iterator.
* testsuite/23_containers/list/61347.cc: New testcase.

From-SVN: r222082

9 years agoevolution.xml: Fix typos.
Jonathan Wakely [Tue, 14 Apr 2015 10:08:58 +0000 (11:08 +0100)]
evolution.xml: Fix typos.

* doc/xml/manual/evolution.xml: Fix typos.
* doc/html/manual/api.html: Regenerate.

From-SVN: r222081

9 years agoAvoid finite in gcc.target/i386/avx512dq-vfpclasspd-2.c etc.
Rainer Orth [Tue, 14 Apr 2015 09:22:28 +0000 (09:22 +0000)]
Avoid finite in gcc.target/i386/avx512dq-vfpclasspd-2.c etc.

* gcc.target/i386/avx512dq-vfpclasspd-2.c (check_fp_class_dp): Use
__builtin_finite instead of finite.
* gcc.target/i386/avx512dq-vfpclassps-2.c (check_fp_class_sp):
Likewise.

From-SVN: r222079

9 years agore PR other/63387 (Optimize pairs of isnan() calls into a single isunordered())
Marc Glisse [Tue, 14 Apr 2015 08:49:16 +0000 (10:49 +0200)]
re PR other/63387 (Optimize pairs of isnan() calls into a single isunordered())

2015-04-14  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/63387
gcc/
* match.pd ((x unord x) | (y unord y) -> (x unord y),
(x unord x) | (x unord y) -> (x unord y)): New simplifications.
gcc/testsuite/
* gcc.dg/pr63387.c: New testcase.

From-SVN: r222077

9 years agopredicates.md (any_QIreg_operand): Rename from q_regs_operand.
Uros Bizjak [Tue, 14 Apr 2015 05:04:03 +0000 (07:04 +0200)]
predicates.md (any_QIreg_operand): Rename from q_regs_operand.

* config/i386/predicates.md (any_QIreg_operand): Rename from
q_regs_operand.  Do not process subregs.
(QIreg_operand): Use QI_REGNO_P predicate.
(ext_QIreg_operand): Ditto.
(ext_register_operand): Ditto.
* config/i386/i386.md (TEST splitters): Use QIreg_operand predicate.
(AND splitters): Ditto.
(AND with -65536 splitter): Add SWI48 mode for operand 0.
(AND with -256 splitter): Use any_QIreg_operand predicate and
SWI248 mode for operand 0.
(AND with -65281 splitter): Use QIreg_operand predicate and SWI248
mode for operand 0.
(SETCC + MOVZBL peepholes): Update for renamed any_QIreg_operand.

From-SVN: r222076

9 years agoFix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc as...
Hans-Peter Nilsson [Tue, 14 Apr 2015 00:37:57 +0000 (00:37 +0000)]
Fix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc as...

Fix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc
as reported at <http://gcc.gnu.org/ml/gcc-patches/2015-04/msg00543.html>.

* testsuite/29_atomics/atomic/62259.cc: Assert atomic
alignment is larger-equal, not equal, to default alignment.

From-SVN: r222072

9 years agoDaily bump.
GCC Administrator [Tue, 14 Apr 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222070

9 years ago* doc/plugins.texi: Rewrite first introductory paragraph.
Gerald Pfeifer [Mon, 13 Apr 2015 23:31:10 +0000 (23:31 +0000)]
* doc/plugins.texi: Rewrite first introductory paragraph.

From-SVN: r222065

9 years agogcc.pot: Regenerate.
Joseph Myers [Mon, 13 Apr 2015 20:10:53 +0000 (21:10 +0100)]
gcc.pot: Regenerate.

gcc/po:
* gcc.pot: Regenerate.

libcpp/po:
* cpplib.pot: Regenerate.

From-SVN: r222061

9 years agore PR libstdc++/65754 (missing exports for fstream constructors)
Jonathan Wakely [Mon, 13 Apr 2015 18:41:42 +0000 (19:41 +0100)]
re PR libstdc++/65754 (missing exports for fstream constructors)

PR libstdc++/65754
* config/abi/pre/gnu.ver: Export base object constructors for
fstreams.
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
* testsuite/27_io/basic_fstream/cons/base.cc: New.

From-SVN: r222059

9 years agoevolution.xml: Document changes since 4.5 release.
Jonathan Wakely [Mon, 13 Apr 2015 16:21:33 +0000 (17:21 +0100)]
evolution.xml: Document changes since 4.5 release.

* doc/xml/manual/evolution.xml: Document changes since 4.5 release.
* doc/html/*: Regenerate.

From-SVN: r222055

9 years agononzero-3.C: New testcase.
Jan Hubicka [Mon, 13 Apr 2015 14:16:41 +0000 (16:16 +0200)]
nonzero-3.C: New testcase.

* g++.dg/tree-ssa/nonzero-3.C: New testcase.
* tree-vrp.c (nonnull_arg_p): THIS pointers and references are non-zero.
(gimple_stmt_nonzero_warnv_p): Reference return values are non-zero.

From-SVN: r222054

9 years agoipa-profie.c (ipa_profile): Check number of parameters and possible polymorphic call...
Jan Hubicka [Mon, 13 Apr 2015 14:13:06 +0000 (16:13 +0200)]
ipa-profie.c (ipa_profile): Check number of parameters and possible polymorphic call targets before...

* ipa-profie.c (ipa_profile): Check number of parameters
and possible polymorphic call targets before
devirtualizing.

From-SVN: r222053

9 years agoi386.md (*bmi2_umul<mode><dwi>3_1): Merge from *bmi2_umulsidi3_1 and *bmi2_umulditi3_...
Uros Bizjak [Mon, 13 Apr 2015 14:02:26 +0000 (16:02 +0200)]
i386.md (*bmi2_umul<mode><dwi>3_1): Merge from *bmi2_umulsidi3_1 and *bmi2_umulditi3_1 using DWIH mode iterator.

* config/i386/i386.md (*bmi2_umul<mode><dwi>3_1): Merge from
*bmi2_umulsidi3_1 and *bmi2_umulditi3_1 using DWIH mode iterator.

From-SVN: r222052

9 years agore PR tree-optimization/65204 (Aligned address optimization not detected)
Richard Biener [Mon, 13 Apr 2015 12:42:41 +0000 (12:42 +0000)]
re PR tree-optimization/65204 (Aligned address optimization not detected)

2015-04-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65204
* tree-ssa-ccp.c (evaluate_stmt): Always evaluate address
takens for bit-CCP.

* gcc.dg/tree-ssa/ssa-ccp-35.c: New testcase.

From-SVN: r222049

9 years agoupdate_version_svn: Update DATESTAMP also on branches/gcc-[0-9]+-branch.
Jakub Jelinek [Mon, 13 Apr 2015 09:07:11 +0000 (11:07 +0200)]
update_version_svn: Update DATESTAMP also on branches/gcc-[0-9]+-branch.

* update_version_svn: Update DATESTAMP also on
branches/gcc-[0-9]+-branch.

From-SVN: r222044

9 years agore PR sanitizer/64839 (libsanitizer shouldn't require <rpc/xdr.h>)
Yury Gribov [Mon, 13 Apr 2015 08:59:55 +0000 (08:59 +0000)]
re PR sanitizer/64839 (libsanitizer shouldn't require <rpc/xdr.h>)

2015-04-13  Yury Gribov  <y.gribov@samsung.com>

PR sanitizer/64839

libsanitizer/
* sanitizer_common/sanitizer_platform.h: Cherry pick
upstream r234470.
* sanitizer_common/sanitizer_platform_limits_posix.cc: Ditto.
* configure.ac (RPC_DEFS): Check for precense of RPC headers.
* sanitizer_common/Makefile.am (DEFS): Pass info to compiler.
* Makefile.in: Regenerate.
* asan/Makefile.in: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* interception/Makefile.in: Regenerate.
* libbacktrace/Makefile.in: Regenerate.
* lsan/Makefile.in: Regenerate.
* sanitizer_common/Makefile.in: Regenerate.
* tsan/Makefile.in: Regenerate.
* ubsan/Makefile.in: Regenerate.

From-SVN: r222043

9 years agogcc_release: Fix up thinko in the last commit, improve error message.
Jakub Jelinek [Mon, 13 Apr 2015 08:44:56 +0000 (10:44 +0200)]
gcc_release: Fix up thinko in the last commit, improve error message.

* gcc_release: Fix up thinko in the last commit, improve error
message.  Commit all ChangeLog, DEV-PHASE and BASE-VER changes
together, rather than doing dozens of separate commits.

From-SVN: r222042

9 years ago* gnatvsn.ads (Library_Version): Bump to 6.
Eric Botcazou [Mon, 13 Apr 2015 08:20:53 +0000 (08:20 +0000)]
* gnatvsn.ads (Library_Version): Bump to 6.

From-SVN: r222041

9 years agore PR target/65660 (252.eon regression on bdver2 with -Ofast)
Richard Biener [Mon, 13 Apr 2015 07:33:51 +0000 (07:33 +0000)]
re PR target/65660 (252.eon regression on bdver2 with -Ofast)

2015-04-13  Richard Biener  <rguenther@suse.de>

PR target/65660
* config/i386/i386.c (bdver1_cost): Double cond_taken_branch_cost
and cond_not_taken_branch_cost to 4 and 2.
(bdver2_cost): Likewise.
(bdver3_cost): Likewise.
(bdver4_cost): Likewise.

From-SVN: r222040

9 years agohash-table.h (hash_table constructor): Add mem stats.
Jan Hubicka [Mon, 13 Apr 2015 06:37:56 +0000 (08:37 +0200)]
hash-table.h (hash_table constructor): Add mem stats.

* hash-table.h (hash_table constructor): Add mem stats.
(alloc_entries): Likewise.

From-SVN: r222039

9 years agoipa-cp.c (ipcp_driver): Relase prev_edge.
Jan Hubicka [Mon, 13 Apr 2015 06:27:57 +0000 (08:27 +0200)]
ipa-cp.c (ipcp_driver): Relase prev_edge.

* ipa-cp.c (ipcp_driver): Relase prev_edge.
* passes.c (execute_one_pass): Only add transform if pass has one.

From-SVN: r222038

9 years agoAdd missing test case
Terry Guo [Mon, 13 Apr 2015 05:22:09 +0000 (05:22 +0000)]
Add missing test case

2015-04-13  Terry Guo  <terry.guo@arm.com>

        PR target/65710
        * gcc.target/arm/pr65710.c: New.

From-SVN: r222037

9 years agoDaily bump.
GCC Administrator [Mon, 13 Apr 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r222036

9 years agoDon't enable -fprefetch-loop-arrays for TARGET_SOFTWARE_PREFETCHING_BENEFICIAL if...
Joseph Myers [Sun, 12 Apr 2015 21:35:17 +0000 (22:35 +0100)]
Don't enable -fprefetch-loop-arrays for TARGET_SOFTWARE_PREFETCHING_BENEFICIAL if -Os.

Testing an x86_64 toolchain configured for a processor with
TARGET_SOFTWARE_PREFETCHING_BENEFICIAL produces failures

FAIL: g++.dg/pr60518.C  -std=gnu++98 (test for excess errors)
FAIL: g++.dg/pr60518.C  -std=gnu++11 (test for excess errors)
FAIL: g++.dg/pr60518.C  -std=gnu++14 (test for excess errors)

where the failure is from the message "pr60518.C:1:0: warning:
-fprefetch-loop-arrays is not supported with -Os".

Given that lack of support, it seems appropriate for the back end not
to enable this option in the -Os case; this patch implements that.

Bootstrapped with no regressions on x86_64-unknown-linux-gnu; tested
for a cross to x86_64-linux-gnu --with-arch=btver2, where those test
failures duly disappear.

* config/i386/i386.c (ix86_option_override_internal): Don't set
-fprefetch-loop-arrays if optimizing for size.

From-SVN: r222033

9 years agogcc_release: For RELEASE_MAJOR 5+ only use the major number in branch name.
Jakub Jelinek [Sun, 12 Apr 2015 20:49:37 +0000 (22:49 +0200)]
gcc_release: For RELEASE_MAJOR 5+ only use the major number in branch name.

* gcc_release: For RELEASE_MAJOR 5+ only use the major
number in branch name.  When doing final release of 5+,
if BASE-VER doesn't match release, but is *.*.1 for the
one smaller minor version, bump BASE-VER.

From-SVN: r222031

9 years agocontrib.texi (Contributors): Add Martin Jambor and Michael Matz.
Jan Hubicka [Sun, 12 Apr 2015 20:31:53 +0000 (22:31 +0200)]
contrib.texi (Contributors): Add Martin Jambor and Michael Matz.

* doc/contrib.texi (Contributors): Add Martin Jambor and
Michael Matz.

Co-Authored-By: Gerald Pfeifer <gerald@pfeifer.com>
From-SVN: r222030

9 years ago* fi.po, sv.po: Update.
Joseph Myers [Sun, 12 Apr 2015 20:26:23 +0000 (21:26 +0100)]
* fi.po, sv.po: Update.

From-SVN: r222029

9 years ago* crontab: Enable snapshots from gcc-5-branch.
Jakub Jelinek [Sun, 12 Apr 2015 20:10:32 +0000 (22:10 +0200)]
* crontab: Enable snapshots from gcc-5-branch.

From-SVN: r222028

9 years ago* BASE-VER: Set to 6.0.0.
Jakub Jelinek [Sun, 12 Apr 2015 19:46:43 +0000 (21:46 +0200)]
* BASE-VER: Set to 6.0.0.

From-SVN: r222026

9 years agore PR middle-end/65747 (ICE (in compare_ssa_name, at ipa-icf-gimple.c:134) on x86_64...
Jakub Jelinek [Sun, 12 Apr 2015 19:30:51 +0000 (21:30 +0200)]
re PR middle-end/65747 (ICE (in compare_ssa_name, at ipa-icf-gimple.c:134) on x86_64-linux-gnu)

PR tree-optimization/65747
* ipa-icf-gimple.c (func_checker::compare_operand): Use compare_operand
rather than compare_ssa_name for OBJ_TYPE_REF_OBJECT.

* g++.dg/torture/pr65747.C: New test.

From-SVN: r222024