gcc.git
10 years agore PR middle-end/67401 (Incorrect expand of __atomic_compare_exchange_8 using __sync_...
John David Anglin [Mon, 14 Sep 2015 12:05:58 +0000 (12:05 +0000)]
re PR middle-end/67401 (Incorrect expand of __atomic_compare_exchange_8 using __sync_val_compare_and_swap_8)

PR middle-end/67401
* optabs.c (expand_atomic_compare_and_swap): Move result of emitting
sync_compare_and_swap_optab libcall to target_oval.

From-SVN: r227746

10 years agoc-opts.c (c_common_post_options): Set C++ standard earlier, before setting various...
Marek Polacek [Mon, 14 Sep 2015 10:40:51 +0000 (10:40 +0000)]
c-opts.c (c_common_post_options): Set C++ standard earlier, before setting various warnings.

* c-opts.c (c_common_post_options): Set C++ standard earlier, before
setting various warnings.

From-SVN: r227744

10 years agoc-common.c (warn_for_sign_compare): Cast to unsigned when shifting a negative value.
Marek Polacek [Mon, 14 Sep 2015 10:36:50 +0000 (10:36 +0000)]
c-common.c (warn_for_sign_compare): Cast to unsigned when shifting a negative value.

* c-common.c (warn_for_sign_compare): Cast to unsigned when shifting
a negative value.

* c-typeck.c (set_nonincremental_init_from_string): Use
HOST_WIDE_INT_M1U when shifting a negative value.

* rtlanal.c (split_double): Cast to unsigned when shifting a negative
value.
* sched-int.h (UNKNOWN_DEP_COST): Likewise.

From-SVN: r227743

10 years agoPR28901 -Wunused-variable ignores unused const initialised variables in C
Mark Wielaard [Mon, 14 Sep 2015 09:49:47 +0000 (09:49 +0000)]
PR28901 -Wunused-variable ignores unused const initialised variables in C

12 years ago it was decided that -Wunused-variable shouldn't warn about
static const variables because some code used const static char rcsid[]
strings which were never used but wanted in the code anyway. But as the
bug points out this hides some real bugs. These days the usage of rcsids
is not very popular anymore. So this patch changes the default to warn
about unused static const variables in C with -Wunused-variable. And it
adds a new option -Wno-unused-const-variable to turn this warning off.
For C++ this new warning is off by default, since const variables can be
used as #defines in C++. New testcases for the new defaults in C and C++
are included testing the new warning and suppressing it with an unused
attribute or using -Wno-unused-const-variable.

gcc/ChangeLog

       PR c/28901
       * toplev.c (check_global_declaration): Check and use
       warn_unused_const_variable.
       * doc/invoke.texi (Warning Options): Add -Wunused-const-variable.
       (-Wunused-variable): Remove non-constant. For C implies
       -Wunused-const-variable.
       (-Wunused-const-variable): New.

gcc/c-family/ChangeLog

       PR c/28901
       * c.opt (Wunused-variable): Option from common.opt.
       (Wunused-const-variable): New option.

gcc/cp/ChangeLog

       PR c/28901
       * cp-objcp-common.c (cxx_warn_unused_global_decl): Remove hard-coded
       VAR_P TREE_READONLY override.

gcc/testsuite/ChangeLog

       PR c/28901
       * g++.dg/warn/unused-variable-1.C: New test.
       * g++.dg/warn/unused-variable-2.C: Likewise.
       * gcc.dg/unused-4.c: Adjust warning for static const.
       * gcc.dg/unused-variable-1.c: New test.
       * gcc.dg/unused-variable-2.c: Likewise.

From-SVN: r227742

10 years agomatch-and-simplify.texi: Update for changed syntax of inner ifs and the new switch...
Richard Biener [Mon, 14 Sep 2015 09:40:17 +0000 (09:40 +0000)]
match-and-simplify.texi: Update for changed syntax of inner ifs and the new switch expression.

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

* doc/match-and-simplify.texi: Update for changed syntax
of inner ifs and the new switch expression.

From-SVN: r227741

10 years agohaswell.md: New file describing Haswell pipeline.
Yuri Rumyantsev [Mon, 14 Sep 2015 09:36:29 +0000 (09:36 +0000)]
haswell.md: New file describing Haswell pipeline.

* config/i386/haswell.md: New file describing Haswell pipeline.
* config/i386/i386.c (processor_alias_table): Use CPU_HASWELL for
haswell-like processors.
(ix86_reassociation_width): Increase reassociation width for 64-bit
Haswell processor family.
* config/i386/i386.md: Introduce haswell cpu and include new md file.

From-SVN: r227740

10 years agomatch-and-simplify.texi: Fixup some formatting issues and document the 's' flag.
Richard Biener [Mon, 14 Sep 2015 09:25:16 +0000 (09:25 +0000)]
match-and-simplify.texi: Fixup some formatting issues and document the 's' flag.

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

* doc/match-and-simplify.texi: Fixup some formatting issues
and document the 's' flag.

From-SVN: r227739

10 years agoUpdate my email address.
Bernd Schmidt [Mon, 14 Sep 2015 09:04:57 +0000 (09:04 +0000)]
Update my email address.

From-SVN: r227738

10 years agomisc.c (gnat_post_options): Issue a warning if generating STABS debugging information...
Pierre-Marie de Rodat [Mon, 14 Sep 2015 07:53:49 +0000 (07:53 +0000)]
misc.c (gnat_post_options): Issue a warning if generating STABS debugging information when not the default.

* gcc-interface/misc.c (gnat_post_options): Issue a warning if
generating STABS debugging information when not the default.

From-SVN: r227737

10 years agogigi.h (ref_filename): Delete.
Eric Botcazou [Mon, 14 Sep 2015 07:21:38 +0000 (07:21 +0000)]
gigi.h (ref_filename): Delete.

* gcc-interface/gigi.h (ref_filename): Delete.
(Sloc_to_locus): Add clean_column parameter defaulting to false.
(build_call_raise): Adjust comment.
(build_call_raise_range): Move around.
* gcc-interface/trans.c (ref_filename): Delete.
(gigi): Fix formatting.
(block_end_locus_sink): Delete.
(Sloc_to_locus1): Tidy up and reformat.  Rename into...
(Sloc_to_locus): ...this.  Add default for clean_colmun parameter.
(set_expr_location_from_node1): Rename into...
(set_expr_location_from_node): ...this.
(set_end_locus_from_node): Move around.  Adjust for renaming.
(Handled_Sequence_Of_Statements_to_gnu): Likewise.
(add_cleanup): Likewise.
* gcc-interface/utils2.c (expand_sloc): New static function.
(build_call_raise): Call it.
(build_call_raise_column): Likewise.
(build_call_raise_range): Likewise.  Move around.

From-SVN: r227736

10 years agoutils2.c (gnat_rewrite_reference): Add another acceptable pattern for the RHS.
Eric Botcazou [Mon, 14 Sep 2015 07:05:51 +0000 (07:05 +0000)]
utils2.c (gnat_rewrite_reference): Add another acceptable pattern for the RHS.

* gcc-interface/utils2.c (gnat_rewrite_reference) <COMPOUND_EXPR>: Add
another acceptable pattern for the RHS.

From-SVN: r227735

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

From-SVN: r227733

10 years agoprivate_type_3.f90: Require visibility.
David Edelsohn [Sun, 13 Sep 2015 18:54:59 +0000 (18:54 +0000)]
private_type_3.f90: Require visibility.

        * gfortran.dg/private_type_3.f90: Require visibility.
        * gfortran.dg/module_variable_2.f90: Same.
        * gfortran.dg/nested_forall_1.f: Same.
        * gfortran.dg/elemental_dependency_4.f90: Same.
        * gfortran.dg/bind_c_usage_25.f90: Same.
        * gfortran.dg/access_spec_1.f90: Same.
        * gfortran.dg/public_private_module_2.f90: Same.
        * gfortran.dg/host_assoc_variable_1.f90: Same.
        * gfortran.dg/public_private_module_6.f90: Same.
        * gfortran.dg/module_variable_1.f90: Same.
        * gfortran.dg/pr37286.f90: Same.
        * gfortran.dg/internal_pack_7.f90: Same.
        * gfortran.dg/submodule_10.f08: Same.
        * gfortran.dg/allocatable_function_8.f90: Same.
        * gfortran.dg/merge_init_expr_2.f90: Same.
        * gfortran.dg/class_37.f03: Same.
        * gfortran.dg/vect/fast-math-vect-8.f90: Same.
        * gfortran.dg/typebound_call_20.f03: Same.
        * gfortran.dg/proc_ptr_result_3.f90: Same.
        * gfortran.dg/pr32535.f90: Same.
        * gfortran.dg/typebound_proc_19.f90: Same.
        * gfortran.dg/initialization_10.f90: Same.
        * gfortran.dg/bind_c_usage_8.f03: Same.
        * gfortran.dg/pr61335.f90: Same.
        * gfortran.dg/elemental_dependency_5.f90: Same.
        * gfortran.dg/proc_ptr_3.f90: Same.
        * gfortran.dg/debug/pr46756.f: XFAIL on AIX.

From-SVN: r227730

10 years agotype-generic-1.c: Pass -DUNSAFE for Visium.
Eric Botcazou [Sun, 13 Sep 2015 17:18:50 +0000 (17:18 +0000)]
type-generic-1.c: Pass -DUNSAFE for Visium.

* gcc.dg/torture/type-generic-1.c: Pass -DUNSAFE for Visium.
* gcc.dg/Wno-frame-address.c: Skip for Visium.
* gcc.dg/loop-8.c: Likewise.

From-SVN: r227729

10 years agoconfig.gcc (visium-*-*): Enable --with-cpu option, accept gr5 and gr6 as possible...
Olivier Hainque [Sun, 13 Sep 2015 17:10:54 +0000 (17:10 +0000)]
config.gcc (visium-*-*): Enable --with-cpu option, accept gr5 and gr6 as possible values, defaulting to gr5.

* config.gcc (visium-*-*): Enable --with-cpu option, accept gr5 and
gr6 as possible values, defaulting to gr5.  Set target_cpu_default2.
* config/visium/visium.h (OPTION_DEFAULT_SPECS): Define.
(TARGET_CPU_gr5): Likewise.
(TARGET_CPU_gr6): Likewise.
(MULTILIB_DEFAULTS): Likewise.
* config/visium/t-visium (MULTILIB_OPTIONS): Request distinct variants
for mcpu=gr5 and mcpu=gr6.
(MULTILIB_DIRNAMES): Adjust accordingly.

From-SVN: r227728

10 years agotree-ssa-loop-im.c: remove typedefs that hide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:55:38 +0000 (16:55 +0000)]
tree-ssa-loop-im.c: remove typedefs that hide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* tree-ssa-loop-im.c (mem_ref_loc_p): Remove typedef.
(mem_ref_p): Likewise.
(outermost_indep_loop): Adjust.
(mem_ref_in_stmt): Likewise.
(determine_max_movement): Likewise.
(mem_ref_alloc): Likewise.
(record_mem_ref_loc): Likewise.
(set_ref_stored_in_loop): Likewise.
(mark_ref_stored): Likewise.
(gather_mem_refs_stmt): Likewise.
(mem_refs_may_alias_p): Likewise.
(for_all_locs_in_loop): Likewise.
(struct rewrite_mem_ref_loc): Likewise.
(rewrite_mem_refs): Likewise.
(struct first_mem_ref_loc_1): Likewise.
(first_mem_ref_loc): Likewise.
(struct sm_set_flag_if_changed): Likewise.
(execute_sm_if_changed_flag_set): Likewise.
(execute_sm): Likewise.
(hoist_memory_references):
(struct ref_always_accessed): Likewise.
(ref_always_accessed_p): Likewise.
(refs_independent_p): Likewise.
(record_dep_loop): Likewise.
(ref_indep_loop_p_1): Likewise.
(ref_indep_loop_p_2): Likewise.
(ref_indep_loop_p): Likewise.
(can_sm_ref_p): Likewise.
(find_refs_for_sm): Likewise.
(tree_ssa_lim_finalize): Likewise.

