gcc.git
9 years agohash-traits.h (string_hash, [...]): New classes.
Richard Sandiford [Thu, 25 Jun 2015 17:16:23 +0000 (17:16 +0000)]
hash-traits.h (string_hash, [...]): New classes.

gcc/
* hash-traits.h (string_hash, nofree_string_hash): New classes.
* genmatch.c (capture_id_map_hasher): Use nofree_string_hash.
* passes.c (pass_registry_hasher): Likewise.
* config/alpha/alpha.c (string_traits): Likewise.
* config/i386/winnt.c (i386_find_on_wrapper_list): Likewise.
* config/m32c/m32c.c (pragma_traits): Likewise.
* config/mep/mep.c (pragma_traits): Likewise.

gcc/java/
* jcf-io.c (memoized_class_lookups): Use nofree_string_hash.
(find_class): Likewise.

From-SVN: r224971

9 years agotree-hash-traits.h (tree_hash): New class.
Richard Sandiford [Thu, 25 Jun 2015 17:16:15 +0000 (17:16 +0000)]
tree-hash-traits.h (tree_hash): New class.

gcc/
* tree-hash-traits.h (tree_hash): New class.
* except.c: Include tree-hash-traits.h.
(tree_hash_traits): Use tree_hash.

From-SVN: r224970

9 years agotree-hash-traits.h (tree_ssa_name_hasher): New class.
Richard Sandiford [Thu, 25 Jun 2015 17:16:02 +0000 (17:16 +0000)]
tree-hash-traits.h (tree_ssa_name_hasher): New class.

gcc/
* tree-hash-traits.h (tree_ssa_name_hasher): New class.
* sese.c: Include tree-hash-traits.h.
(rename_map_hasher): Use tree_ssa_name_hasher.

From-SVN: r224969

9 years agotree-hash-traits.h (tree_decl_hash): New class.
Richard Sandiford [Thu, 25 Jun 2015 17:15:54 +0000 (17:15 +0000)]
tree-hash-traits.h (tree_decl_hash): New class.

gcc/
* tree-hash-traits.h (tree_decl_hash): New class.
* tree-ssa-strlen.c: Include tree-hash-traits.h.
(stridxlist_hash_traits): Use tree_decl_hash.

From-SVN: r224968

9 years agotree-hash-traits.h: New file.
Richard Sandiford [Thu, 25 Jun 2015 17:15:44 +0000 (17:15 +0000)]
tree-hash-traits.h: New file.

gcc/
* tree-hash-traits.h: New file.
(tree_operand_hash): New class.
* sanopt.c: Include tree-hash-traits.h.
(sanopt_tree_map_traits): Use tree_operand_hash.
* tree-if-conv.c: Include tree-hash-traits.h.
(phi_args_hash_traits): Use tree_operand_hash.
* tree-ssa-uncprop.c: Include tree-hash-traits.h.
(val_ssa_equiv_hash_traits): Use tree_operand_hash.

From-SVN: r224967

9 years agohash-map-traits.h: Include hash-traits.h.
Richard Sandiford [Thu, 25 Jun 2015 17:15:35 +0000 (17:15 +0000)]
hash-map-traits.h: Include hash-traits.h.

gcc/
* hash-map-traits.h: Include hash-traits.h.
(simple_hashmap_traits): New class.
* mem-stats.h (hash_map): Change the default traits to
simple_hashmap_traits<default_hash_traits<Key> >.

From-SVN: r224966

9 years agohash-table.h: Update comments.
Richard Sandiford [Thu, 25 Jun 2015 17:07:34 +0000 (17:07 +0000)]
hash-table.h: Update comments.

gcc/
* hash-table.h: Update comments.

From-SVN: r224965

9 years agohash-traits.h (default_hash_traits): New structure.
Richard Sandiford [Thu, 25 Jun 2015 17:07:26 +0000 (17:07 +0000)]
hash-traits.h (default_hash_traits): New structure.

gcc/
* hash-traits.h (default_hash_traits): New structure.
* hash-set.h (default_hashset_traits): Delete.
(hash_set): Use default_hash_traits<Key> instead of
default_hashset_traits.  Delete hash_entry type and use Key directly.
* ipa-devirt.c (pair_traits): Delete.
(default_hash_traits <type_pair>): Override.
(odr_subtypes_equivalent_p): Remove pair_types template parameter.
(odr_types_equivalent_p, add_type_duplicate): Likewise.

From-SVN: r224964

9 years agohash-traits.h (typed_noop_remove): Don't require a pointer type.
Richard Sandiford [Thu, 25 Jun 2015 17:07:16 +0000 (17:07 +0000)]
hash-traits.h (typed_noop_remove): Don't require a pointer type.

gcc/
* hash-traits.h (typed_noop_remove): Don't require a pointer type.

From-SVN: r224963

9 years agohash-table.h (has_is_deleted, [...]): Delete.
Richard Sandiford [Thu, 25 Jun 2015 17:07:01 +0000 (17:07 +0000)]
hash-table.h (has_is_deleted, [...]): Delete.

gcc/
* hash-table.h (has_is_deleted, is_deleted_helper): Delete.
(has_is_empty, is_empty_helper): Delete.
(has_mark_deleted, mark_deleted_helper): Delete.
(has_mark_empty, mark_empty_helper): Delete.
(hash_table::is_deleted): Call the Descriptor unconditionally.
(hash_table::is_empty): Likewise.
(hash_table::mark_deleted): Likewise.
(hash_table::mark_empty): Likewise.

From-SVN: r224962

9 years agocgraph.h (asmname_hasher): Inherit from ggc_ptr_hash.
Richard Sandiford [Thu, 25 Jun 2015 17:06:52 +0000 (17:06 +0000)]
cgraph.h (asmname_hasher): Inherit from ggc_ptr_hash.

gcc/
* cgraph.h (asmname_hasher): Inherit from ggc_ptr_hash.  Remove
redundant typedefs and members.
* coverage.c (counts_entry): Inherit from pointer_hash.  Remove
redundant typedefs.
* dwarf2out.c (cu_hash_table_entry_hasher): Likewise.
* ipa-devirt.c (odr_name_hasher): Likewise.
(polymorphic_call_target_hasher): Likewise.
* ira-costs.c (cost_classes_hasher): Likewise.
* statistics.c (stats_counter_hasher): Likewise.
* trans-mem.c (log_entry_hasher): Likewise.
* tree-ssa-dom.c (expr_elt_hasher): Likewise.
* tree-ssa-sccvn.c (vn_phi_hasher, vn_reference_hasher): Likewise.
* tree-ssa-tail-merge.c (same_succ_def): Likewise.
* var-tracking.c (variable_hasher): Likewise.
* valtrack.h (dead_debug_hash_descr): Inherit from free_ptr_hash.
Remove redundant typedefs and members.

From-SVN: r224961

9 years agohash-traits.h (ggc_cache_hasher): Rename to...
Richard Sandiford [Thu, 25 Jun 2015 17:06:44 +0000 (17:06 +0000)]
hash-traits.h (ggc_cache_hasher): Rename to...

gcc/
* hash-traits.h (ggc_cache_hasher): Rename to...
(ggc_cache_remove): ...this and remove typedefs.
(ggc_cache_ptr_hash): New class.
* hash-table.h: Update commentary.
* emit-rtl.c (const_int_hasher): Inherit from ggc_cache_ptr_hash
rather than ggc_cache_hasher.
(const_wide_int_hasher, reg_attr_hasher): Likewise.
(const_double_hasher, const_fixed_hasher): Likewise.
* function.c (insn_cache_hasher): Likewise.
* trans-mem.c (tm_wrapper_hasher): Likewise.
* tree.h (tree_decl_map_cache_hasher): Likewise.
* tree.c (type_cache_hasher, int_cst_hasher): Likewise.
(cl_option_hasher, tree_vec_map_cache_hasher): Likewise.
* ubsan.c (tree_type_map_cache_hasher): Likewise.
* varasm.c (tm_clone_hasher): Likewise.
* config/i386/i386.c (dllimport_hasher): Likewise.
* config/nvptx/nvptx.c (declared_libfunc_hasher): Likewise.
(tree_hasher): Likewise.

gcc/ada/
* gcc-interface/decl.c (value_annotation_hasher): Inherit from
ggc_cache_ptr_hash rather than ggc_cache_hasher.
* gcc-interface/utils.c (pad_type_hasher): Likewise.

From-SVN: r224960

9 years agohash-traits.h (ggc_hasher): Rename to...
Richard Sandiford [Thu, 25 Jun 2015 17:06:36 +0000 (17:06 +0000)]
hash-traits.h (ggc_hasher): Rename to...

