1. 22 May, 2017 3 commits
  2. 21 May, 2017 2 commits
  3. 20 May, 2017 2 commits
  4. 19 May, 2017 26 commits
    • c-warn.c (match_case_to_enum_1): Don't warn about enums with no enumerators. · 1ff7be5a
      	* c-warn.c (match_case_to_enum_1): Don't warn about enums with no
      	enumerators.
      
      From-SVN: r248303
      Jason Merrill committed
    • dwarf.c (free_line_header): Don't free dirs if dirs_count == 0. · 281161d1
      	* dwarf.c (free_line_header): Don't free dirs if dirs_count == 0.
      	(read_line_header): Don't allocate dirs if dirs_count == 0.
      	* edtest.c: New file.
      	* edtest2.c: New file.
      	* Makefile.am (edtest_SOURCES, edtest_LDADD): Define.
      	(check_PROGRAMS): Add edtest.
      	(edtest2_build.c, gen_edtest2_build): New targets.
      	* Makefile.in: Rebuild.
      
      From-SVN: r248295
      Than McIntosh committed
    • [multiple changes] · 51cd6b78
      2017-05-19  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/80333
      	* trans-io.c (nml_get_addr_expr): If we are dealing with class
      	type data set tmp tree to get that address.
      	(transfer_namelist_element): Set the array spec to point to the
      	the class data.
      
      2017-05-19  Paul Thomas  <pault@gcc.gnu.org>
      	    Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/80333
      	* list_read.c (nml_read_obj): Compute pointer into class/type
      	arrays from the nl->dim information. Update it for each iteration
      	of the loop for the given object.
      
      2017-05-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR libgfortran/80333
      	* gfortran.dg/dtio_30.f03: New test.
      
      From-SVN: r248293
      Jerry DeLisle committed
    • re PR sanitizer/80800 (UBSAN: yet another false positive) · 33f8c0a1
      	PR sanitizer/80800
      	* fold-const.c (extract_muldiv_1) <case TRUNC_DIV_EXPR>: Add
      	TYPE_OVERFLOW_WRAPS checks.
      
      	* c-c++-common/ubsan/pr80800.c: New test.
      	* c-c++-common/Wduplicated-branches-1.c: Adjust an expression.
      
      From-SVN: r248291
      Marek Polacek committed
    • c-format.c (locus): Move out of function scope, add GTY attribute. · ff502317
      gcc/c-family:
      2017-05-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * c-format.c (locus): Move out of function scope,
              add GTY attribute.
      
      gcc/cp:
      2017-05-19  Bernd Edlinger  <bernd.edlinger@hotmail.de>
      
              * config-lang.in (gtfiles): Add c-family/c-format.c,
              except.c, init.c, lambda.c and friend.c.
              * class.c (dvirt_fn): Move out of function scope,
              add GTY attribute.
              * except.c (fn1-5, throw_fn, rethrow_fn, spec): Likewise.
              * init.c (fn): Likewise.
              * lambda.c (ptr_id, max_id): Likewise.
              * friend.c (global_friend): Add GTY attribute.
      
      From-SVN: r248290
      Bernd Edlinger committed
    • call.c (add_list_candidates): Use OVL_FIRST. · 6f2f4050
      	* call.c (add_list_candidates): Use OVL_FIRST.
      	(build_new_method_call_1): Likewise.
      	* cp-tree.h (OVL_SINGLE_P): New.
      	(TYPE_HIDDEN_P): New.
      	* decl.c (xref_tag_1): Use TYPE_HIDDEN_P.
      	* dump.c (cp_tump_tree): Adjust overload dumping.
      	* error.c (dump_decl): Use OVL_SINGLE_P, simplify context
      	printing.
      	* method.c (lazily_declare_fn): Assert we added it.
      	* parser.c (cp_parser_nested_name_specifier): Use OVL_SINGLE_P,
      	OVL_FIRST.
      	(cp_parser_template_name): Use lkp_iterator.
      	* pt.c (begin_template_parm_list): Fixup comment.
      	(instantiate_class_template_1): Use TYPE_HIDDEN_P.
      	* tree.c (ovl_iterator::remove_node): Cope with inherited ctors.
      	(ovl_scope): Use lkp_iterator.
      
      From-SVN: r248285
      Nathan Sidwell committed
    • fortran: remove trailing exclamation mark from various diagnostics (PR fortran/79852) · 546c8974
      gcc/fortran/ChangeLog:
      	PR fortran/79852
      	* bbt.c (insert): Remove trailing exclamation mark from message.
      	* decl.c (gfc_match_final_decl): Likewise.
      	* dump-parse-tree.c (show_expr): Likewise.
      	* module.c (gfc_use_module): Likewise.
      	* primary.c (build_actual_constructor): Likewise.
      	(gfc_convert_to_structure_constructor): Likewise.
      
      From-SVN: r248283
      David Malcolm committed
    • Make the script executable. · 43e89e0a
      From-SVN: r248282
      Martin Liska committed
    • Introduce new check_GNU_style.py script. · 850098eb
      2017-05-19  Martin Liska  <mliska@suse.cz>
      
      	* check_GNU_style.py: New file.
      
      From-SVN: r248281
      Martin Liska committed
    • OpenACC 2.5 default (present) clause · 7fd549d2
      	gcc/c/
      	* c-parser.c (c_parser_omp_clause_default): Handle
      	"OMP_CLAUSE_DEFAULT_PRESENT".
      	gcc/cp/
      	* parser.c (cp_parser_omp_clause_default): Handle
      	"OMP_CLAUSE_DEFAULT_PRESENT".
      	gcc/fortran/
      	* gfortran.h (enum gfc_omp_default_sharing): Add
      	"OMP_DEFAULT_PRESENT".
      	* dump-parse-tree.c (show_omp_clauses): Handle it.
      	* openmp.c (gfc_match_omp_clauses): Likewise.
      	* trans-openmp.c (gfc_trans_omp_clauses): Likewise.
      	gcc/
      	* tree-core.h (enum omp_clause_default_kind): Add
      	"OMP_CLAUSE_DEFAULT_PRESENT".
      	* tree-pretty-print.c (dump_omp_clause): Handle it.
      	* gimplify.c (enum gimplify_omp_var_data): Add
      	"GOVD_MAP_FORCE_PRESENT".
      	(gimplify_adjust_omp_clauses_1): Map it to
      	"GOMP_MAP_FORCE_PRESENT".
      	(oacc_default_clause): Handle "OMP_CLAUSE_DEFAULT_PRESENT".
      	gcc/testsuite/
      	* c-c++-common/goacc/default-1.c: Update.
      	* c-c++-common/goacc/default-2.c: Likewise.
      	* c-c++-common/goacc/default-4.c: Likewise.
      	* gfortran.dg/goacc/default-1.f95: Likewise.
      	* gfortran.dg/goacc/default-4.f: Likewise.
      	* c-c++-common/goacc/default-5.c: New file.
      	* gfortran.dg/goacc/default-5.f: Likewise.
      	libgomp/
      	* testsuite/libgomp.oacc-c++/template-reduction.C: Update.
      	* testsuite/libgomp.oacc-c-c++-common/nested-2.c: Update.
      	* testsuite/libgomp.oacc-fortran/data-4-2.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/default-1.f90: Likewise.
      	* testsuite/libgomp.oacc-fortran/non-scalar-data.f90: Likewise.
      
      From-SVN: r248280
      Thomas Schwinge committed
    • Clarify gcc/gimplify.c:oacc_default_clause · 0d0afa9f
      	gcc/
      	* gimplify.c (oacc_default_clause): Clarify.
      
      From-SVN: r248279
      Thomas Schwinge committed
    • OpenACC default clause maintenance · 9740ed54
      	gcc/cp/
      	* parser.c (cp_parser_omp_clause_default): Avoid printing more
      	than one syntax error message.
      	gcc/testsuite/
      	* c-c++-common/goacc/default-1.c: New file.
      	* c-c++-common/goacc/default-2.c: Likewise.
      	* c-c++-common/goacc/data-default-1.c: Remove file, including its
      	test cases in...
      	* c-c++-common/goacc/default-3.c: ... this new file, and...
      	* c-c++-common/goacc/default-4.c: ... this new file.
      	* gfortran.dg/goacc/default.f95: Remove file, including its test
      	cases in...
      	* gfortran.dg/goacc/default-1.f95: ... this new file, and...
      	* gfortran.dg/goacc/default-2.f: ... this new file.
      	* gfortran.dg/goacc/default-3.f95: New file.
      	* gfortran.dg/goacc/default-4.f: Likewise.
      
      From-SVN: r248278
      Thomas Schwinge committed
    • libgomp hsa plugin: debug output for HSA runtime library loading failure · 0da2f96a
      	libgomp/
      	* plugin/plugin-hsa.c (DLSYM_FN, init_hsa_runtime_functions):
      	Debug output for failure.
      
      From-SVN: r248277
      Thomas Schwinge committed
    • Enable by default -Werror just for bootstrap-debug.mk and default build. · 01c712cb
      2017-05-19  Martin Liska  <mliska@suse.cz>
      
      	* configure.ac: Add --enable-werror-always just for
      	bootstrap-debug (or none build config) and do not add it
      	when we are on a release branch.
      	* configure: Regenerated.
      
      From-SVN: r248276
      Martin Liska committed
    • toplev.c (general_init): Call register dump lang hook. · 2a8a8d7b
      	LANG_HOOK_REGISTER_DUMPS
      	gcc/
      	* toplev.c (general_init): Call	register dump lang hook.
      	* doc/invoke.texi: Document -fdump-lang option family.
      	* dumpfile.c (dump_files): Remove class dump here.
      	(FIRST_AUTO_NUMBERED_DUMP): Adjust.
      	* dumpfile.h (tree_dump_index): Remove TDI_class.
      	* langhooks-def.h (lhd_register_dumps): Declare.
      	(LANG_HOOKS_REGISTER_DUMPS): Define.
      	(LANG_HOOKS_INITIALIZER): Add it.
      	* langhooks.c (lhd_register_dumps): Define.
      	* langhooks.h (struct lang_hooks): Add register_dumps.
      	c-family/
      	* c-opts.c (class_dump_file, class_dump_flags): Delete.
      	(c_common_parse_file): Remove class dump handling.
      	(get_dump_info): Likewise.
      	cp/
      	* class.c (class_dump_id): Define.
      	(dump_class_hierarchy, dump_vtable, dump_vtt): Use it.
      	* cp-objcp-common.c (cp_register_dumps): New.
      	* cp-objcp-common.h (cp_register_dumps): Declare.
      	(LANG_HOOKS_REGISTER_DUMPS): Override.
      	* cp-tree.h (class_dump_id): Declare.
      	testsuite/
      	* g++.dg/inherit/covariant7.C: Adjust.
      
      From-SVN: r248271
      Nathan Sidwell committed
    • [ARM] Only test tls-disable-literal-pool.c if target supports native TLS · a978134e
      2017-05-19  Prakhar Bahuguna  <prakhar.bahuguna@arm.com>
      
          gcc/testsuite/
          * gcc.target/arm/tls-disable-literal-pool.c: Change
          require-effective-target to tls_native.
          Move dg-error to return statement line and change to dg-message.
      
      From-SVN: r248270
      Prakhar Bahuguna committed
    • re PR c++/80593 (GCC 7, aligned_storage and “dereferencing type-punned pointer… · 39aac208
      re PR c++/80593 (GCC 7, aligned_storage and “dereferencing type-punned pointer will break strict-aliasing rules”)
      
      2017-05-19  Richard Biener  <rguenther@suse.de>
      
      	PR c++/80593
      	* c-warn.c (strict_aliasing_warning): Do not warn for accesses
      	to alias-set zero memory.
      
      	* g++.dg/warn/Wstrict-aliasing-bogus-char-2.C: New testcase.
      	* g++.dg/warn/Wstrict-aliasing-6.C: Adjust expected outcome.
      
      From-SVN: r248269
      Richard Biener committed
    • context.h (context::set_passes): New. · f00e3d4e
      	* context.h (context::set_passes): New.
      	* context.c (context::context): Do not create pass manager.
      	* toplev.c (general_init): Create pass manager here.
      
      From-SVN: r248268
      Nathan Sidwell committed
    • PR libstdc++/80796 Add new std::search overload for C++17 · f710ca61
      	PR libstdc++/80796
      	* include/bits/stl_algo.h (search): Add new overload for C++17.
      	* testsuite/25_algorithms/search/searcher.cc: New.
      
      From-SVN: r248266
      Jonathan Wakely committed
    • rs6000: Make constant formation a tiny bit better · 5d3ae76a
      If we cannot load a constant into a register in one insn, and that
      constant is a valid mask (for rotate instructions), we currently
      prefer to load -1 and then mask it.  This patch makes us not do that if
      instead we could use two add or or instructions, since those are
      sometimes faster on certain CPUs (and never are slower).
      
      
      	* config/rs6000/rs6000.md (splitter to load of -1 and mask): Don't
      	use this splitter if two add or or instructions would also work for
      	the constant we want to generate.
      
      From-SVN: r248265
      Segher Boessenkool committed
    • re PR tree-optimization/80821 (genmatch conflicting predicates) · 3a6461f3
      2017-05-19  Richard Biener  <rguenther@suse.de>
      
      	PR build/80821
      	* genmatch.c (dt_node::gen_kids_1): Add missing scope around
      	predicate evaluation.
      
      From-SVN: r248264
      Richard Biener committed
    • ipa-inline.h (ipa_call_summary): Turn sizes into signed; add ctor. · 9ca8a4c0
      	* ipa-inline.h (ipa_call_summary): Turn sizes into signed;
      	add ctor.
      	* ipa-inline.c (want_inline_small_function_p): Do not cast to
      	unsigned.
      
      From-SVN: r248263
      Jan Hubicka committed
    • ipa-inline-analysis.c (cgraph_2edge_hook_list, [...]): Remove. · 263e19c7
      	* ipa-inline-analysis.c (cgraph_2edge_hook_list, cgraph_edge_hook_list,
      	inline_edge_removal_hook, inline_edge_duplication_hook): Remove.
      	(inline_edge_summary_vec): Turn into ...
      	(ipa_call_summaries): ... this one.
      	(redirect_to_unreachable, edge_set_predicate,
      	evaluate_properties_for_edge, inline_summary_alloc,
      	reset_ipa_call_summary, reset_inline_summary,
      	inline_summary_t::duplicate): Update.
      	(inline_edge_duplication_hook): Turn to ...
      	(ipa_call_summary_t::duplicate): ... this one.
      	(inline_edge_removal_hook): Turn to ...
      	(ipa_call_summary_t::remove): ... this one.
      	(dump_inline_edge_summary): Turn to ...
      	(dump_ipa_call_summary): ... this one.
      	(estimate_function_body_sizes): Update.
      	(inline_update_callee_summaries): Update.
      	(remap_edge_change_prob): Update.
      	(remap_edge_summaries): Update.
      	(inline_merge_summary): Update.
      	(do_estimate_edge_time): Update.
      	(inline_generate_summary): Update.
      	(inline_read_section): Update.
      	(inline_read_summary): Update.
      	(inline_free_summary): Update.
      	* ipa-inline.c (can_inline_edge_p): Update.
      	(compute_inlined_call_time): Update.
      	(want_inline_small_function_p): Update.
      	(edge_badness): Update.
      	(early_inliner): Update.
      	* ipa-inline.h (inline_edge_summary): Turn to ...
      	(ipa_call_summary): ... this one.
      	(ipa_call_summary_t): New class.
      	(inline_edge_summary_t, inline_edge_summary_vec): Remove.
      	(ipa_call_summaries): New.
      	(inline_edge_summary): Remove.
      	(estimate_edge_growth): Update.
      	* ipa-profile.c (ipa_propagate_frequency_1): Update.
      	* ipa-prop.c (ipa_make_edge_direct_to_target): Update.
      	* ipa-split.c (execute_split_functions): Update.
      	* ipa.c (symbol_table::remove_unreachable_nodes): Update.
      
      From-SVN: r248262
      Jan Hubicka committed
    • re PR middle-end/80764 (ICE at -O3 in both 32-bit and 64-bit modes on… · 035ab826
      re PR middle-end/80764 (ICE at -O3 in both 32-bit and 64-bit modes on x86_64-linux-gnu (internal compiler error: in verify_loop_structure, at cfgloop.c:1644))
      
      2017-05-19  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/80764
      	* cfgexpand.c (expand_gimple_cond): Fix loop fixup.
      
      	* gcc.dg/torture/pr80764.c: New testcase.
      
      From-SVN: r248261
      Richard Biener committed
    • Daily bump. · f0da1300
      From-SVN: r248260
      GCC Administrator committed
  5. 18 May, 2017 7 commits
    • rs6000: Separate shrink-wrapping for FPRs · 6e21f3b5
      This patch implements separate shrink-wrapping for the non-volatile
      floating point registers (FPR14..FPR31).  It is pretty much exactly
      analogous to the code for GPRs.
      
      
      	* config/rs6000/rs6000.c (struct machine_function): Add field
      	fpr_is_wrapped_separately.
      	(rs6000_get_separate_components): Use 64 components.  Handle the
      	new FPR components.
      	(rs6000_components_for_bb): Handle the FPR components.
      	(rs6000_emit_prologue_components): Handle the FPR components.
      	(rs6000_emit_epilogue_components): Handle the FPR components.
      	(rs6000_set_handled_components): Handle the FPR components.
      	(rs6000_emit_prologue): Don't output prologue code for those FPRs
      	that are already separately shrink-wrapped.
      	(rs6000_emit_epilogue): Don't output epilogue code for those FPRs
      	that are already separately shrink-wrapped.
      
      From-SVN: r248256
      Segher Boessenkool committed
    • re PR go/80814 (commit aa443150c83535fedccb3dee80daa7e01fafd92d causes a build error.) · afbc9ecb
      	PR go/80814
      	* Makefile.am (AM_GOCFLAGS): Define.
      	* Makefile.in: Rebuild.
      
      From-SVN: r248255
      Ian Lance Taylor committed
    • re PR target/80510 (Optimize Power7/power8 Altivec load/stores) · 52e14b96
      [gcc]
      2017-05-18  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/80510
      	* config/rs6000/predicates.md (simple_offsettable_mem_operand):
      	New predicate.
      
      	* config/rs6000/rs6000.md (ALTIVEC_DFORM): New iterator.
      	(define_peephole2 for Altivec d-form load): Add peepholes to catch
      	cases where the register allocator uses a move and an offsettable
      	memory operation to/from a FPR register on ISA 2.06/2.07.
      	(define_peephole2 for Altivec d-form store): Likewise.
      
      [gcc/testsuite]
      2017-05-18  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/80510
      	* gcc.target/powerpc/pr80510-1.c: New test.
      	* gcc.target/powerpc/pr80510-2.c: Likewise.
      
      From-SVN: r248254
      Michael Meissner committed
    • Add testcase to ensure that #pragma GCC diagnostic push/pop works with -Wtraditional · 4287da82
      2017-05-18  Eric Gallager  <egall@gwmail.gwu.edu>
      
      	* gcc.dg/pragma-diag-7.c: New test.
      
      From-SVN: r248253
      Eric Gallager committed
    • gcc_release (build_gzip): Build xz tarball instead of bz2 tarball. · d3006155
      2017-05-18  Matthias Klose  <doko@ubuntu.com>
      
              * gcc_release (build_gzip): Build xz tarball instead of bz2 tarball.
              (build_diffs): Handle building diffs from either bz2 or xz tarballs,
              compress diffs using xz instead of bz2.
              (build_diff): Likewise.
              (upload_files): Check for *.xz files instead of *.bz2 files.
              (announce_snapshot): Announce xz tarball instead of bz2 tarball.
              (XZ): New definition.
              (<toplevel>): Look for both bz2 and xz compressed old tarballs.
      
      From-SVN: r248251
      Matthias Klose committed
    • cp-tree.h (OVL_ARG_DEPENDENT): Delete. · 1bf07cc3
      	* cp-tree.h (OVL_ARG_DEPENDENT): Delete.
      	(OVL_USED_P): New.
      	(lookup_keep): Declare.
      	* name-lookup.c (add_function): Don't set OVL_ARG_DEPENDENT.
      	* pt.c (tsubst_copy): Assert lookup is persistent.
      	* semantics.c (finish_call_expr): Use lkp_iterator, call
      	lookup_keep.
      	* tree.c (ovl_copy): New.
      	(ovl_insert, ovl_iterator::remove_node): Copy immutable nodes.
      	(lookup_keep): New.
      
      From-SVN: r248250
      Nathan Sidwell committed
    • compiler: ignore struct field tags for type conversion · 7d2f2a6b
          
          Go 1.8 includes a language change (https://golang.org/doc/go1.8#language):
          in an explicit conversion from one struct type to another, any field
          tags are ignored.
          
          This CL implements this language change in the gofrontend.  The tests
          for this are in the gc testsuite, which will be copied into the gccgo
          repository in due course.
          
          Updates golang/go#16085.
          
          Reviewed-on: https://go-review.googlesource.com/43614
      
      From-SVN: r248248
      Ian Lance Taylor committed