From-SVN: r227727

10 years agodwarf2out.c: remove typedefs that hide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:55:22 +0000 (16:55 +0000)]
dwarf2out.c: remove typedefs that hide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* dwarf2out.c (dw_attr_ref): Remove typedef.
(dw_line_info_ref): Likewise.
(pubname_ref): Likewise.
(dw_ranges_ref): Likewise.
(dw_ranges_by_label_ref): Likewise.
(comdat_type_node_ref): Likewise.
 (dw_line_info_table_struct): Rename to dw_line_info_table.
(get_AT): Adjust.
(get_AT_low_pc): Likewise.
(get_AT_hi_pc): Likewise.
(get_AT_string): Likewise.
(get_AT_flag): Likewise.
(get_AT_unsigned): Likewise.
(get_AT_ref): Likewise.
(get_AT_file): Likewise.
(remove_AT): Likewise.
(print_die): Likewise.
(check_die): Likewise.
(die_checksum): Likewise.
(attr_checksum_ordered): Likewise.
(struct checksum_attributes): Likewise.
(collect_checksum_attributes): Likewise.
(die_checksum_ordered): Likewise.
(same_die_p): Likewise.
(is_declaration_die): Likewise.
(clone_die): Likewise.
(clone_as_declaration): Likewise.
(copy_declaration_context): Likewise.
(break_out_comdat_types): Likewise.
(copy_decls_walk): Likewise.
(output_location_lists): Likewise.
(external_ref_hasher::hash): Likewise.
(optimize_external_refs_1): Likewise.
(build_abbrev_table): Likewise.
(size_of_die): Likewise.
(unmark_all_dies): Likewise.
(size_of_pubnames): Likewise.
(output_die_abbrevs): Likewise.
(output_die): Likewise.
(output_pubnames): Likewise.
(add_ranges_num): Likewise.
(add_ranges_by_labels): Likewise.
(add_high_low_attributes): Likewise.
(gen_producer_string): Likewise.
(dwarf2out_set_name): Likewise.
(new_line_info_table): Likewise.
(prune_unused_types_walk_attribs): Likewise.
(prune_unused_types_update_strings): Likewise.
(prune_unused_types): Likewise.
(resolve_addr): Likewise.
(optimize_location_lists_1): Likewise.
(index_location_lists): Likewise.
(dwarf2out_finish): Likewise.

From-SVN: r227726

10 years agodwarf2cfi.c: remove typedef that hides pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:55:05 +0000 (16:55 +0000)]
dwarf2cfi.c: remove typedef that hides pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* dwarf2cfi.c (dw_trace_info_ref): Remove typedef.

From-SVN: r227725

10 years agotree-vrp.c: remove typedefs that hide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:54:48 +0000 (16:54 +0000)]
tree-vrp.c: remove typedefs that hide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* tree-vrp.c (struct assert_locus_d): Rename to assert_locus.
(dump_asserts_for): Adjust.
(register_new_assert_for): Likewise.
(process_assert_insertions): Likewise.
(insert_range_assertions): Likewise.

From-SVN: r227724

10 years agotree-ssa-ter.c: remove typedefs that hide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:54:32 +0000 (16:54 +0000)]
tree-ssa-ter.c: remove typedefs that hide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* tree-ssa-ter.c (temp_expr_table_d): Rename to temp_expr_table
and remove typedef.
(new_temp_expr_table): Adjust.
(free_temp_expr_table): Likewise.
(version_to_be_replaced_p): Likewise.
(make_dependent_on_partition): Likewise.
(add_to_partition_kill_list): Likewise.
(remove_from_partition_kill_list): Likewise.
(add_dependence): Likewise.
(finished_with_expr): Likewise.
(process_replaceable): Likewise.
(kill_expr): Likewise.
(kill_virtual_exprs): Likewise.
(mark_replaceable): Likewise.
(find_replaceable_in_bb): Likewise.
(find_replaceable_exprs): Likewise.
(debug_ter): Likewise.

From-SVN: r227723

10 years agobt-load.c: remove typedefs that hide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:54:15 +0000 (16:54 +0000)]
bt-load.c: remove typedefs that hide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* bt-load.c (struct btr_def_group): Rename from btr_def_group_s.
(struct btr_user): Rename from btr_user_s.
(struct btr_def): Rename from btr_def_s.
(find_btr_def_group): Adjust.
(add_btr_def): Likewise.
(new_btr_user): Likewise.
(note_other_use_this_block): Likewise.
(compute_defs_uses_and_gen): Likewise.
(link_btr_uses): Likewise.
(build_btr_def_use_webs): Likewise.
(block_at_edge_of_live_range_p): Likewise.
(btr_def_live_range): Likewise.
(combine_btr_defs): Likewise.
(move_btr_def): Likewise.
(migrate_btr_def): Likewise.
(migrate_btr_defs): Likewise.