gcc/
* hash-traits.h (ggc_hasher): Rename to...
(ggc_remover): ...this and remove typedefs.
(ggc_cache_hasher): Update accordingly.  Add typedefs.
(ggc_ptr_hash): New class.
* hash-table.h: Update comment.
* cfgloop.h (loop_exit_hasher): Inherit from ggc_ptr_hash rather than
ggc_hasher.
* cgraph.h (section_name_hasher, cgraph_edge_hasher): Likewise.
(tree_descriptor_hasher): Likewise.
* cgraph.c (function_version_hasher): Likewise.
* dwarf2out.c (indirect_string_hasher, dwarf_file_hasher): Likewise.
(decl_die_hasher, block_die_hasher, decl_loc_hasher): Likewise.
(dw_loc_list_hasher, addr_hasher): Likewise.
* function.h (used_type_hasher): Likewise.
* function.c (temp_address_hasher): Likewise.
* gimple-ssa.h (tm_restart_hasher, ssa_name_hasher): Likewise.
* libfuncs.h (libfunc_hasher): Likewise.
* lto-streamer.h (decl_state_hasher): Likewise.
* optabs.c (libfunc_decl_hasher): Likewise.
* tree-scalar-evolution.c (scev_info_hasher): Likewise.
* varasm.c (section_hasher, object_block_hasher): Likewise.
(const_rtx_desc_hasher): Likewise.
* config/darwin.c (indirection_hasher, cfstring_hasher): Likewise.
* config/rs6000/rs6000.c (toc_hasher, builtin_hasher): Likewise.

gcc/c-family/
* c-common.c (c_type_hasher): Inherit from ggc_ptr_hash rather than
ggc_hasher.

gcc/cp/
* constexpr.c (constexpr_fundef_hasher): Inherit from ggc_ptr_hash
rather than ggc_hasher.
(constexpr_call_hasher): Likewise.
* cp-tree.h (cxx_int_tree_map_hasher, named_label_hasher): Likewise.
* decl.c (typename_hasher): Likewise.
* mangle.c (conv_type_hasher): Likewise.
* pt.c (spec_hasher): Likewise.
* tree.c (cplus_array_hasher, list_hasher): Likewise.
* typeck2.c (abstract_type_hasher): Likewise.

gcc/fortran/
* trans-decl.c (module_hasher): Likewise.
* trans.h (module_decl_hasher): Likewise.

gcc/java/
* java-tree.h (treetreehasher): Inherit from ggc_ptr_hash
rather than ggc_hasher.
(ict_hasher, type_assertion_hasher): Likewise.

gcc/objc/
* objc-act.c (objc_string_hasher): Inherit from ggc_ptr_hash
rather than ggc_hasher.

From-SVN: r224959

9 years agohash-traits.h (free_ptr_hash): New class.
Richard Sandiford [Thu, 25 Jun 2015 17:06:24 +0000 (17:06 +0000)]
hash-traits.h (free_ptr_hash): New class.

gcc/
* hash-traits.h (free_ptr_hash): New class.
* dwarf2out.c (decl_table_entry_hasher): Inherit from free_ptr_hash
rather than typed_free_remove.  Remove redudant typedefs.
(external_ref_hasher): Likewise.
* except.c (action_record_hasher, ttypes_filter_hasher): Likewise.
(ehspec_hasher): Likewise.
* ggc-common.c (saving_hasher): Likewise.
* gimplify.c (gimplify_hasher): Likewise.
* haifa-sched.c (delay_i2_hasher): Likewise.
* loop-invariant.c (invariant_expr_hasher): Likewise.
* loop-iv.c (biv_entry_hasher): Likewise.
* loop-unroll.c (iv_split_hasher, var_expand_hasher): Likewise.
* trans-mem.c (tm_mem_map_hasher, tm_memop_hasher): Likewise.
* tree-cfg.c (locus_discrim_hasher): Likewise.
* tree-eh.c (finally_tree_hasher): Likewise.
* tree-into-ssa.c (var_info_hasher): Likewise.
* tree-parloops.c (reduction_hasher, name_to_copy_hasher): Likewise.
* tree-ssa-loop-ivopts.c (iv_inv_expr_hasher): Likewise.
* tree-ssa-phiopt.c (ssa_names_hasher): Likewise.
* tree-ssa-pre.c (expr_pred_trans_d): Likewise.
* tree-ssa-sccvn.c (vn_constant_hasher): Likewise.
* tree-ssa-structalias.c (equiv_class_hasher): Likewise.
(shared_bitmap_hasher): Likewise.
* tree-ssa-threadupdate.c (redirection_data): Likewise.
* tree-vectorizer.h (peel_info_hasher): Likewise.
* tree-vectorizer.c (simduid_to_vf, simd_array_to_simduid): Likewise.
* config/mips/mips.c (mips_lo_sum_offset_hasher): Likewise.

libcc1/
* plugin.cc (decl_addr_hasher): Inherit from free_ptr_hash
rather than typed_free_remove.  Remove redudant typedefs.

From-SVN: r224958

9 years agohash-table.h: Update comments.
Richard Sandiford [Thu, 25 Jun 2015 17:06:13 +0000 (17:06 +0000)]
hash-table.h: Update comments.

gcc/
* hash-table.h: Update comments.
* hash-traits.h (pointer_hash): Don't inherit from typed_noop_remove.
(nofree_ptr_hash): New class.
* asan.c (asan_mem_ref_hasher): Inherit from nofree_ptr_hash rather
than typed_noop_remove.  Remove redudant typedefs.
* attribs.c (attribute_hasher): Likewise.
* cfg.c (bb_copy_hasher): Likewise.
* cselib.c (cselib_hasher): Likewise.
* dse.c (invariant_group_base_hasher): Likewise.
* dwarf2cfi.c (trace_info_hasher): Likewise.
* dwarf2out.c (macinfo_entry_hasher): Likewise.
(comdat_type_hasher, loc_list_hasher): Likewise.
* gcse.c (pre_ldst_expr_hasher): Likewise.
* genmatch.c (id_base): Likewise.
* genrecog.c (test_pattern_hasher): Likewise.
* gimple-ssa-strength-reduction.c (cand_chain_hasher): Likewise.
* haifa-sched.c (delay_i1_hasher): Likewise.
* hard-reg-set.h (simplifiable_subregs_hasher): Likewise.
* ipa-icf.h (congruence_class_group_hash): Likewise.
* ipa-profile.c (histogram_hash): Likewise.
* ira-color.c (allocno_hard_regs_hasher): Likewise.
* lto-streamer.h (string_slot_hasher): Likewise.
* lto-streamer.c (tree_entry_hasher): Likewise.
* plugin.c (event_hasher): Likewise.
* postreload-gcse.c (expr_hasher): Likewise.
* store-motion.c (st_expr_hasher): Likewise.
* tree-sra.c (uid_decl_hasher): Likewise.
* tree-ssa-coalesce.c (coalesce_pair_hasher): Likewise.
(ssa_name_var_hash): Likewise.
* tree-ssa-live.c (tree_int_map_hasher): Likewise.
* tree-ssa-loop-im.c (mem_ref_hasher): Likewise.
* tree-ssa-pre.c (pre_expr_d): Likewise.
* tree-ssa-sccvn.c (vn_nary_op_hasher): Likewise.
* vtable-verify.h (registration_hasher): Likewise.
* vtable-verify.c (vtbl_map_hasher): Likewise.
* config/arm/arm.c (libcall_hasher): Likewise.
* config/i386/winnt.c (wrapped_symbol_hasher): Likewise.
* config/ia64/ia64.c (bundle_state_hasher): Likewise.
* config/sol2.c (comdat_entry_hasher): Likewise.
* fold-const.c (fold): Use nofree_ptr_hash instead of pointer_hash.
(print_fold_checksum, fold_checksum_tree): Likewise.
(debug_fold_checksum, fold_build1_stat_loc): Likewise.
(fold_build2_stat_loc, fold_build3_stat_loc): Likewise.
(fold_build_call_array_loc): Likewise.
* tree-ssa-ccp.c (gimple_htab): Likewise.
* tree-browser.c (tree_upper_hasher): Inherit from nofree_ptr_hash
rather than pointer_type.

gcc/c/
* c-decl.c (detect_field_duplicates_hash): Use nofree_ptr_hash
instead of pointer_hash.
(detect_field_duplicates): Likewise.

gcc/cp/
* class.c (fixed_type_or_null_ref_ht): Inherit from nofree_ptr_hash
rather than pointer_hash.
(fixed_type_or_null): Use nofree_ptr_hash instead of pointer_hash.
* semantics.c (nrv_data): Likewise.
* tree.c (verify_stmt_tree_r, verify_stmt_tree): Likewise.

gcc/java/
* jcf-io.c (charstar_hash): Inherit from nofree_ptr_hash rather
than typed_noop_remove.  Remove redudant typedefs.

gcc/lto/
* lto.c (tree_scc_hasher): Inherit from nofree_ptr_hash rather
than typed_noop_remove.  Remove redudant typedefs.

gcc/objc/
* objc-act.c (decl_name_hash): Inherit from nofree_ptr_hash rather
than typed_noop_remove.  Remove redudant typedefs.

libcc1/
* plugin.cc (string_hasher): Inherit from nofree_ptr_hash rather
than typed_noop_remove.  Remove redudant typedefs.
(plugin_context): Use nofree_ptr_hash rather than pointer_hash.
(plugin_context::mark): Likewise.

From-SVN: r224957

9 years agogcc/
Richard Sandiford [Thu, 25 Jun 2015 17:06:02 +0000 (17:06 +0000)]
gcc/
* hash-traits.h (pointer_hash::mark_deleted, pointer_hash::mark_empty)
(pointer_hash::is_deleted, pointer_hash::is_empty): New functions.

From-SVN: r224956

9 years agohash-traits.h (ggc_hasher::remove): Take a reference parameter.
Richard Sandiford [Thu, 25 Jun 2015 17:05:55 +0000 (17:05 +0000)]
hash-traits.h (ggc_hasher::remove): Take a reference parameter.

gcc/
* hash-traits.h (ggc_hasher::remove): Take a reference parameter.
(ggc_hasher::ggc_mx): Likewise.
(ggc_cache_hasher): Inherit from ggc_hasher.  Remove definitions
that duplicate ggc_hasher ones.

From-SVN: r224955

9 years agodecl.c (value_annotation_hasher::handle_cache_entry): Delete.
Richard Sandiford [Thu, 25 Jun 2015 17:05:47 +0000 (17:05 +0000)]
decl.c (value_annotation_hasher::handle_cache_entry): Delete.

gcc/ada/
* gcc-interface/decl.c (value_annotation_hasher::handle_cache_entry):
Delete.
(value_annotation_hasher::keep_cache_entry): New function.
* gcc-interface/utils.c (pad_type_hasher::handle_cache_entry):
Delete.
(pad_type_hasher::keep_cache_entry): New function.

gcc/
* hash-table.h (hash_table): Add gt_cleare_cache as a friend.
(gt_cleare_cache): Check here for deleted and empty entries.
Replace handle_cache_entry with a call to keep_cache_entry.
* hash-traits.h (ggc_cache_hasher::handle_cache_entry): Delete.
(ggc_cache_hasher::keep_cache_entry): New function.
* trans-mem.c (tm_wrapper_hasher::handle_cache_entry): Delete.
(tm_wrapper_hasher::keep_cache_entry): New function.
* tree.h (tree_decl_map_cache_hasher::handle_cache_entry): Delete.
(tree_vec_map_cache_hasher::keep_cache_entry): New function.
* tree.c (type_cache_hasher::handle_cache_entry): Delete.
(type_cache_hasher::keep_cache_entry): New function.
(tree_vec_map_cache_hasher::handle_cache_entry): Delete.
(tree_vec_map_cache_hasher::keep_cache_entry): New function.
* ubsan.c (tree_type_map_cache_hasher::handle_cache_entry): Delete.
(tree_type_map_cache_hasher::keep_cache_entry): New function.
* varasm.c (tm_clone_hasher::handle_cache_entry): Delete.
(tm_clone_hasher::keep_cache_entry): New function.
* config/i386/i386.c (dllimport_hasher::handle_cache_entry): Delete.
(dllimport_hasher::keep_cache_entry): New function.

From-SVN: r224954

9 years agohash-table.h: Include hash-traits.h.
Richard Sandiford [Thu, 25 Jun 2015 17:05:39 +0000 (17:05 +0000)]
hash-table.h: Include hash-traits.h.

gcc/
* hash-table.h: Include hash-traits.h.
(typed_free_remove, typed_noop_remove, pointer_hash, ggc_hasher)
(ggc_cache_hasher): Move to...
* hash-traits.h: ...this new file.

From-SVN: r224953

9 years agotree-core.h (struct tree_optimization_option): Make opts a pointer to struct cl_optim...
Andrew MacLeod [Thu, 25 Jun 2015 17:03:33 +0000 (17:03 +0000)]
tree-core.h (struct tree_optimization_option): Make opts a pointer to struct cl_optimization.

2015-06-25  Andrew MacLeod  <amacleod@redhat.com>

* tree-core.h (struct tree_optimization_option): Make opts a pointer to
struct cl_optimization.
* tree.h (TREE_OPTIMIZATION): Return the pointer, not the address of it.
* tree.c (make_node_stat): Allocate cl_optimization struct.
(copy_node_stat): Allocate and copy cl_optimization struct.

From-SVN: r224952

9 years agofunction.h (struct incoming_args): Move struct.
Andrew MacLeod [Thu, 25 Jun 2015 16:51:35 +0000 (16:51 +0000)]
function.h (struct incoming_args): Move struct.

2015-06-25  Andrew MacLeod  <amacleod@redhat.com>

* function.h (struct incoming_args): Move struct.
(pass_by_reference, reference_callee_copied): Remove prototypes.
* emit-rtl.h (struct incoming_args): Relocate struct here.
* calls.h (pass_by_reference, reference_callee_copied): Relocate
prototypes here.
* function.c (pass_by_reference, reference_callee_copied): Move.
* calls.c (pass_by_reference, reference_callee_copied): Relocate here.
* cfgloop.h: Don't include tm.h or hard-reg-set.h.
* ipa-chkp.c: Include calls.h.

* ada/gcc-interface/misc.c: Include calls.h not function.h.

* c-family/cilk.c: Move calls.h after tm.h in the include chain.

From-SVN: r224951

9 years agoFix changelog mistake
Andrew Macleod [Thu, 25 Jun 2015 16:45:23 +0000 (16:45 +0000)]
Fix changelog mistake

From-SVN: r224950

9 years agoarray-notation-common.c: Use VAR_P throughout.
Marek Polacek [Thu, 25 Jun 2015 16:38:31 +0000 (16:38 +0000)]
array-notation-common.c: Use VAR_P throughout.

* array-notation-common.c: Use VAR_P throughout.
* c-ada-spec.c: Likewise.
* c-common.c: Likewise.
* c-format.c: Likewise.
* c-gimplify.c: Likewise.
* c-omp.c: Likewise.
* c-pragma.c: Likewise.
* c-pretty-print.c: Likewise.
* cilk.c: Likewise.

* c-array-notation.c: Use VAR_P throughout.
* c-decl.c: Likewise.
* c-objc-common.c: Likewise.
* c-parser.c: Likewise.
* c-typeck.c: Likewise.

From-SVN: r224949

9 years agoalias.h (alias_set_type): Move typedef.
Andrew MacLeod [Thu, 25 Jun 2015 16:27:12 +0000 (16:27 +0000)]
alias.h (alias_set_type): Move typedef.

2015-06-25  Andrew Macleod  <amacleod@redhat.com>

* alias.h (alias_set_type): Move typedef.
* coretypes.h (alias_set_type): Relocate typedef here.
* rtl.h: Don't include alias.h.
* jit/jit-common.h: Likewise

From-SVN: r224948

9 years agocilk.c (extract_free_variables): Use is_global_var.
Marek Polacek [Thu, 25 Jun 2015 16:26:05 +0000 (16:26 +0000)]
cilk.c (extract_free_variables): Use is_global_var.

* cilk.c (extract_free_variables): Use is_global_var.

* c-decl.c: Use is_global_var throughout.
* c-parser.c: Likewise.
* c-typeck.c: Likewise.

From-SVN: r224947

9 years agocgraph.h (cgraph_rtl_info): Move to rtl.h
Andrew MacLeod [Thu, 25 Jun 2015 16:23:52 +0000 (16:23 +0000)]
cgraph.h (cgraph_rtl_info): Move to rtl.h

2015-06-25  Andrew MacLeod  <amacleod@redhat.com>

* cgraph.h (cgraph_rtl_info): Move to rtl.h
(cgraph_node): Maintain pointer to struct cgraph_rtl_info instead of
and instance.
* rtl.h (struct cgraph_rtl_info): Define when HARD_REG_SET available.
* cgraph.c (cgraph_node::rtl_info): Allocate cgraph_rtl_info if one
doesn't exist.
* calls.c: Include hard-reg-set.h before rtl.h.
* ira.c: Likewise.