From-SVN: r227722

10 years agovar-tracking.c: remove typedef of shared_hash
Trevor Saunders [Sun, 13 Sep 2015 16:53:59 +0000 (16:53 +0000)]
var-tracking.c: remove typedef of shared_hash

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* var-tracking.c (shared_hash_def): Rename to shared_hash.
(shared_hash): Remove typedef.
(struct dataflow_set): Adjust.
(shared_hash_unshare): Likewise.
(dataflow_set_merge): Likewise.
(vt_initialize): Likewise.
(vt_finalize): Likewise.

From-SVN: r227721

10 years agovar-tracking.c: remove typedef of location_chain
Trevor Saunders [Sun, 13 Sep 2015 16:53:42 +0000 (16:53 +0000)]
var-tracking.c: remove typedef of location_chain

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* var-tracking.c (struct location_chain): Rename from
location_chain_def.
(struct variable_part): Adjust.
(variable_htab_free): Likewise.
(unshare_variable): Likewise.
(get_init_value): Likewise.
(get_addr_from_local_cache): Likewise.
(drop_overlapping_mem_locs): Likewise.
(val_reset): Likewise.
(struct variable_union_info): Likewise.
(variable_union): Likewise.
(find_loc_in_1pdv): Likewise.
(insert_into_intersection): Likewise.
(intersect_loc_chains): Likewise.
(canonicalize_loc_order_check): Likewise.
(canonicalize_values_mark): Likewise.
(canonicalize_values_star): Likewise.
(canonicalize_vars_star): Likewise.
(variable_merge_over_cur): Likewise.
(remove_duplicate_values): Likewise.
(variable_post_merge_new_vals): Likewise.
(variable_post_merge_perm_vals): Likewise.
(find_mem_expr_in_1pdv): Likewise.
(dataflow_set_preserve_mem_locs): Likewise.
(dataflow_set_remove_mem_locs): Likewise.
(variable_part_different_p): Likewise.
(onepart_variable_different_p): Likewise.
(find_src_set_src): Likewise.
(dump_var): Likewise.
(set_slot_part): Likewise.
(clobber_slot_part): Likewise.
(delete_slot_part): Likewise.
(vt_expand_var_loc_chain): Likewise.
(emit_note_insn_var_location): Likewise.
(vt_finalize): Likewise.

From-SVN: r227720

10 years agodse.c: remove some typedefs that hide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:53:25 +0000 (16:53 +0000)]
dse.c: remove some typedefs that hide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* dse.c (store_info_t): Remove typedef.
(group_info_t): Likewise.
(const_group_info_t): Likewise.
(deferred_change_t): Likewise.
(get_group_info): Adjust.
(free_store_info): Likewise.
(canon_address): Likewise.
(clear_rhs_from_active_local_stores): Likewise.
(record_store): Likewise.
(replace_read): Likewise.
(check_mem_read_rtx): Likewise.
(scan_insn): Likewise.
(remove_useless_values): Likewise.
(dse_step1): Likewise.
(dse_step2_init): Likewise.
(dse_step2_nospill): Likewise.
(scan_stores_nospill): Likewise.
(scan_reads_nospill): Likewise.
(dse_step3_exit_block_scan): Likewise.
(dse_step3): Likewise.
(dse_step5_nospill): Likewise.
(dse_step6): Likewise.

From-SVN: r227719

10 years agodon't typedef alias_set_entry and unhide pointerness
Trevor Saunders [Sun, 13 Sep 2015 16:53:08 +0000 (16:53 +0000)]
don't typedef alias_set_entry and unhide pointerness

gcc/ChangeLog:

2015-09-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* alias.c (alias_set_entry_d): Rename to alias_set_entry.
(alias_set_entry): Remove typedef.
(alias_set_subset_of): Adjust.
(alias_sets_conflict_p): Likewise.
(init_alias_set_entry): Likewise.
(get_alias_set): Likewise.
(new_alias_set): Likewise.
(record_alias_subset): Likewise.

From-SVN: r227718

10 years agofptr.c (SIGN_EXTEND): Cast -1 to unsigned.
John David Anglin [Sun, 13 Sep 2015 15:05:57 +0000 (15:05 +0000)]
fptr.c (SIGN_EXTEND): Cast -1 to unsigned.

* config/pa/fptr.c (SIGN_EXTEND): Cast -1 to unsigned.

From-SVN: r227717

10 years agoinstall.texi (Downloading the source): Mark up contrib/download_prerequisites properl...
Gerald Pfeifer [Sun, 13 Sep 2015 11:40:36 +0000 (11:40 +0000)]
install.texi (Downloading the source): Mark up contrib/download_prerequisites properly and drop leading "./".

* doc/install.texi (Downloading the source): Mark up
contrib/download_prerequisites properly and drop leading "./".

From-SVN: r227716

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

From-SVN: r227715

10 years agostop including tm.h in sendmsg.c
Trevor Saunders [Sat, 12 Sep 2015 22:19:11 +0000 (22:19 +0000)]
stop including tm.h in sendmsg.c

libobjc/ChangeLog:

2015-09-12  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

PR libobjc/24775
* sendmsg.c (tm.h): Remove include.

From-SVN: r227712

10 years agoremove unused defines from sendmsg.c
Trevor Saunders [Sat, 12 Sep 2015 22:19:06 +0000 (22:19 +0000)]
remove unused defines from sendmsg.c

libobjc/ChangeLog:

2015-09-12  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

PR libobjc/24775
* sendmsg.c (gen_rtx): Remove macro.
(gen_rtx_MEM): Likewise.
(gen_rtx_REG): Likewise.
(rtx): Likewise.

From-SVN: r227711

10 years agoremove STRUCT_VALUE macro
Trevor Saunders [Sat, 12 Sep 2015 22:19:00 +0000 (22:19 +0000)]
remove STRUCT_VALUE macro

This macro was converted to the TARGET_STRUCT_VALUE_RTX hook many years
ago, however there are still some lingering definitions, and a use in
libobjc.  All the remaining definitions define the macro to 0, which
libobjc treats the same as undefined, so it won't break anything else to
have libobjc stop checking the macro.  However it may be that this part
of libobjc has been broken for a long time on targets that only define
the hook, but that is a separate issue.

gcc/ChangeLog:

2015-09-12  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* config/arc/arc.h: Remove define of STRUCT_VALUE.
* config/lm32/lm32.h: Likewise.
* config/mep/mep.h: Likewise.
* config/visium/visium.h: Likewise.
* system.h: Poison STRUCT_VALUE macro.

libobjc/ChangeLog:

2015-09-12  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

PR libobjc/24775
* sendmsg.c: Remove check of STRUCT_VALUE macro.

From-SVN: r227710

10 years agore PR ada/66965 (gnat.dg/specs/addr1.ads obsolete -- failing on trunk)
Eric Botcazou [Sat, 12 Sep 2015 16:35:20 +0000 (16:35 +0000)]
re PR ada/66965 (gnat.dg/specs/addr1.ads obsolete -- failing on trunk)

PR ada/66965
* gnat.dg/specs/addr1.ads: Remove.

From-SVN: r227709

10 years agopa.c (pa_output_move_double): Enhance to handle HIGH CONSTANT_P operands.
John David Anglin [Sat, 12 Sep 2015 13:51:40 +0000 (13:51 +0000)]
pa.c (pa_output_move_double): Enhance to handle HIGH CONSTANT_P operands.

* config/pa/pa.c (pa_output_move_double): Enhance to handle HIGH
CONSTANT_P operands.

From-SVN: r227706

10 years agore PR libfortran/67527 (io.h sanitizer complains on 1 << 31)
Francois-Xavier Coudert [Sat, 12 Sep 2015 12:05:44 +0000 (12:05 +0000)]
re PR libfortran/67527 (io.h sanitizer complains on 1 << 31)

PR libfortran/67527
PR libfortran/67535
PR libfortran/67536
* io/io.h: Use unsigned values for 31-bit left shifts.
* io/unix.c (buf_read): Do not call memcpy() with NULL pointer arg.
* io/write.c (nml_write_obj): Likewise.

From-SVN: r227705

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

From-SVN: r227704

10 years agoConvert SPARC backend over to LRA.
David S. Miller [Sat, 12 Sep 2015 00:13:23 +0000 (00:13 +0000)]
Convert SPARC backend over to LRA.

gcc/