From-SVN: r224946

9 years agoira-color.c (assign_hard_reg): Remove unecessary bitmap check.
Zhouyi Zhou [Thu, 25 Jun 2015 15:03:33 +0000 (15:03 +0000)]
ira-color.c (assign_hard_reg): Remove unecessary bitmap check.

2015-06-25  Zhouyi Zhou  <yizhouzhou@ict.ac.cn>
    Vladimir Makarov  <vmakarov@redhat.com>

* ira-color.c (assign_hard_reg): Remove unecessary bitmap check.
Add assert.

Co-Authored-By: Vladimir Makarov <vmakarov@redhat.com>
From-SVN: r224944

9 years agofold-const.c (fold_binary_loc): Move simplification of (X <<>> C1) & C2 ...
Richard Biener [Thu, 25 Jun 2015 14:02:35 +0000 (14:02 +0000)]
fold-const.c (fold_binary_loc): Move simplification of (X <<>> C1) & C2 ...

2015-06-25  Richard Biener  <rguenther@suse.de>

* fold-const.c (fold_binary_loc): Move simplification of
(X <<>> C1) & C2 ...
* match.pd: ... here.

* gcc.dg/tree-ssa/pr52631.c: Disable forwprop.

From-SVN: r224943

9 years ago* lto-streamer-out.c (DFS::hash_scc): Fix typos & formatting glitches.
Eric Botcazou [Thu, 25 Jun 2015 13:58:43 +0000 (13:58 +0000)]
* lto-streamer-out.c (DFS::hash_scc): Fix typos & formatting glitches.

From-SVN: r224942

9 years agomatch.pd: Add patterns for vec_conds between 1 and 0.
Richard Sandiford [Thu, 25 Jun 2015 13:25:09 +0000 (13:25 +0000)]
match.pd: Add patterns for vec_conds between 1 and 0.

gcc/
* match.pd: Add patterns for vec_conds between 1 and 0.

gcc/testsuite/
* gcc.target/aarch64/vect-add-sub-cond.c: New test.

From-SVN: r224941

9 years agotree-vect-stmts.c (vectorizable_conversion): Do not set STMT_VINFO_VEC_STMT for SLP.
Richard Biener [Thu, 25 Jun 2015 12:36:12 +0000 (12:36 +0000)]
tree-vect-stmts.c (vectorizable_conversion): Do not set STMT_VINFO_VEC_STMT for SLP.

2015-06-25  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_conversion): Do not set
STMT_VINFO_VEC_STMT for SLP.
(vectorizable_store): Likewise.
(vectorizable_load): Likewise.
(vect_transform_stmt): Catch SLP vectorization clobbering
STMT_VINFO_VEC_STMT.

From-SVN: r224939

9 years agotree-vect-slp.c (vect_detect_hybrid_slp_stmts): Improve debug dumping.
Richard Biener [Thu, 25 Jun 2015 12:34:46 +0000 (12:34 +0000)]
tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Improve debug dumping.

2015-06-25  Richard Biener  <rguenther@suse.de>

* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Improve debug
dumping.
(vect_create_mask_and_perm): Do not set STMT_VINFO_VEC_STMT and
cleanup resulting dead code and parameters.
(vect_transform_slp_perm_load): Adjust.

* gfortran.dg/vect/vect-9.f90: New testcase.

From-SVN: r224938

9 years agobfin.c (bfin_expand_prologue): Set current_function_static_stack_size if flag_stack_u...
Nick Clifton [Thu, 25 Jun 2015 12:33:14 +0000 (12:33 +0000)]
bfin.c (bfin_expand_prologue): Set current_function_static_stack_size if flag_stack_usage_info is set.

     * config/bfin/bfin.c (bfin_expand_prologue): Set
     current_function_static_stack_size if flag_stack_usage_info is
     set.
     * config/ft32/ft32.c (ft32_expand_prologue): Likewise.
     * config/h8300/h8300.c (h8300_expand_prologue): Likewise.
     * config/iq2000/iq2000.c (iq2000_expand_prologue): Likewise.
     * config/m32c/m32c.c (m32c_emit_prologue): Likewise.

test * gcc.dg/stack-usage-1.c: Add SIZE values for V850, MN10300,
     H8300 and M32R targets.

From-SVN: r224937

9 years agoRemove 'unsigned' in header comment canonicalize_loop_ivs
Tom de Vries [Thu, 25 Jun 2015 11:17:03 +0000 (11:17 +0000)]
Remove 'unsigned' in header comment canonicalize_loop_ivs

2015-06-25  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-loop-manip.c (canonicalize_loop_ivs): Don't claim in header
comment that the generated IV is unsigned.

From-SVN: r224936

9 years agore PR target/29693 (ICE while compiling gcc-3.4.3 with gcc-4.1.1)
Ramana Radhakrishnan [Thu, 25 Jun 2015 08:18:19 +0000 (08:18 +0000)]
re PR target/29693 (ICE while compiling gcc-3.4.3 with gcc-4.1.1)

Fix PR target/29693

2015-06-25  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/29693
* config/arm/arm.c (arm_dbx_register_number): Return
DWARF_FRAME_REGISTERS by default.

From-SVN: r224932

9 years agoVerify reused dominators info in calculate_dominance_info
Tom de Vries [Thu, 25 Jun 2015 06:43:14 +0000 (06:43 +0000)]
Verify reused dominators info in calculate_dominance_info

2015-06-25  Tom de Vries  <tom@codesourcery.com>

* dominance.c (calculate_dominance_info): Fix verify_dominators call
argument.  Call verify_dominator when reusing dominator info.

From-SVN: r224931

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

From-SVN: r224930

9 years agoThe problem is that diagnostic_action_after_output tries to delete the active pretty...
Manuel López-Ibáñez [Wed, 24 Jun 2015 22:16:42 +0000 (22:16 +0000)]
The problem is that diagnostic_action_after_output tries to delete the active pretty-printer which tries to delete its output_buffer...

The problem is that diagnostic_action_after_output tries to delete the active
pretty-printer which tries to delete its output_buffer, which is normally
dynamically allocated via placement-new, but the output_buffer used by the
error_buffer of Fortran is statically allocated. Being statically allocated
simplifies a lot pushing/poping several instances of error_buffer.

The solution is to reset the active output_buffer back to the default one
before calling diagnostic_action_after_output. This is a bit ugly, because this
function does use the output_buffer, however, at the point that Fortran calls
it, both are in an equivalent state, thus there is no visible difference.

gcc/testsuite/ChangeLog:

2015-06-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/66528
* gfortran.dg/maxerrors.f90: New test.

gcc/fortran/ChangeLog:

2015-06-24  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR fortran/66528
* error.c (gfc_warning_check): Restore the default output_buffer
before calling diagnostic_action_after_output.
(gfc_error_check): Likewise.
(gfc_diagnostics_init): Add comment.

From-SVN: r224926

9 years agore PR target/66563 (ICE (segmentation fault) on sh4-linux-gnu)
Kaz Kojima [Wed, 24 Jun 2015 22:11:04 +0000 (22:11 +0000)]
re PR target/66563 (ICE (segmentation fault) on sh4-linux-gnu)

PR target/66563
* [SH] Add a new operand to GOTaddr2picreg so to avoid CSE.  Modify caller
  of gen_GOTaddr2picreg.

From-SVN: r224925

9 years ago* gcc.dg/torture/pr66345.c: Fix assumption about size_t type.
DJ Delorie [Wed, 24 Jun 2015 21:18:02 +0000 (17:18 -0400)]
* gcc.dg/torture/pr66345.c: Fix assumption about size_t type.

From-SVN: r224924

9 years agobasic_string.h (basic_string<>::front()): Add !empty debug check.
François Dumont [Wed, 24 Jun 2015 20:12:05 +0000 (20:12 +0000)]
basic_string.h (basic_string<>::front()): Add !empty debug check.

2015-06-24  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/basic_string.h (basic_string<>::front()): Add !empty
debug check.
(basic_string<>::back()): Likewise.
(basic_string<>::pop_back()): Likewise.

From-SVN: r224919

9 years agore PR c++/66647 (ICE: in instantiate_class_template_1, at cp/pt.c:9254)
Jason Merrill [Wed, 24 Jun 2015 19:59:28 +0000 (15:59 -0400)]
re PR c++/66647 (ICE: in instantiate_class_template_1, at cp/pt.c:9254)

PR c++/66647
* pt.c (dependent_type_p_r): Check for dependent alias template
specialization sooner.

From-SVN: r224917

9 years ago[AArch64] Fix another ICE with -mgeneral-regs-only
Alan Lawrence [Wed, 24 Jun 2015 16:26:38 +0000 (16:26 +0000)]
[AArch64] Fix another ICE with -mgeneral-regs-only

gcc/:

* config/aarch64/aarch64.md (<optab><fcvt_target><GPF:mode>2):
Condition on TARGET_FLOAT.

gcc/testsuite/:

* gcc.target/aarch64/mgeneral-regs_3.c: New.

From-SVN: r224910

9 years ago[AArch64 Doc] Clarify feature modifiers {no,}{fp,simd,crypto}
Alan Lawrence [Wed, 24 Jun 2015 16:15:53 +0000 (16:15 +0000)]
[AArch64 Doc] Clarify feature modifiers {no,}{fp,simd,crypto}

gcc:

* doc/invoke.texi: Clarify AArch64 feature modifiers (no)fp, (no)simd
and (no)crypto.

From-SVN: r224909

9 years ago[AArch64] Fix ICES with -mgeneral-regs-only / -march=...+nofp
Alan Lawrence [Wed, 24 Jun 2015 16:13:28 +0000 (16:13 +0000)]
[AArch64] Fix ICES with -mgeneral-regs-only / -march=...+nofp

gcc/ChangeLog:

* config/aarch64/aarch64-protos.h (aarch64_err_no_fpadvsimd): New.

* config/aarch64/aarch64.md (mov<mode>/GPF, movtf): Use
aarch64_err_no_fpadvsimd.

* config/aarch64/aarch64.c (aarch64_err_no_fpadvsimd): New.
(aarch64_layout_arg, aarch64_init_cumulative_args): Use
aarch64_err_no_fpadvsimd if !TARGET_FLOAT and we need FP regs.
(aarch64_expand_builtin_va_start, aarch64_setup_incoming_varargs):
Turn error into assert, test TARGET_FLOAT.
(aarch64_gimplify_va_arg_expr): Use aarch64_err_no_fpadvsimd, test
TARGET_FLOAT.

gcc/testsuite/ChangeLog:

* gcc.target/aarch64/mgeneral-regs_1.c: New file.
* gcc.target/aarch64/mgeneral-regs_2.c: New file.
* gcc.target/aarch64/nofp_1.c: New file.

From-SVN: r224908

9 years ago* dwarf2out.c (gen_formal_parameter_die): Remove assert.
Aldy Hernandez [Wed, 24 Jun 2015 15:58:13 +0000 (15:58 +0000)]
* dwarf2out.c (gen_formal_parameter_die): Remove assert.

From-SVN: r224907

9 years agore PR c++/66501 (Default move assignment does not move array members)
Jason Merrill [Wed, 24 Jun 2015 15:40:08 +0000 (11:40 -0400)]
re PR c++/66501 (Default move assignment does not move array members)

PR c++/66501
* class.c (type_has_nontrivial_assignment): Remove.
* cp-tree.h: Remove declaration.
* init.c (vec_copy_assign_is_trivial): New.
(build_vec_init): Use it.

From-SVN: r224904

9 years agoImplement N3928 - Extending static_assert
Edward Smith-Rowland [Wed, 24 Jun 2015 15:27:04 +0000 (15:27 +0000)]
Implement N3928 - Extending static_assert

cp/

2015-06-24  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement N3928 - Extending static_assert
* parser.c (cp_parser_static_assert): Support static_assert with
no message string.  Supply an empty string in this case.
* semantics.c (finish_static_assert): Don't try to print a message if
the message strnig is empty.

testsuite/

2015-06-24  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement N3928 - Extending static_assert
* g++.dg/cpp0x/static_assert8.C: Adjust.
* g++.dg/cpp0x/static_assert12.C: New.
* g++.dg/cpp0x/static_assert13.C: New.
* g++.dg/cpp1y/static_assert1.C: New.
* g++.dg/cpp1y/static_assert2.C: New.
* g++.dg/cpp1z/static_assert-nomsg.C: New.

From-SVN: r224903