* config/sparc/constraints.md: Make "U" constraint a real register
constraint.
* config/sparc/sparc.c (TARGET_LRA_P): Define.
(D_MODES, DF_MODES): Add missing cast.
(TF_MODES, TF_MODES_NO_S): Include T_MODE.
(OF_MODES, OF_MODES_NO_S): Include O_MODE.
(sparc_register_move_cost): Decrease Niagara/UltrsSPARC memory
cost to 8.
* config/sparc/sparc.h (PROMOTE_MODE): Define.
* config/sparc/sparc.md (*movsi_lo_sum, *movsi_high): Do not
provide these insn when flag_pic.

From-SVN: r227701

10 years agocompiler: Avoid unsafe memcmp for nointerface comments.
Ian Lance Taylor [Fri, 11 Sep 2015 21:41:30 +0000 (21:41 +0000)]
compiler: Avoid unsafe memcmp for nointerface comments.

    Fixes golang/go#11577.

    Reviewed-on: https://go-review.googlesource.com/14182

From-SVN: r227699

10 years ago[PATCH] Another small cleanup to the const_and_copies stack
Jeff Law [Fri, 11 Sep 2015 21:32:38 +0000 (15:32 -0600)]
[PATCH] Another small cleanup to the const_and_copies stack

2015-09-11  Jeff Law  <law@redhat.com>

PR tree-optimization/47679
* tree-ssa-dom.c (struct cond_equivalence): Update comment.
* tree-ssa-scopedtables.h (class const_and_copies): Prefix data
member with m_.  Update inline member functions as necessary.  Add
toplevel comment.
* tree-ssa-scopedtables.c: Update const_and_copies's member
functions to use m_ prefix to access the stack.

From-SVN: r227697

10 years agoRemove dead code from graphite-optimize-isl.c
Aditya Kumar [Fri, 11 Sep 2015 19:50:48 +0000 (19:50 +0000)]
Remove dead code from graphite-optimize-isl.c