9 years agore PR c++/65750 (misinterpret in a virtual member function with a C++11 style functio...
Adam Butcher [Wed, 24 Jun 2015 15:11:06 +0000 (16:11 +0100)]
re PR c++/65750 (misinterpret in a virtual member function with a C++11 style function signature)

/cp
2015-06-24  Adam Butcher  <adam@jessamine.co.uk>

PR c++/65750
* parser.c (cp_parser_simple_type_specifier): Don't synthesize
implicit template parm if 'auto' is a placeholder for trailing
return type.

/testsuite
2015-06-24  Adam Butcher  <adam@jessamine.co.uk>

PR c++/65750
* g++.dg/cpp0x/trailing11.C: New.

From-SVN: r224901

9 years agotree-vect-slp.c (vect_build_slp_tree_1): Init vectype.
Ilya Enkovich [Wed, 24 Jun 2015 14:09:46 +0000 (14:09 +0000)]
tree-vect-slp.c (vect_build_slp_tree_1): Init vectype.

* tree-vect-slp.c (vect_build_slp_tree_1): Init vectype.

From-SVN: r224900

9 years agoSkip tests for inappropriate multilibs.
Ramana Radhakrishnan [Wed, 24 Jun 2015 14:08:03 +0000 (14:08 +0000)]
Skip tests for inappropriate multilibs.

2015-06-24  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* gcc.target/arm/fixed_float_conversion.c: Skip for inappropriate
          multilibs.
* gcc.target/arm/memset-inline-10.c: Likewise.
* gcc.target/arm/pr58784.c: Likewise.
* gcc.target/arm/pr59985.C: Likewise.
* gcc.target/arm/vfp-1.c: Likewise and test only for the non fma cases.

From-SVN: r224899

9 years ago[PATCH][AARCH64]Add ACLE predefined marcos: __ARM_ALIGN_MAX_PWR and
Renlin Li [Wed, 24 Jun 2015 13:36:53 +0000 (13:36 +0000)]
[PATCH][AARCH64]Add ACLE predefined marcos: __ARM_ALIGN_MAX_PWR and
__ARM_ALIGN_MAX_STACK_PWR

gcc/

2015-06-24 Renlin Li <renlin.li@arm.com>

* config/aarch64/aarch64.h(TARGET_CPU_CPP_BUILTINS): Add
__ARM_ALIGN_MAX_PWR, __ARM_ALIGN_MAX_STACK_PWR.

gcc/testsuite/

2015-06-24  Renlin Li  <renlin.li@arm.com>

* gcc.target/aarch64/arm_align_max_pwr.c: New.
* gcc.target/aarch64/arm_align_max_stack_pwr.c: New.

From-SVN: r224898

9 years agoget_neg.cc: Adjust dg-error line numbers.
Paolo Carlini [Wed, 24 Jun 2015 12:18:29 +0000 (12:18 +0000)]
get_neg.cc: Adjust dg-error line numbers.

2015-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
dg-error line numbers.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
Likewise.

From-SVN: r224897

9 years agoRevert fix for PR c++/30044
Patrick Palka [Wed, 24 Jun 2015 12:10:57 +0000 (12:10 +0000)]
Revert fix for PR c++/30044

gcc/cp/ChangeLog:

Revert:
2015-06-23  Patrick Palka  <ppalka@gcc.gnu.org>

PR c++/30044
* parser.c (cp_parser_template_parameter_list): Update
current_template_parms right after processing a paramater.
* pt.c (template_parms_to_args): Remove obsolete hack for
giving template template arguments the proper level.
(check_default_tmpl_args): Account for tested template
parameter_lists.
(splite_late_return_type): Remove obsolete hack for giving
template template arguments the proper level.

gcc/testsuite/ChangeLog:

Revert:
2015-06-23  Patrick Palka  <ppalka@gcc.gnu.org>

PR c++/30044
* g++.dg/cpp0x/auto45.C: New test.
* g++.dg/template/pr30044.C: New test.
* g++.dg/template/crash83.C: Accept any error string.
* g++.dg/cpp0x/variadic18.C: Adjust to not shadow template
parameters.
* g++.dg/cpp0x/variadic18.C: Likewise
* g++.dg/template/canon-type-13.C: Likewise.
* g++.old-deja/g++.pt/ttp42.C: Likewise.

From-SVN: r224896

9 years agogenmatch.c (enum tree_code): Add VIEW_CONVERT[012].
Richard Biener [Wed, 24 Jun 2015 10:53:53 +0000 (10:53 +0000)]
genmatch.c (enum tree_code): Add VIEW_CONVERT[012].

2015-06-24  Richard Biener  <rguenther@suse.de>

* genmatch.c (enum tree_code): Add VIEW_CONVERT[012].
(main): Likewise.
(lower_opt_convert): Support lowering of conditional view_convert.
(parser::parse_operation): Likewise.
(parser::parse_for): Likewise.

From-SVN: r224893

9 years agore PR c++/65811 (ice in vague_linkage_p)
Paolo Carlini [Wed, 24 Jun 2015 09:21:45 +0000 (09:21 +0000)]
re PR c++/65811 (ice in vague_linkage_p)

/cp
2015-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65811
* decl.c (duplicate_decls): Adjust DECL_COMDAT of newdecl.

/testsuite
2015-06-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/65811
* g++.dg/other/linkage2.C: New.

From-SVN: r224888

9 years ago[PATCH]Use "unsigned int" to hold alignment in emit_local function.
Renlin Li [Wed, 24 Jun 2015 08:35:20 +0000 (08:35 +0000)]
[PATCH]Use "unsigned int" to hold alignment in emit_local function.

gcc/

2015-06-24  Renlin Li  <renlin.li@arm.com>

* varasm.c (emit_local): Use unsigned int for align variable.

From-SVN: r224880

9 years agore PR target/63408 (GCC emits incorrect fixed->fp conversion instruction on Cortex...
Ramana Radhakrishnan [Wed, 24 Jun 2015 08:28:08 +0000 (08:28 +0000)]
re PR target/63408 (GCC emits incorrect fixed->fp conversion instruction on Cortex-M4 target)

Fix PR target/63408

The attached patch fixes PR target/63408 and adds a regression test
for the same. The problem is essentially that
vfp3_const_double_for_fract_bits() needs to be aware that negative
values cannot be used in this context.

Tested with a bootstrap and regression test run on armhf. Applied.

2015-06-24  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/63408
* config/arm/arm.c (vfp3_const_double_for_fract_bits): Disable
for negative numbers.

2015-06-24  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/63408
* gcc.target/arm/pr63408.c: New test.

From-SVN: r224879

9 years ago[PATCH][testsuite] Fix TORTURE_OPTIONS overriding
James Greenhalgh [Wed, 24 Jun 2015 08:22:35 +0000 (08:22 +0000)]
[PATCH][testsuite] Fix TORTURE_OPTIONS overriding

gcc/testsuite/

        * lib/c-torture.exp: Don't call check_effective_target_lto
before setting up environment correctly.
        * lib/gcc-dg.exp: Likewise, and protect
gcc_force_conventional_output.

From-SVN: r224878

9 years agoPR66306: Fix match_dups on swapped operands.
Andreas Krebbel [Wed, 24 Jun 2015 06:50:53 +0000 (06:50 +0000)]
PR66306: Fix match_dups on swapped operands.

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    PR rtl-optimization/66306
    * reload.c (find_reloads): Swap the match_dup info for
    commutative operands.

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    PR rtl-optimization/66306
    * gcc.target/s390/pr66306.c: New test.

From-SVN: r224875

9 years agoS/390: Switch mode attribute to bhfgq for vec scatter
Andreas Krebbel [Wed, 24 Jun 2015 06:47:47 +0000 (06:47 +0000)]
S/390: Switch mode attribute to bhfgq for vec scatter

gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/vx-builtins.md
("vec_scatter_element<mode>_<non_vec_int>")
("vec_scatter_element<V_HW_64:mode>_SI"): Replace gf mode
attribute with bhfgq.

From-SVN: r224874

9 years agoS/390: Add proper comments to vpopct builtins for automated testsuite generation.
Andreas Krebbel [Wed, 24 Jun 2015 06:46:27 +0000 (06:46 +0000)]
S/390: Add proper comments to vpopct builtins for automated testsuite generation.

gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390-builtins.def: Fix vpopct instruction comments.

From-SVN: r224873

9 years agoS/390: Make builtin creation conditional.
Andreas Krebbel [Wed, 24 Jun 2015 06:44:59 +0000 (06:44 +0000)]
S/390: Make builtin creation conditional.

gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390-builtin-types.def: Add flag to indicate the
options under which the function type is needed.
* config/s390/s390-builtins.def: Add flag to indicate the options
under which the builtin is enabled.
* config/s390/s390-builtins.h: Add flags parameter to macro
definitions.
(bflags_for_builtin): New function.
(flags_for_builtin): Renamed to ...
(opflags_for_builtin): ... this.
* config/s390/s390-c.c (s390_resolve_overloaded_builtin): Rename
flags_for_builtin to bflags_for_builtin and
flags_overloaded_builtin_var to opflags_overloaded_builtin_var.
* config/s390/s390.c: Add initialization of bflags_builtin and
opflags_builtin arrays.
Remove code for flags_builtin.
(s390_init_builtins): Only create builtin function types if one of
their flags is active.
Only create builtins if all of their flags are active.
(s390_expand_builtin): Rename flags_for_builtin to
opflags_for_builtin.

From-SVN: r224872

9 years agoS/390: Remove internal builtins from vecintrin.h.
Andreas Krebbel [Wed, 24 Jun 2015 06:42:52 +0000 (06:42 +0000)]
S/390: Remove internal builtins from vecintrin.h.

gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * config/s390/vecintrin.h: Remove internal builtins.

From-SVN: r224871

9 years agoS/390: Fix s390_secondary_reload register class check.
Andreas Krebbel [Wed, 24 Jun 2015 06:41:10 +0000 (06:41 +0000)]
S/390: Fix s390_secondary_reload register class check.

gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * config/s390/s390.c (s390_secondary_reload): Fix check for
    GENERAL_REGS register class.

From-SVN: r224870

9 years agoS/390: Disable effect of support_vector_misalignment
Andreas Krebbel [Wed, 24 Jun 2015 06:39:55 +0000 (06:39 +0000)]
S/390: Disable effect of support_vector_misalignment

gcc/ChangeLog:

2015-06-24  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

    * config/s390/s390.c (s390_support_vector_misalignment): Call
    default implementation for !TARGET_VX.

From-SVN: r224869

9 years agoS/390: Limit legitimate_constant_p changes to TARGET_VX.
Andreas Krebbel [Wed, 24 Jun 2015 06:38:32 +0000 (06:38 +0000)]
S/390: Limit legitimate_constant_p changes to TARGET_VX.

gcc/ChangeLog:

2015-06-23  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.c (s390_legitimate_constant_p): Add
TARGET_VX check.

From-SVN: r224868

9 years agoS/390 Vector ABI GNU Attribute.
Andreas Krebbel [Wed, 24 Jun 2015 06:36:46 +0000 (06:36 +0000)]
S/390 Vector ABI GNU Attribute.

gcc/
* config/s390/s390.c (s390_vector_abi): New variable definition.
(s390_check_type_for_vector_abi): New function.
(TARGET_ASM_FILE_END): New macro definition.
(s390_asm_file_end): New function.
(s390_function_arg): Call s390_check_type_for_vector_abi.
(s390_gimplify_va_arg): Likewise.
* configure: Regenerate.
* configure.ac: Check for .gnu_attribute Binutils feature.

gcc/testsuite/
* gcc.target/s390/vector/vec-abi-1.c: Add gnu attribute check.
* gcc.target/s390/vector/vec-abi-attr-1.c: New test.
* gcc.target/s390/vector/vec-abi-attr-2.c: New test.
* gcc.target/s390/vector/vec-abi-attr-3.c: New test.
* gcc.target/s390/vector/vec-abi-attr-4.c: New test.
* gcc.target/s390/vector/vec-abi-attr-5.c: New test.
* gcc.target/s390/vector/vec-abi-attr-6.c: New test.

From-SVN: r224867

9 years agore PR target/65803 (blackfin: internal compiler error: segment fault linux kernel)
Chen Gang [Wed, 24 Jun 2015 04:22:39 +0000 (04:22 +0000)]
re PR target/65803 (blackfin: internal compiler error: segment fault linux kernel)

PR target/65803
* config/bfin/bfin.c (hwloop_optimize): Initialize
JUMP_LABEL for newly created jump.

        PR target/65803
* gcc.c-torture/pr65803.c: New test.

From-SVN: r224866

9 years agoAdd PR information to ChangeLog entries for previous change
Patrick Palka [Wed, 24 Jun 2015 01:27:17 +0000 (01:27 +0000)]
Add PR information to ChangeLog entries for previous change

From-SVN: r224865

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

From-SVN: r224862

9 years ago[PATCH] Fix PR c++/30044
Patrick Palka [Tue, 23 Jun 2015 23:41:51 +0000 (23:41 +0000)]
[PATCH] Fix PR c++/30044

gcc/cp/ChangeLog:

* parser.c (cp_parser_template_parameter_list): Update
current_template_parms right after processing a paramater.
* pt.c (template_parms_to_args): Remove obsolete hack for
giving template template arguments the proper level.
(check_default_tmpl_args): Account for tested template
parameter_lists.
(splite_late_return_type): Remove obsolete hack for giving
template template arguments the proper level.

gcc/testsuite/ChangeLog

* g++.dg/cpp0x/auto45.C: New test.
* g++.dg/template/pr30044.C: New test.
* g++.dg/template/crash83.C: Accept any error string.
* g++.dg/cpp0x/variadic18.C: Adjust to not shadow template
parameters.
* g++.dg/cpp0x/variadic18.C: Likewise
* g++.dg/template/canon-type-13.C: Likewise.
* g++.old-deja/g++.pt/ttp42.C: Likewise.

From-SVN: r224859

9 years agocollect-utils.c (collect_wait): Unlink the response file here instead of...
Tristan Gingold [Tue, 23 Jun 2015 20:48:07 +0000 (20:48 +0000)]
collect-utils.c (collect_wait): Unlink the response file here instead of...

* collect-utils.c (collect_wait): Unlink the response file here
instead of...
(do_wait): ...here.
(utils_cleanup): ...and here.

From-SVN: r224858

9 years agoarray: Include <array>.
François Dumont [Tue, 23 Jun 2015 19:51:02 +0000 (19:51 +0000)]
array: Include <array>.

2015-06-23  François Dumont  <fdumont@gcc.gnu.org>

* include/debug/array: Include <array>. Add version namespace when
specializing tuple interface to array. Add specialization for
__is_tuple_like_impl.
* include/profile/array: Likewise.
* include/std/array: Include <utility>. Add specialization for
__is_tuple_like_impl.
* include/std/tuple
(__is_tuple_like_impl<>, __is_tuple_like_impl<pair>): Move...
* include/std/utility: ... here. Include <type_traits>.
* testsuite/23_containers/array/tuple_interface/get_debug_neg.cc: Adjust
dg-error line number.
* testsuite/23_containers/array/tuple_interface/
tuple_element_debug_neg.cc: Likewise.

From-SVN: r224857

9 years agoc-common.c: Don't include target-def.h.
Richard Sandiford [Tue, 23 Jun 2015 18:26:49 +0000 (18:26 +0000)]
c-common.c: Don't include target-def.h.

gcc/c-family/
* c-common.c: Don't include target-def.h.

gcc/
* df-scan.c: Don't include target-def.h.
* targhooks.c: Likewise.
* config/arm/arm-c.c: Likewise.
* config/i386/i386-c.c: Likewise.
* config/nds32/nds32-cost.c: Likewise.
* config/nds32/nds32-fp-as-gp.c: Likewise.
* config/nds32/nds32-intrinsic.c: Likewise.
* config/nds32/nds32-isr.c: Likewise.
* config/nds32/nds32-md-auxiliary.c: Likewise.
* config/nds32/nds32-memory-manipulation.c: Likewise.
* config/nds32/nds32-pipelines-auxiliary.c: Likewise.
* config/nds32/nds32-predicates.c: Likewise.

From-SVN: r224856

9 years agoconfigure.ac: Fix check for header <sys/sysctl.h>.
Andreas Tobler [Tue, 23 Jun 2015 17:59:59 +0000 (19:59 +0200)]
configure.ac: Fix check for header <sys/sysctl.h>.

2015-06-23  Andreas Tobler  <andreast@gcc.gnu.org>

    * configure.ac: Fix check for header <sys/sysctl.h>.
    * configure: Regenerate.
    * config.h.in: Likewise.

From-SVN: r224855

9 years agolib1funcs.S (aeabi_idiv0, [...]): Add CFI entries.
James Lemke [Tue, 23 Jun 2015 17:45:18 +0000 (17:45 +0000)]
lib1funcs.S (aeabi_idiv0, [...]): Add CFI entries.

2015-06-23  James Lemke  <jwlemke@codesourcery.com>

libgcc/config/arm/
* lib1funcs.S (aeabi_idiv0, aeabi_ldiv0): Add CFI entries.

From-SVN: r224854

9 years agoc-common.c (warn_logical_operator): Use tree_int_cst_equal when comparing INTEGER_CSTs.
Marek Polacek [Tue, 23 Jun 2015 17:10:10 +0000 (17:10 +0000)]
c-common.c (warn_logical_operator): Use tree_int_cst_equal when comparing INTEGER_CSTs.

* c-common.c (warn_logical_operator): Use tree_int_cst_equal
when comparing INTEGER_CSTs.

* c-c++-common/Wlogical-op-3.c: New test.

From-SVN: r224853

9 years agore PR c++/66254 (Member function shadowing enum classes)
Paolo Carlini [Tue, 23 Jun 2015 15:42:31 +0000 (15:42 +0000)]
re PR c++/66254 (Member function shadowing enum classes)

2015-06-23  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/66254
* g++.dg/cpp0x/scoped_enum5.C: New.

From-SVN: r224851

9 years agoUse abort in parloops-exit-first-loop-alt-{3,4}.c
Tom de Vries [Tue, 23 Jun 2015 15:02:25 +0000 (15:02 +0000)]
Use abort in parloops-exit-first-loop-alt-{3,4}.c

2015-06-23  Tom de Vries  <tom@codesourcery.com>

* testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c (main): Use
abort.
* testsuite/libgomp.c/parloops-exit-first-loop-alt-4.c (main): Same.

From-SVN: r224849

9 years agore PR c++/65879 (Bogus linkage errors for member class of anonymous class)
Jason Merrill [Tue, 23 Jun 2015 14:08:30 +0000 (10:08 -0400)]
re PR c++/65879 (Bogus linkage errors for member class of anonymous class)

PR c++/65879
* decl.c (grokfndecl): Check the linkage of ctype, not just
TYPE_ANONYMOUS_P.
* tree.c (no_linkage_check): Skip the 'this' pointer.

From-SVN: r224844

9 years agore PR c++/66501 (Default move assignment does not move array members)
Jason Merrill [Tue, 23 Jun 2015 14:08:25 +0000 (10:08 -0400)]
re PR c++/66501 (Default move assignment does not move array members)

PR c++/66501
* class.c (type_has_nontrivial_assignment): New.
* init.c (build_vec_init): Use it.
* cp-tree.h: Declare it.
* method.c (trivial_fn_p): Templates aren't trivial.

From-SVN: r224843

9 years agore PR c++/66542 ([C++11] Can create static variable of type that has deleted destructor)
Jason Merrill [Tue, 23 Jun 2015 14:08:19 +0000 (10:08 -0400)]
re PR c++/66542 ([C++11] Can create static variable of type that has deleted destructor)

PR c++/66542
* decl.c (expand_static_init): Make sure the destructor is callable
here even if we have an initializer.

From-SVN: r224842

9 years agore PR tree-optimization/66636 (ICE in vect_get_vec_def_for_stmt_copy, at tree-vect...
Richard Biener [Tue, 23 Jun 2015 13:56:34 +0000 (13:56 +0000)]
re PR tree-optimization/66636 (ICE in vect_get_vec_def_for_stmt_copy, at tree-vect-stmts.c:1590)

2015-06-23  Richard Biener  <rguenther@suse.de>

PR tree-optimization/66636
* tree-vect-stmts.c (vectorizable_store): Properly compute the
def type for further defs for strided stores.

* gcc.dg/vect/pr66636.c: New testcase.

From-SVN: r224841

9 years agonvptx.md (sel_true<mode>, [...]): New conditional selects.
Nathan Sidwell [Tue, 23 Jun 2015 13:05:15 +0000 (13:05 +0000)]
nvptx.md (sel_true<mode>, [...]): New conditional selects.

* config/nvptx/nvptx.md (sel_true<mode>, sel_false<mode>): New
conditional selects.
(setcc_int<mode>, setcc_float<mode>): Reformat.

From-SVN: r224839

9 years agomatch.pd ((x + y) - (x | y) -> x & y, (x + y) - (x & y) -> x | y): New patterns.
Marek Polacek [Tue, 23 Jun 2015 10:09:05 +0000 (10:09 +0000)]
match.pd ((x + y) - (x | y) -> x & y, (x + y) - (x & y) -> x | y): New patterns.

* match.pd ((x + y) - (x | y) -> x & y,
(x + y) - (x & y) -> x | y): New patterns.

* gcc.dg/fold-minus-4.c: New test.
* gcc.dg/fold-minus-5.c: New test.
* c-c++-common/ubsan/overflow-add-5.c: New test.

From-SVN: r224834

9 years ago[Vax testsuite] Fixup to revision 224672, add missing testcase.
James Greenhalgh [Tue, 23 Jun 2015 10:06:01 +0000 (10:06 +0000)]
[Vax testsuite] Fixup to revision 224672, add missing testcase.

Add missing testcase from r224672.
2015-06-19  James Greenhalgh  <james.greenhalgh@arm.com>

* gcc.target/vax/bswapdi-1.c: New.

From-SVN: r224832

9 years agore PR fortran/64674 ([OOP] ICE in ASSOCIATE with class array)
Andre Vehreschild [Tue, 23 Jun 2015 09:07:22 +0000 (11:07 +0200)]
re PR fortran/64674 ([OOP] ICE in ASSOCIATE with class array)

gcc/fortran/ChangeLog:

2015-06-23  Andre Vehreschild  <vehre@gmx.de>

PR fortran/64674
* parse.c (parse_associate): Figure the rank and as of a
class array in an associate early.
* primary.c (gfc_match_varspec): Prevent setting the
dimension attribute on the sym for classes.
* resolve.c (resolve_variable): Correct the component
ref's type for associated variables.  Add a full array ref
when class array's are associated.
(resolve_assoc_var): Correct the type of the symbol,
when in the associate the expression's rank becomes scalar.
* trans-expr.c (gfc_conv_variable): Indirect ref needed for
allocatable associated objects.

gcc/testsuite/ChangeLog:

2015-06-23  Andre Vehreschild  <vehre@gmx.de>

PR fortran/64674
* gfortran.dg/associate_18.f08: New test.

From-SVN: r224827

9 years agore PR target/65711 (arm*-linux* "link" spec passes '-dynamic-linker' even for '-shared')
Ludovic Courtès [Tue, 23 Jun 2015 09:06:55 +0000 (09:06 +0000)]
re PR target/65711 (arm*-linux* "link" spec passes '-dynamic-linker' even for '-shared')

PR 65711
* config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Move
'-dynamic-linker' within %{!shared: ...}.

From-SVN: r224826

9 years ago* MAINTAINERS (Write After Approval): Add myself.
Ludovic Courtès [Tue, 23 Jun 2015 08:52:51 +0000 (08:52 +0000)]
* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r224825

9 years agore PR target/66560 (Fails to generate ADDSUBPS)
Uros Bizjak [Tue, 23 Jun 2015 08:50:12 +0000 (10:50 +0200)]
re PR target/66560 (Fails to generate ADDSUBPS)

PR target/66560
* config/i386/predicates.md (addsub_vm_operator): New predicate.
(addsub_vs_operator): Ditto.
(addsub_vs_parallel): Ditto.
* config/i386/sse.md (ssedoublemode): Add V4SF and V2DF modes.
(avx_addsubv4df3, avx_addsubv8sf3, sse3_addsubv2df3, sse3_addsubv4sf3):
Put minus RTX before plus and adjust vec_merge selector.
(*avx_addsubv4df3_1, *avx_addsubv4df3_1s, *sse3_addsubv2df3_1)
(*sse_addsubv2df3_1s, *avx_addsubv8sf3_1, *avx_addsubv8sf3_1s)
(*sse3_addsubv4sf3_1, *sse_addsubv4sf3_1s): Remove insn patterns.
(addsub vec_merge splitters): New combiner splitters.
(addsub vec_select/vec_concat splitters): Ditto.

testsuite/ChangeLog:

PR target/66560
* gcc.target/i386/pr66560-1.c: New test.
* gcc.target/i386/pr66560-2.c: Ditto.
* gcc.target/i386/pr66560-3.c: Ditto.
* gcc.target/i386/pr66560-4.c: Ditto.

From-SVN: r224824

9 years ago[nvptx] gcc/testsuite/gcc.target/nvptx/
Thomas Schwinge [Tue, 23 Jun 2015 08:17:23 +0000 (10:17 +0200)]
[nvptx] gcc/testsuite/gcc.target/nvptx/

We don't claim to support "K&R C" for nvptx, but needed this corresponding
functionality ("incomplete prototypes") to support the Fortran
libgomp/openacc_lib.h file.

gcc/testsuite/
* gcc.target/nvptx/nvptx.exp: New file.
* gcc.target/nvptx/proto-1.c: Likewise.

From-SVN: r224822

9 years agoupdate_version_svn: Add gcc-4_8-branch to IGNORE_BRANCHES.
Richard Biener [Tue, 23 Jun 2015 07:48:06 +0000 (07:48 +0000)]
update_version_svn: Add gcc-4_8-branch to IGNORE_BRANCHES.

2015-06-23  Richard Biener  <rguenther@suse.de>

* update_version_svn: Add gcc-4_8-branch to IGNORE_BRANCHES.

From-SVN: r224771

9 years agore PR tree-optimization/66449 (ICE: in build2_stat, at tree.c:4376 with -O3)
Bin Cheng [Tue, 23 Jun 2015 02:27:49 +0000 (02:27 +0000)]
re PR tree-optimization/66449 (ICE: in build2_stat, at tree.c:4376 with -O3)

PR tree-optimization/66449
* tree-ssa-loop-niter.c (loop_exits_before_overflow): Use
POINTER_PLUS_EXPR for pointers.

gcc/testsuite
PR tree-optimization/66449
* gcc.dg/vect/pr66449.c: New test.

From-SVN: r224769

9 years agortlanal.c (commutative_operand_precedence): Correct comments.
Alan Modra [Tue, 23 Jun 2015 01:05:04 +0000 (10:35 +0930)]
rtlanal.c (commutative_operand_precedence): Correct comments.

* rtlanal.c (commutative_operand_precedence): Correct comments.
* simplify-rtx.c (simplify_plus_minus_op_data_cmp): Delete forward
declaration.  Return an int.  Distinguish REG,REG return from
others.
(struct simplify_plus_minus_op_data): Make local to function.
(simplify_plus_minus): Don't set canonicalized if merely sorting
registers.  Avoid packing ops if nothing changes.  White space fixes.

From-SVN: r224768

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

From-SVN: r224767

9 years agoMAINTAINERS (OS Port Maintainers): Add myself.
Andreas Tobler [Mon, 22 Jun 2015 20:33:41 +0000 (22:33 +0200)]
MAINTAINERS (OS Port Maintainers): Add myself.

2015-06-22  Andreas Tobler  <andreast@gcc.gnu.org>

    * MAINTAINERS (OS Port Maintainers): Add myself.
    (Various Maintainers): Remove myself from libffi testsuite.

From-SVN: r224760

9 years agogcc.c (default_compilers): Pass "-o %g.s" to cc1 for headers even if -fdump-ada-spec...
Pierre-Marie de Rodat [Mon, 22 Jun 2015 19:19:48 +0000 (19:19 +0000)]
gcc.c (default_compilers): Pass "-o %g.s" to cc1 for headers even if -fdump-ada-spec is passed but not if...

* gcc.c (default_compilers): Pass "-o %g.s" to cc1 for headers even if
-fdump-ada-spec is passed but not if -fsyntax-only is.
cp/
* lang-specs.h: Pass "-o %g.s" to cc1plus for headers even if
-fdump-ada-spec is passed.

From-SVN: r224755

9 years agoc-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
Pierre-Marie de Rodat [Mon, 22 Jun 2015 19:16:58 +0000 (19:16 +0000)]
c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.

c-family/
* c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
* c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
(dump_ada_template): Skip partially specialized types.
cp/
* decl2.c (cpp_check): Deal with HAS_DEPENDENT_TEMPLATE_ARGS.

From-SVN: r224754

9 years agore PR bootstrap/63740 (GCC 4.9.2 bootstrap fails on ARM, haifa-sched.c:6507:1: intern...
Vladimir Makarov [Mon, 22 Jun 2015 18:45:58 +0000 (18:45 +0000)]
re PR bootstrap/63740 (GCC 4.9.2 bootstrap fails on ARM, haifa-sched.c:6507:1: internal compiler error: in lra_create)

2015-06-22  Vladimir Makarov  <vmakarov@redhat.com>

PR bootstrap/63740
* lra-lives.c (process_bb_lives): Check insn copying the same
reload pseudo and don't create a copy for it.

From-SVN: r224753