The variable `static bool enable_polly_vector' is always assigned to false.
This results in dead code in optimize-isl.c.  No functional change intended.

Passes bootstrap and regtest.

gcc/ChangeLog:

2015-09-11  Aditya Kumar  <aditya.k7@samsung.com>

* graphite-optimize-isl.c (disable_tiling): Remove.
(get_schedule_for_band): Do not use disable_tiling.
(get_prevector_map): Delete function.
(enable_polly_vector): Remove.
(get_schedule_for_band_list): Remove dead code.

From-SVN: r227696

10 years agoRefactor optimize isl
Aditya Kumar [Fri, 11 Sep 2015 19:50:41 +0000 (19:50 +0000)]
Refactor optimize isl

Refactor graphite-optimize-isl.c. Renamed function name, variable names etc.,
and indented the source according to gcc style guidelines.  Modified comments
accordingly. No functional change intended.

Passes regtest and bootstap on x86_64.

gcc/ChangeLog:

2015-09-10  Aditya Kumar  <aditya.k7@samsung.com>

        * graphite-optimize-isl.c (get_tile_map): Refactor.
        (get_schedule_for_band): Same.
        (getScheduleForBand): Same.
        (get_prevector_map): Same.
        (get_schedule_for_band_list): Same.
        (get_schedule_map): Same.
        (get_single_map): Same.
        (apply_schedule_map_to_scop): Same.
        (optimize_isl): Same.

From-SVN: r227695

10 years agoMakefile.am (backtrace.lo): Depend on internal.h.
Ian Lance Taylor [Fri, 11 Sep 2015 18:37:31 +0000 (18:37 +0000)]
Makefile.am (backtrace.lo): Depend on internal.h.

* Makefile.am (backtrace.lo): Depend on internal.h.
(sort.lo, stest.lo): Add explicit dependencies.
* Makefile.in: Rebuild.

From-SVN: r227691

10 years agoFix filesystem::canonical on Solaris 10.
Jonathan Wakely [Fri, 11 Sep 2015 14:20:32 +0000 (15:20 +0100)]
Fix filesystem::canonical on Solaris 10.

PR libstdc++/67173
* src/filesystem/ops.cc (filesystem::canonical): Allocate buffer for
realpath on Solaris 10.

From-SVN: r227689

10 years agoCheck read() result in std::random_device.
Jonathan Wakely [Fri, 11 Sep 2015 13:44:26 +0000 (14:44 +0100)]
Check read() result in std::random_device.

PR libstdc++/65142
* src/c++11/random.cc (random_device::_M_getval()): Check read result.

From-SVN: r227687

10 years agoFix invalid UTF-8 in wchar_t tests.
John Marino [Fri, 11 Sep 2015 13:06:42 +0000 (13:06 +0000)]
Fix invalid UTF-8 in wchar_t tests.

2015-09-11  John Marino  <gnugcc@marino.st>
    Jonathan Wakely  <jwakely@redhat.com>

PR libstdc++/67096
* testsuite/22_locale/codecvt/in/wchar_t/4.cc: Do not test code points
above U+10FFFF.
* testsuite/22_locale/codecvt/in/wchar_t/8.cc: Likewise.
* testsuite/22_locale/codecvt/in/wchar_t/9.cc: Likewise.
* testsuite/22_locale/codecvt/length/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/out/wchar_t/4.cc: Likewise.
* testsuite/22_locale/codecvt/unshift/wchar_t/4.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekpos/wchar_t/9874.cc: Likewise.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: Likewise.
* testsuite/27_io/objects/wchar_t/10.cc: Likewise.
* testsuite/27_io/objects/wchar_t/11.cc: Likewise.
* testsuite/27_io/objects/wchar_t/12.cc: Likewise.
* testsuite/27_io/objects/wchar_t/13.cc: Likewise.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r227686

10 years agoRationalise PCH headers and 17_intro/headers tests.
Jonathan Wakely [Fri, 11 Sep 2015 12:25:43 +0000 (13:25 +0100)]
Rationalise PCH headers and 17_intro/headers tests.

PR libstdc++/64857
* doc/xml/manual/using.xml: Improve aggregate header documentation.
* doc/html/manual/*: Regenerate.
* include/precompiled/extc++.h: Include <bits/stdc++.h> for C++11
and later and include more extension headers.
* testsuite/17_intro/headers/c++1998/all_attributes.cc: Remove
redundant header.
* testsuite/17_intro/headers/c++200x/: Rename to c++2011.
* testsuite/17_intro/headers/c++2014/all_attributes.cc: Remove
redundant headers.
* testsuite/17_intro/headers/c++2014/all_no_exceptions.cc: New.
* testsuite/17_intro/headers/c++2014/all_no_rtti.cc: New.
* testsuite/17_intro/headers/c++2014/all_pedantic_errors.cc: New.
* testsuite/17_intro/headers/c++2014/operator_names.cc: New.
* testsuite/17_intro/headers/c++2014/stdc++.cc: New.
* testsuite/17_intro/headers/c++2014/stdc++_multiple_inclusion.cc:
New.

From-SVN: r227684

10 years agoLink gcc.dg/pie-link.c with -pie
Rainer Orth [Fri, 11 Sep 2015 11:10:03 +0000 (11:10 +0000)]
Link gcc.dg/pie-link.c with -pie

* gcc.dg/pie-link.c: Add -pie to dg-options.

From-SVN: r227682

10 years agoImplement N4258 noexcept for std::basic_string.
Jonathan Wakely [Fri, 11 Sep 2015 11:02:14 +0000 (12:02 +0100)]
Implement N4258 noexcept for std::basic_string.

PR libstdc++/58265
* doc/xml/manual/intro.xml: Document LWG 2063 and 2064 resolutions.
* doc/html/manual/bugs.html: Regenerate.
* include/bits/basic_string.h (basic_string): Implement N4258. Add
correct exception-specifications and propagate allocators correctly.
* include/bits/basic_string.tcc (basic_string::swap): Propagate
allocators correctly.
* include/debug/string (__gnu_debug::basic_string): Add correct
exceptions-specifications and allcoator-extended constructors.
* testsuite/21_strings/basic_string/allocator/char/copy.cc: New.
* testsuite/21_strings/basic_string/allocator/char/copy_assign.cc:
New.
* testsuite/21_strings/basic_string/allocator/char/minimal.cc: New.
* testsuite/21_strings/basic_string/allocator/char/move.cc: New.
* testsuite/21_strings/basic_string/allocator/char/move_assign.cc:
New.
* testsuite/21_strings/basic_string/allocator/char/noexcept.cc: New.
* testsuite/21_strings/basic_string/allocator/char/swap.cc: New.
* testsuite/21_strings/basic_string/allocator/wchar_t/copy.cc: New.
* testsuite/21_strings/basic_string/allocator/wchar_t/copy_assign.cc:
New.
* testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc: New.
* testsuite/21_strings/basic_string/allocator/wchar_t/move.cc: New.
* testsuite/21_strings/basic_string/allocator/wchar_t/move_assign.cc:
New.
* testsuite/21_strings/basic_string/allocator/wchar_t/noexcept.cc: New.
* testsuite/21_strings/basic_string/allocator/wchar_t/swap.cc: New.
* testsuite/util/testsuite_allocator.h (tracker_allocator): Define
defaulted assignment operators.

From-SVN: r227681

10 years agoAllocator-extended constructors for container adaptors.
Jonathan Wakely [Fri, 11 Sep 2015 09:51:29 +0000 (10:51 +0100)]
Allocator-extended constructors for container adaptors.

PR libstdc++/65092
* include/bits/stl_queue.h (queue, priority_queue): Add
allocator-extended constructors.
* include/bits/stl_stack.h (stack): Likewise.
* testsuite/23_containers/priority_queue/requirements/
uses_allocator.cc: Test allocator-extended constructors.
* testsuite/23_containers/queue/requirements/uses_allocator.cc:
Likewise.
* testsuite/23_containers/stack/requirements/uses_allocator.cc:
Likewise.

From-SVN: r227680

10 years agoRemove separate movtf pattern - Use an iterator for all FP modes.
Ramana Radhakrishnan [Fri, 11 Sep 2015 09:44:26 +0000 (09:44 +0000)]
Remove separate movtf pattern - Use an iterator for all FP modes.

movtf is unnecessary as a separate expander. Move this to be with
the standard scalar floating point expanders.

Achieved by adding a new iterator and then using the same.

Tested cross aarch64-none-elf and no regressions.

Rebased version from https://gcc.gnu.org/ml/gcc-patches/2015-09/msg00767.html

2015-09-10  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

PR target/63304
        * config/aarch64/aarch.md (mov<mode>:GPF_F16): Use GPF_TF_F16.
        (movtf): Delete.
        * config/aarch64/iterators.md (GPF_TF_F16): New.
        (GPF_F16): Delete.

From-SVN: r227679

10 years agopr63210.c (dg-skip-if): Skip armv4t.
Alex Velenko [Fri, 11 Sep 2015 09:25:59 +0000 (09:25 +0000)]
pr63210.c (dg-skip-if): Skip armv4t.

gcc/testsuite

* gcc.target/arm/pr63210.c (dg-skip-if): Skip armv4t.
(dg-additional-options): Add -march=armv5t if arm_arch_v5t_ok.

From-SVN: r227677

10 years agoMake sure that contrib/download_prerequisites is run from correct place
Markus Trippelsdorf [Fri, 11 Sep 2015 06:09:36 +0000 (06:09 +0000)]
Make sure that contrib/download_prerequisites is run from correct place

* download_prerequisites: Make sure that script is run from
top level source directory.

From-SVN: r227674

10 years agolibgo/runtime: return 0, not NULL, from main
Ian Lance Taylor [Fri, 11 Sep 2015 03:12:28 +0000 (03:12 +0000)]
libgo/runtime: return 0, not NULL, from main

    Reviewed-on: https://go-review.googlesource.com/13421

From-SVN: r227673

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

From-SVN: r227671

10 years agonvptx.c (nvptx_expand_call): Add spacing.
Nathan Sidwell [Thu, 10 Sep 2015 22:53:37 +0000 (22:53 +0000)]
nvptx.c (nvptx_expand_call): Add spacing.

* config/nvptx/nvptx.c (nvptx_expand_call): Add spacing.
(nvptx_reorg): Adjust comments.

From-SVN: r227667

10 years agore PR bootstrap/67363 (r227188 breaks build for mingw-w64)
John David Anglin [Thu, 10 Sep 2015 22:52:08 +0000 (22:52 +0000)]
re PR bootstrap/67363 (r227188 breaks build for mingw-w64)

PR bootstrap/67363
* configure.ac: Check if setenv and unsetenv are declared.
* configure: Rebuild.
* config.in: Rebuild.
* system.h: Declare setenv and unsetenv if not declared.

From-SVN: r227666

10 years agolibgo: Use stat_atim.go on Solaris 12+
Ian Lance Taylor [Thu, 10 Sep 2015 21:17:00 +0000 (21:17 +0000)]
libgo: Use stat_atim.go on Solaris 12+

    From Rainer Orth.

    Solaris 12 changes the stat_[amc]tim members of struct stat from
    timestruc_t to timespec_t for XPG7 compatiblity, thus breaking the libgo
    build.  The following patch checks for this change and uses the common
    stat_atim.go if appropriate.

    Reviewed-on: https://go-review.googlesource.com/14495

From-SVN: r227665

10 years agors6000.c (swap_web_entry): Update preceding commentary to simplify permute mask adjus...
Bill Schmidt [Thu, 10 Sep 2015 20:22:37 +0000 (20:22 +0000)]
rs6000.c (swap_web_entry): Update preceding commentary to simplify permute mask adjustment equation.

[gcc]

2015-09-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (swap_web_entry): Update preceding
commentary to simplify permute mask adjustment equation.
(special_handling_values): Add SH_VPERM.
(const_load_sequence_p): New function.
(insn_is_swappable_p): Add logic to recognize an UNSPEC_VPERM with
the mask loaded from the constant pool.
(adjust_vperm): New function.
(handle_special_swappables): Call adjust_vperm.
(dump_swap_insn_table): Handle SH_VPERM.

[gcc/testsuite]

2015-09-10  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/swaps-p8-20.c: New test.
* gcc.target/powerpc/swaps-p8-21.c: New test.

From-SVN: r227664

10 years ago* testsuite/util/testsuite_allocator.h (PointerBase::operator[]): Add.
Jonathan Wakely [Thu, 10 Sep 2015 19:33:09 +0000 (20:33 +0100)]
* testsuite/util/testsuite_allocator.h (PointerBase::operator[]): Add.

From-SVN: r227661

10 years ago1.cc: Verify the string contents.
Jonathan Wakely [Thu, 10 Sep 2015 19:33:04 +0000 (20:33 +0100)]
1.cc: Verify the string contents.

* testsuite/21_strings/basic_string/operators/char/1.cc: Verify the
string contents.

From-SVN: r227660

10 years agoPut back requires_stack_frame_p used by i386.c
H.J. Lu [Thu, 10 Sep 2015 19:19:27 +0000 (19:19 +0000)]
Put back requires_stack_frame_p used by i386.c

* shrink-wrap.c (requires_stack_frame_p): Remove static.
* shrink-wrap.h (requires_stack_frame_p): Put back.

From-SVN: r227659

10 years agoStop reload1.c warning from breaking bootstrap
Richard Sandiford [Thu, 10 Sep 2015 19:17:24 +0000 (19:17 +0000)]
Stop reload1.c warning from breaking bootstrap

Some host-target combinations get bogus warnings about orig_dup
being used uninitialized.  I tried to coerce the current uninit
pass to handle this case, but the patch I ended up with only worked
by accident because of the strange way in which the pass handles
limit cases.  (If we have more than MAX_NUM_CHAINS chains, it silently
drops the excess chains and continues regardless, so it's quite easy
to come up with cases where the predicates for either the definition
or the use consider an arbitrary subset of the actual conditions.)

For now this patch turns -Wmaybe-uninitialized into a warning for
the affacted function.  It will be a warning even if someone turns
off warnings on the command line, but I don't think that's important.

Bootstrapped and regression-tested on x86_64-linux-gnu.  Also tested
with a cross-compiler to sparc-linux-gnu (which also triggered the
warning for me).

gcc/
* reload1.c (elimination_costs_in_insn): Locally turn
-Wmaybe-uninitialized into a warning.

From-SVN: r227658

10 years agocompiler: Report errors from very large types.
Chris Manghane [Thu, 10 Sep 2015 18:24:28 +0000 (18:24 +0000)]
compiler: Report errors from very large types.

    The gcc backend throws an internal error when trying to get the size
    of a type which is larger than the amount of address space on the
    machine.  This patch catches this error and reports it in a user
    friendly way.

    Fixes golang/go#11554.

    Reviewed-on: https://go-review.googlesource.com/13684

* go-gcc.cc (Gcc_backend::type_size): Return -1 for
unrepresentable size.

From-SVN: r227656

10 years agoshrink-wrap: Header hygiene
Segher Boessenkool [Thu, 10 Sep 2015 17:25:35 +0000 (19:25 +0200)]
shrink-wrap: Header hygiene

2015-09-10  Segher Boessenkool  <segher@kernel.crashing.org>

* shrink-wrap.c (requires_stack_frame_p): Make static.
(prepare_shrink_wrap): Likewise.
(dup_block_and_redirect): Likewise.
* shrink-wrap.h: Remove declarations of those functions.

From-SVN: r227652

10 years agore PR fortran/67526 (ICE on missing end parenthesis in substring construct)
Steven G. Kargl [Thu, 10 Sep 2015 17:13:11 +0000 (17:13 +0000)]
re PR fortran/67526 (ICE on missing end parenthesis in substring construct)

2015-09-09  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/67526
* gfortran.dg/pr67526.f90: New test.

2015-09-09  Steven G. Kargl  <kargl@gcc.gnu.org>

PR fortran/67526
* expr.c (gfc_check_init_expr): Do not dereference a NULL pointer.

From-SVN: r227651

10 years agore PR c++/67318 (Parsing error when using abbreviated integral type names in template...
Paolo Carlini [Thu, 10 Sep 2015 15:36:54 +0000 (15:36 +0000)]
re PR c++/67318 (Parsing error when using abbreviated integral type names in template parameter pack declaration)

/cp
2015-09-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67318
* parser.c (cp_parser_parameter_declaration): Consume the ellipsis
and set template_parameter_pack_p also when the type is null.

/testsuite
2015-09-10  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/67318
* g++.dg/cpp0x/variadic166.C: New.

From-SVN: r227650

10 years agoWarn when comparing nonnull arguments to NULL in a function.
Mark Wielaard [Thu, 10 Sep 2015 15:29:44 +0000 (15:29 +0000)]
Warn when comparing nonnull arguments to NULL in a function.

If an argument is marked as nonnull then passing in a NULL argument
will produce bad results even if the code checks against NULL. GCC
might optimize such checks away so warn the user when the function
contains such comparisons.

nn.c: In function ‘foo’:
nn.c:6:27: warning: nonnull argument ‘bar’ compared to NULL [-Wnonnull]
 void foo(void *bar) { if (!bar) abort(); }
                           ^
gcc/ChangeLog

* doc/invoke.texi (Wnonnull): Also warns when comparing against NULL.

gcc/c/ChangeLog

       * c-typeck.c (build_binary_op): Check and warn when nonnull arg
       parm against NULL.

gcc/cp/ChangeLog

       * typeck.c (cp_build_binary_op): Check and warn when nonnull arg
       parm against NULL.

gcc/testsuite/ChangeLog

       * c-c++-common/nonnull-1.c: New test.

From-SVN: r227649

10 years agore PR fortran/66993 (Spurious ambiguous symbol error with submodules)
Paul Thomas [Thu, 10 Sep 2015 15:22:20 +0000 (15:22 +0000)]
re PR fortran/66993 (Spurious ambiguous symbol error with submodules)

2015-09-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/66993
* module.c (read_module): If a symtree exists and the symbol has
been associated in a submodule from a parent (sub)module, attach
the symbol to a 'unique symtree' and the new symbol to the
existing symtree.

2015-09-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/66993
* gfortran.dg/submodule_11.f08: New test.

From-SVN: r227648

10 years agore PR target/67506 ([SH]: error: unrecognizable insn when compiling texlive-binaries)
Oleg Endo [Thu, 10 Sep 2015 14:53:48 +0000 (14:53 +0000)]
re PR target/67506 ([SH]: error: unrecognizable insn when compiling texlive-binaries)

gcc/
PR target/67506
* config/sh/sh.c (sh_extending_set_of_reg::use_as_extended_reg): Add
missing simplify_gen_subreg.

gcc/testsuite/
PR target/67506
* gcc.c-torture/compile/pr67506.c: New test.

From-SVN: r227646

10 years agoS/390: Don't use vgm for v1ti and v1tf.
Andreas Krebbel [Thu, 10 Sep 2015 14:04:28 +0000 (14:04 +0000)]
S/390: Don't use vgm for v1ti and v1tf.

gcc/ChangeLog:

2015-09-10  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.c (s390_contiguous_bitmask_vector_p): Reject if
the vector element is bigger than 64 bit.

gcc/testsuite/ChangeLog:

2015-09-10  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* gcc.target/s390/vector/vec-genbytemask-1.c: Add check for V1TI
initialization with a byte mask.  No change expected here.
* gcc.target/s390/vector/vec-genmask-1.c: Fix whitespace.
* gcc.target/s390/vector/vec-genmask-2.c: Add check for V1TI
initialization with contigious bitmask.  Literal pool is expectd
to be used here.

From-SVN: r227637

10 years agoS/390: Fix mode iterators vmal, vmah, and vmalh.
Andreas Krebbel [Thu, 10 Sep 2015 14:02:34 +0000 (14:02 +0000)]
S/390: Fix mode iterators vmal, vmah, and vmalh.

gcc/ChangeLog:

2015-09-10  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/vx-builtins.md ("vec_vmal<mode>", "vec_vmah<mode>")
("vec_vmalh<mode>"): Change mode iterator from VI_HW to VI_HW_QHS.

From-SVN: r227636

10 years agoS/390: Add V1TImode to constant pool modes.
Andreas Krebbel [Thu, 10 Sep 2015 14:01:03 +0000 (14:01 +0000)]
S/390: Add V1TImode to constant pool modes.

gcc/ChangeLog:

2015-09-10  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

* config/s390/s390.c: Add V1TImode to constant pool modes.

From-SVN: r227635

10 years ago[ARM] PR 67439: Allow matching of *arm32_movhf when -mrestrict-it is on
Kyrylo Tkachov [Thu, 10 Sep 2015 10:43:43 +0000 (10:43 +0000)]
[ARM] PR 67439: Allow matching of *arm32_movhf when -mrestrict-it is on

PR target/67439
* config/arm/arm.md (*arm32_movhf): Remove !arm_restrict_it from
predicate.  Set predicable_short_it attr to "no".

* gcc.target/arm/pr67439_1.c: New test.

From-SVN: r227630

10 years ago[Patch/expand] Cost instruction sequences when doing left wide shift
Jiong Wang [Thu, 10 Sep 2015 10:37:17 +0000 (10:37 +0000)]
[Patch/expand] Cost instruction sequences when doing left wide shift

Patch background details:

    https://gcc.gnu.org/ml/gcc-patches/2015-08/msg01147.html

gcc/
  PR rtl-optimization/67421
  * expr.c (expand_expr_real_2): Cost instrcution sequences when doing left wide
  shift tranformation.

From-SVN: r227629

10 years agoarc-common.c: Remove references to A5.
Claudiu Zissulescu [Thu, 10 Sep 2015 09:46:03 +0000 (11:46 +0200)]
arc-common.c: Remove references to A5.

2015-09-10  Claudiu Zissulescu  <claziss@synopsys.com>

        * common/config/arc/arc-common.c: Remove references to A5.
        * config/arc/arc-opts.h: Likewise.
        * config/arc/arc.c, config/arc/arc.h, config/arc/arc.md: Likewise.
        * config/arc/arc.opt, config/arc/constraints.md: Likewise.
        * config/arc/t-arc-newlib: Likewise.

From-SVN: r227627

10 years agoarc.md (length): Fix attribute length for conditional executed instructions with...
Claudiu Zissulescu [Thu, 10 Sep 2015 09:19:52 +0000 (11:19 +0200)]
arc.md (length): Fix attribute length for conditional executed instructions with long immediate.

2015-09-10  Claudiu Zissulescu <claziss@synopsys.com>

        * config/arc/arc.md (length): Fix attribute length for conditional
        executed instructions with long immediate.

(posted as: https://gcc.gnu.org/ml/gcc/2015-03/msg00268.html)

From-SVN: r227626

10 years ago[AArch64] Skip tiny and large code model on gcc.target/aarch64/pic-small.c
Jiong Wang [Thu, 10 Sep 2015 09:15:14 +0000 (09:15 +0000)]
[AArch64] Skip tiny and large code model on gcc.target/aarch64/pic-small.c

gcc/testsuite/
  * gcc.target/aarch64/pic-small.c (dg-skip-if): Skip tiny and large code model.

From-SVN: r227624

10 years ago[AArch64] Use logics_imm type for 2nd alternative of *and<mode>3nr_compare0
Kyrylo Tkachov [Thu, 10 Sep 2015 09:10:06 +0000 (09:10 +0000)]
[AArch64] Use logics_imm type for 2nd alternative of *and<mode>3nr_compare0

* config/aarch64/aarch64.md (*and<mode>3nr_compare0): Use logics_imm
type for second alternative.

From-SVN: r227623

10 years agoFix typo in doc/install.texi
Markus Trippelsdorf [Thu, 10 Sep 2015 07:57:13 +0000 (07:57 +0000)]
Fix typo in doc/install.texi

From-SVN: r227620

10 years agodoc/install.texi: Mention contrib/download_prerequisites
Markus Trippelsdorf [Thu, 10 Sep 2015 07:55:36 +0000 (07:55 +0000)]
doc/install.texi: Mention contrib/download_prerequisites

Mention ./contrib/download_prerequisites on the "Downloading GCC" page.

* doc/invoke.texi (Downloading GCC): Mention
contrib/download_prerequisites script.

From-SVN: r227619

10 years agore PR c++/67523 (ICE with invalid combined simd inside of a template)
Jakub Jelinek [Thu, 10 Sep 2015 07:35:56 +0000 (09:35 +0200)]
re PR c++/67523 (ICE with invalid combined simd inside of a template)

PR c++/67523
* gimplify.c (gimplify_omp_for): If inner stmt is not found
for combined loop, assert seen_error () and return GS_ERROR.

* g++.dg/gomp/pr67523.C: New test.

From-SVN: r227611

10 years agore PR c++/67522 (OpenMP ICE in type_dependent_expression_p)
Jakub Jelinek [Thu, 10 Sep 2015 07:34:42 +0000 (09:34 +0200)]
re PR c++/67522 (OpenMP ICE in type_dependent_expression_p)

PR c++/67522
* semantics.c (handle_omp_array_sections_1): Only run
type_dependent_expression_p on VAR_DECL/PARM_DECLs.
(finish_omp_clauses) <case OMP_CLAUSE_LINEAR>: Likewise.
Don't adjust OMP_CLAUSE_LINEAR_STEP if OMP_CLAUSE_DECL
is not a VAR_DECL/PARM_DECL.

* g++.dg/gomp/pr67522.C: New test.

From-SVN: r227610

10 years agore PR middle-end/67521 (ICE when OpenMP loop expressions mention the IV)
Jakub Jelinek [Thu, 10 Sep 2015 07:32:54 +0000 (09:32 +0200)]
re PR middle-end/67521 (ICE when OpenMP loop expressions mention the IV)

PR middle-end/67521
* gimplify.c (gimplify_omp_for): Don't call omp_add_variable
if decl is already in outer->variables.

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

From-SVN: r227609

10 years agore PR middle-end/67517 (ICE in gimplify_scan_omp_clauses)
Jakub Jelinek [Thu, 10 Sep 2015 07:32:13 +0000 (09:32 +0200)]
re PR middle-end/67517 (ICE in gimplify_scan_omp_clauses)

PR middle-end/67517
* gimplify.c (gimplify_scan_omp_clauses): Instead of
asserting that decl is not specified in octx->variables,
break out of the loop if it is.

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

From-SVN: r227608

10 years agore PR c++/67514 (ICE in omp_add_variable)
Jakub Jelinek [Thu, 10 Sep 2015 07:31:14 +0000 (09:31 +0200)]
re PR c++/67514 (ICE in omp_add_variable)

PR c++/67514
* gimplify.c (gimplify_omp_for): For loop SIMD construct, if
iterator is not explicitly determined, but is defined inside
of the combined workshare region, handle it like if it has
DECL_EXPR in OMP_FOR_PRE_BODY.

* g++.dg/gomp/pr67514.C: New test.

From-SVN: r227607

10 years agore PR c++/67511 (ICE with invalid OpenMP random access iterator)
Jakub Jelinek [Thu, 10 Sep 2015 07:30:29 +0000 (09:30 +0200)]
re PR c++/67511 (ICE with invalid OpenMP random access iterator)

PR c++/67511
* semantics.c (handle_omp_for_class_iterator): Don't wrap
error_mark_node into a NOP_EXPR to void_type_node.

* g++.dg/gomp/pr67511.C: New test.

From-SVN: r227606

10 years agore PR c/67502 (ICE with collapsed for simd loop inside of parallel)
Jakub Jelinek [Thu, 10 Sep 2015 07:28:27 +0000 (09:28 +0200)]
re PR c/67502 (ICE with collapsed for simd loop inside of parallel)

PR c/67502
* c-parser.c (c_parser_omp_for_loop): Emit DECL_EXPR stmts
into OMP_FOR_PRE_BODY rather than before the loop.

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

From-SVN: r227605

10 years agocompiler: Don't allow shifts with non-integers.
Ian Lance Taylor [Thu, 10 Sep 2015 03:46:03 +0000 (03:46 +0000)]
compiler: Don't allow shifts with non-integers.

    Fixes golang/go#11616.

    Reviewed-on: https://go-review.googlesource.com/13688

From-SVN: r227604

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

From-SVN: r227603

10 years agonvptx.md (call_operation): Move bound out of loop.
Nathan Sidwell [Wed, 9 Sep 2015 17:18:15 +0000 (17:18 +0000)]
nvptx.md (call_operation): Move bound out of loop.

* config/nvptx/nvptx.md (call_operation): Move bound out of loop.
(*cmp<mode>): Add assembler spacing.
(setcc_int<mode>, set_cc_float<mode>): Likewise.
* config/nvptx/nvptx.c (nvptx_option_override): Override debug
level.
(write_func_decl_from_insn): Refactor argument loops & comma emission.
(nvptx_expand_call): Likewise.
(nvptx_output_call_insn): Likewise.
(nvptx_reorg_subreg): Add spacing.

From-SVN: r227597

10 years agoEnable lightweight checks with _GLIBCXX_ASSERTIONS.
Jonathan Wakely [Wed, 9 Sep 2015 17:12:47 +0000 (18:12 +0100)]
Enable lightweight checks with _GLIBCXX_ASSERTIONS.

* doc/xml/manual/using.xml (_GLIBCXX_ASSERTIONS): Document.
* doc/html/manual/using_macros.html: Regenerate.
* include/bits/c++config: Define _GLIBCXX_ASSERTIONS when
_GLIBCXX_DEBUG is defined. Disable std::string extern templates when
(_GLIBCXX_EXTERN_TEMPLATE, __glibcxx_assert): Depend on
_GLIBCXX_ASSERTIONS instead of _GLIBCXX_DEBUG.
* include/debug/debug.h [!_GLIBCXX_DEBUG]: Define
__glibcxx_requires_non_empty_range and __glibcxx_requires_nonempty.
* include/backward/auto_ptr.h (auto_ptr::operator*,
auto_ptr::operator->): Replace _GLIBCXX_DEBUG_ASSERT with
__glibcxx_assert.
* include/bits/basic_string.h (basic_string::operator[],
basic_string::front, basic_string::back, basic_string::pop_back):
Likewise.
* include/bits/random.h
(uniform_int_distribution::param_type::param_type,
uniform_real_distribution::param_type::param_type,
normal_distribution::param_type::param_type,
gamma_distribution::param_type::param_type,
bernoulli_distribution::param_type::param_type,
binomial_distribution::param_type::param_type,
geometric_distribution::param_type::param_type,
negative_binomial_distribution::param_type::param_type,
poisson_distribution::param_type::param_type,
exponential_distribution::param_type::param_type): Likewise.
* include/bits/regex.h (match_results::operator[],
match_results::prefix, match_results::suffix): Likewise.
* include/bits/regex.tcc (format, regex_iterator::operator++):
Likewise.
* include/bits/regex_automaton.tcc (_StateSeq::_M_clone): Likewise.
* include/bits/regex_compiler.tcc (_Compiler::_Compiler,
_Compiler::_M_insert_character_class_matcher): Likewise.
* include/bits/regex_executor.tcc (_Executor::_M_dfs): Likewise.
* include/bits/regex_scanner.tcc (_Scanner::_M_advance,
_Scanner::_M_scan_normal): Likewise.
* include/bits/shared_ptr_base.h (__shared_ptr::_M_reset,
__shared_ptr::operator*): Likewise.
* include/bits/stl_iterator_base_funcs.h (__advance): Likewise.
* include/bits/unique_ptr.h (unique_ptr::operator*,
unique_ptr::operator[]): Likewise.
* include/experimental/fs_path.h (path::path(string_type, _Type),
path::iterator::operator++, path::iterator::operator--,
path::iterator::operator*): Likewise.
* include/experimental/string_view (basic_string_view::operator[],
basic_string_view::front, basic_string_view::back,
basic_string_view::remove_prefix): Likewise.
* include/ext/random (beta_distribution::param_type::param_type,
normal_mv_distribution::param_type::param_type,
rice_distribution::param_type::param_type,
pareto_distribution::param_type::param_type,
k_distribution::param_type::param_type,
arcsine_distribution::param_type::param_type,
hoyt_distribution::param_type::param_type,
triangular_distribution::param_type::param_type,
von_mises_distribution::param_type::param_type,
hypergeometric_distribution::param_type::param_type,
logistic_distribution::param_type::param_type): Likewise.
* include/ext/vstring.h (__versa_string::operator[]): Likewise.
* include/std/complex (polar): Likewise.
* include/std/mutex [!_GTHREAD_USE_MUTEX_TIMEDLOCK]
(timed_mutex::~timed_mutex, timed_mutex::unlock,
(recursive_timed_mutex::~timed_mutex, recursive_timed_mutex::unlock):
Likewise.
* include/std/shared_mutex [!PTHREAD_RWLOCK_INITIALIZER]
(__shared_mutex_pthread::__shared_mutex_pthread,
__shared_mutex_pthread::~__shared_mutex_pthread): Likewise.
(__shared_mutex_pthread::lock, __shared_mutex_pthread::try_lock,
__shared_mutex_pthread::unlock, __shared_mutex_pthread::lock_shared,
__shared_mutex_pthread::try_lock_shared): Likewise.
(__shared_mutex_cv::~__shared_mutex_cv, __shared_mutex_cv::unlock,
__shared_mutex_cv::unlock_shared): Likewise.
(shared_timed_mutex::try_lock_until,
shared_timed_mutex::try_lock_shared_until): Likewise.
* include/std/valarray (valarray::valarray(const _Tp*, size_t),
valarray::operator=, valarray::sum, valarray::min, valarray::max,
_DEFINE_VALARRAY_AUGMENTED_ASSIGNMENT, _DEFINE_BINARY_OPERATOR):
Likewise.

From-SVN: r227595

10 years agore PR middle-end/67512 (internal compiler error: in invert_tree_comparison, at fold...
Marek Polacek [Wed, 9 Sep 2015 17:09:32 +0000 (17:09 +0000)]
re PR middle-end/67512 (internal compiler error: in invert_tree_comparison, at fold-const.c:2456)

PR middle-end/67512
* tree-ssa-uninit.c (pred_equal_p): Only call invert_tree_comparison
for comparisons.

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

From-SVN: r227594

10 years agore PR c++/53184 (Unnecessary anonymous namespace warnings)
Paolo Carlini [Wed, 9 Sep 2015 16:48:13 +0000 (16:48 +0000)]
re PR c++/53184 (Unnecessary anonymous namespace warnings)

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

PR c++/53184
* doc/invoke.texi ([Wsubobject-linkage]): Document.

/c-family
2015-09-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53184
* c.opt ([Wsubobject-linkage]): Add.

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

PR c++/53184
* decl2.c (constrain_class_visibility): Use Wsubobject-linkage.

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

PR c++/53184
* g++.dg/warn/Wsubobject-linkage-1.C: New.
* g++.dg/warn/Wsubobject-linkage-2.C: Likewise.
* g++.dg/warn/Wsubobject-linkage-3.C: Likewise.
* g++.dg/warn/Wsubobject-linkage-4.C: Likewise.

From-SVN: r227593

10 years agoFix sanitizer/67258 by cherry picking upstream patch
Markus Trippelsdorf [Wed, 9 Sep 2015 16:34:59 +0000 (16:34 +0000)]
Fix sanitizer/67258 by cherry picking upstream patch

PR sanitizer/67258
* ubsan/ubsan_type_hash.cc: Cherry pick upstream r244101.

Upstraem patch:
commit 1d2477faafda9ad2cc19927b3c31efd22747f013
Author: Alexey Samsonov <vonosmas@gmail.com>
Date:   Wed Aug 5 19:35:46 2015 +0000

    [UBSan] Fix UBSan-vptr false positive.

    Offset from vptr to the start of most-derived object can actually
    be positive in some virtual base class vtables.

    Patch by Stephan Bergmann!

    git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@244101 91177308-0d34-0410-b5e6-96231b3b80d8

From-SVN: r227591

10 years agoAdd copyright in gcc/params-list.h
Tom de Vries [Wed, 9 Sep 2015 14:44:01 +0000 (14:44 +0000)]
Add copyright in gcc/params-list.h

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

* params-list.h: Add missing copyright notice.

From-SVN: r227590

10 years agonvptx.md (atomic_compare_and_swap<mode>): Use sel_truesi, not andsi.
Nathan Sidwell [Wed, 9 Sep 2015 14:07:01 +0000 (14:07 +0000)]
nvptx.md (atomic_compare_and_swap<mode>): Use sel_truesi, not andsi.

* config/nvptx/nvptx.md (atomic_compare_and_swap<mode>): Use
sel_truesi, not andsi.

From-SVN: r227587

10 years ago[ARM][3/3] Expand mod by power of 2
Kyrylo Tkachov [Wed, 9 Sep 2015 08:41:41 +0000 (08:41 +0000)]
[ARM][3/3] Expand mod by power of 2

* config/arm/arm.md (*subsi3_compare0): Rename to...
(subsi3_compare0): ... This.
(modsi3): New define_expand.
* config/arm/arm.c (arm_new_rtx_costs, MOD case): Handle case
when operand is power of 2.

* gcc.target/aarch64/mod_2.x: New file.
* gcc.target/aarch64/mod_256.x: Likewise.
* gcc.target/arm/mod_2.c: New test.
* gcc.target/arm/mod_256.c: Likewise.
* gcc.target/aarch64/mod_2.c: Likewise.
* gcc.target/aarch64/mod_256.c: Likewise.

From-SVN: r227586

10 years ago[AArch64][1/3] Expand signed mod by power of 2 using CSNEG
Kyrylo Tkachov [Wed, 9 Sep 2015 08:39:13 +0000 (08:39 +0000)]
[AArch64][1/3] Expand signed mod by power of 2 using CSNEG

* config/aarch64/aarch64.md (mod<mode>3): New define_expand.
(*neg<mode>2_compare0): Rename to...
(neg<mode>2_compare0): ... This.
* config/aarch64/aarch64.c (aarch64_rtx_costs, MOD case):
Move check for speed inside the if-then-elses.  Reflect
CSNEG sequence in MOD by power of 2 case.

From-SVN: r227585

10 years agore PR c++/67504 (ICE with type dependent collapse argument)
Jakub Jelinek [Wed, 9 Sep 2015 07:25:53 +0000 (09:25 +0200)]
re PR c++/67504 (ICE with type dependent collapse argument)

PR c++/67504
* parser.c (cp_parser_omp_clause_collapse): Test tree_fits_shwi_p
before INTEGRAL_TYPE_P test.

* g++.dg/gomp/pr67504.C: New test.

From-SVN: r227579

10 years agore PR c/67501 (Bad error recovery for invalid OpenMP clauses in C FE)
Jakub Jelinek [Wed, 9 Sep 2015 07:24:48 +0000 (09:24 +0200)]
re PR c/67501 (Bad error recovery for invalid OpenMP clauses in C FE)

PR c/67501
* c-parser.c (c_parser_oacc_all_clauses,
c_parser_omp_all_clauses): Remove invalid clause from
list of clauses even if parser->error is set.

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

From-SVN: r227578

10 years agore PR c/67500 (OpenMP ICE with invalid safelen/simdlen/alignment expressions)
Jakub Jelinek [Wed, 9 Sep 2015 07:24:03 +0000 (09:24 +0200)]
re PR c/67500 (OpenMP ICE with invalid safelen/simdlen/alignment expressions)

PR c/67500
* c-parser.c (c_parser_omp_clause_aligned,
c_parser_omp_clause_safelen, c_parser_omp_clause_simdlen): Fix up
test for errors.
* c-decl.c (temp_pop_parm_decls): Allow b->decl equal to
error_mark_node.

* gcc.dg/gomp/pr67500.c: New test.

From-SVN: r227577