1. 21 May, 2019 29 commits
    • rs6000: wh -> d+p8v · fae803b2
      This replaces the "wh" constraint by "d", with isa "p8v".
      
      
      	* config/rs6000/constraints.md (define_register_constraint "wh"):
      	Delete.
      	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Delete
      	RS6000_CONSTRAINT_wh.
      	* config/rs6000/rs6000.c (rs6000_debug_reg_global): Adjust.
      	(rs6000_init_hard_regno_mode_ok): Adjust.
      	* config/rs6000/rs6000.md: Replace "wh" constraint by "wa" with "p8v".
      	* doc/md.texi (Machine Constraints): Adjust.
      
      From-SVN: r271483
      Segher Boessenkool committed
    • DR 1940 - static_assert in anonymous unions. · 5007f60b
      	* g++.dg/DRs/dr1940.C: New test.
      
      From-SVN: r271482
      Marek Polacek committed
    • re PR target/90547 (ICE in gen_lowpart_general, at rtlhooks.c:63) · d9cb4277
      	PR target/90547
      	* config/i386/i386.md (anddi_1 to andsi_1_zext splitter):
      	Avoid calling gen_lowpart with CONST operand.
      
      testsuite/ChangeLog:
      
      	PR target/90547
      	* gcc.target/i386/pr90547.c: New test.
      
      From-SVN: r271479
      Uros Bizjak committed
    • preserve more debug stmts in gimple jump threading · 40dada26
      Gimple jump threading does not duplicate forwarder blocks that might
      be present before or after the second copied block.  This silently
      drops debug binds and markers that might be present in them.  This
      patch attempts to preserve them.
      
      For blocks after either copied block, we attempt to append debug stmts
      to the copied block, if it does not end with a block-ending stmt.
      Failing that, for blocks between both copied blocks, we prepend its
      debug stmts to the copy of the second block.
      
      If everything fails, we still drop debug stmts on the floor, though
      preexisting code consolidates debug binds in the block that threading
      flows into, so only markers are really lost.  We can't do much better
      than that without conditional binds and markers, or debug stmts in
      edges, or somesuch.
      
      If we append debug stmts to a reusable template block, we copy it
      after splitting out the debug stmts, and before putting them back.
      
      
      for  gcc/ChangeLog
      
      	* tree-ssa-threadupdate.c (struct ssa_local_info_t): Add
      	field template_last_to_copy.
      	(ssa_create_duplicates): Set it, and use it.  Attempt to
      	preserve more debug stmts.
      
      From-SVN: r271477
      Alexandre Oliva committed
    • Fix dg-require-* syntax · 53329d29
      	* gcc.dg/Wattribute-alias.c: Pass emtpy arg to dg-require-ifunc.
      
      	* gcc.c-torture/execute/20030125-1.c: Pass emtpy arg to dg-require-weak.
      
      	* gcc.dg/torture/ftrapv-2.c: Pass empty arg to dg-require-fork.
      
      	* gcc.target/i386/pr84723-1.c: Remove dg-require-ifunc.
      	* gcc.target/i386/pr84723-2.c: Likewise.
      	* gcc.target/i386/pr84723-3.c: Likewise.
      	* gcc.target/i386/pr84723-4.c: Likewise.
      	* gcc.target/i386/pr84723-5.c: Likewise.
      
      From-SVN: r271476
      Rainer Orth committed
    • darwin, testsuite - fix PR 67958 · b33a3c64
      These tests require specific scan-asms in some cases because
      of the different codegen for Dawin.  Added some explanations
      too.
      
      2019-05-21  Iain Sandoe  <iain@sandoe.co.uk>
      
      	PR testsuite/67958
      	* gcc.target/i386/pr32219-1.c: Adjust scan-asms for Darwin, comment
      	the differences.
      	* gcc.target/i386/pr32219-2.c: Likewise.
      	* gcc.target/i386/pr32219-3.c: Likewise.
      	* gcc.target/i386/pr32219-4.c: Likewise.
      	* gcc.target/i386/pr32219-5.c: Likewise.
      	* gcc.target/i386/pr32219-6.c: Likewise.
      	* gcc.target/i386/pr32219-7.c: Likewise.
      	* gcc.target/i386/pr32219-8.c: Likewise.
      
      From-SVN: r271475
      Iain Sandoe committed
    • darwin, testsuite - fix PR 63891. · 9f0c3547
      This is a testcase failing because one part of the codegen is
      (correctly) generating the scan-asm-not signature.
      
      Fixed by altering the build options.
      
      gcc/testsuite/
      
      2019-05-18  Iain Sandoe  <iain@sandoe.co.uk>
      
      	PR target/63891
      	* gcc.dg/darwin-weakimport-3.c: Adjust options and explain
      	the reasons.
      
      From-SVN: r271474
      Iain Sandoe committed
    • sse.md (VF1_AVX2): New mode iterator. · c54eb7f4
      	* config/i386/sse.md (VF1_AVX2): New mode iterator.
      	(signbit<mode>2): New expander
      
      testsuite/ChangeLog:
      
      	* gcc.target/i386/vect-signbitf.c: New test.
      
      From-SVN: r271473
      Uros Bizjak committed
    • re PR bootstrap/87338 (gcc 8.2 fails to bootstrap on ia64) · c9ae62c2
      	PR bootstrap/87338
      	* dwarf2out.c (dwarf2out_inline_entry): Use ASM_OUTPUT_DEBUG_LABEL
      	instead of ASM_GENERATE_INTERNAL_LABEL and ASM_OUTPUT_LABEL.
      
      From-SVN: r271472
      James Clarke committed
    • [C++ PATCH] Using decls · 1c4320eb
      https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01411.html
      	* name-lookup.c (do_nonmember_using_decl): Drop INSERT_P
      	parameter.  Document.
      	(finish_nonmember_using_decl): Adjust do_nonmember_using_decl
      	calls.  Remove stray FIXME comment.
      
      From-SVN: r271471
      Nathan Sidwell committed
    • cpuid.h (__cpuid): For 32bit targets... · 8c365be6
      	* config/i386/cpuid.h (__cpuid): For 32bit targets, zero
      	%ebx and %ecx bafore calling cpuid with leaf 1 or
      	non-constant leaf argument.
      
      From-SVN: r271469
      Uros Bizjak committed
    • libfortran/90038: Document new wait=.false. implementation · 1a815b18
      2019-05-21  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR libfortran/90038
      	* intrinsic.texi (EXECUTE_COMMAND_LINE): Explain new
      	wait=.false. implementation.
      
      From-SVN: r271468
      Janne Blomqvist committed
    • [C++ PATCH] Using decls · 692af872
      https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01396.html
      	gcc/cp/
      	* name-lookup.h (struct cp_binding_level): Drop usings field.
      	(finish_namespace_using_decl, finish_local_using_decl): Replace with ...
      	(finish_nonmember_using_decl): ... this.
      	* name-lookup.c (push_using_decl_1, push_using_decl):
      	(do_nonmember_using_decl): ... here.  Add INSERT_P arg.  Reimplement.
      	(validate_nonmember_using_decl, finish_namespace_using_decl)
      	(finish_local_using_decl): Replace with ...
      	(finish_nonmember_using_decl): ... this.  Drop DECL parm.
      	* parser.c (cp_parser_using_declaration): Don't do lookup here.
      	* pt.c (tsubst_expr): Do not do using decl lookup here.
      
      	gcc/testsuite/
      	* g++.dg/lookup/using53.C: Adjust diagnostic.
      
      	libcc1/
      	* libcp1plugin.cc (plugin_add_using_decl): Use
      	finish_nonmember_using_decl.
      
      From-SVN: r271467
      Nathan Sidwell committed
    • PR libstdc++/90252 fix effective-target check for TBB · f445f0f0
      	PR libstdc++/90252
      	* testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
      	Use "additional_flags" to pass -ltbb to v3_target_compile command.
      	Use check_v3_target_prop_cached to cache the result of the test.
      
      From-SVN: r271466
      Jonathan Wakely committed
    • Fix names of _Lock_policy constants in libstdc++ manual · 049f115a
      	* doc/xml/manual/shared_ptr.xml: Fix names of lock policy constants.
      
      From-SVN: r271465
      Jonathan Wakely committed
    • PR90545, gcc.target/powerpc/fold-vec-splats-floatdouble.c fails · 78e5da0a
      I figure a tweak to register_move_cost is better than sprinkling ?s
      in instruction operand alternatives.
      
      	PR target/90545
      	* config/rs6000/rs6000.c (rs6000_register_move_cost): Increase
      	power9 direct move cost.
      	* testsuite/gcc.target/powerpc/fold-vec-splats-floatdouble.c:
      	Correct comments and rename functions to suit parameters.
      
      From-SVN: r271464
      Alan Modra committed
    • re PR tree-optimization/90510 (Unnecessary permutation) · 4f8b89f0
      2019-05-21  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/90510
      	* fold-const.c (fold_read_from_vector): New function.
      	* fold-const.h (fold_read_from_vector): Declare.
      	* match.pd (VEC_PERM_EXPR): Build BIT_INSERT_EXPRs for
      	single-element insert permutations.  Canonicalize selector
      	further and fix issue with last commit.
      
      	* gcc.target/i386/pr90510.c: New testcase.
      
      From-SVN: r271463
      Richard Biener committed
    • Add missing "" for dg-require-ifunc. · 3b0657dc
      2019-05-21  Martin Liska  <mliska@suse.cz>
      
      	* gcc.target/i386/pr90500-1.c: Add missing '""'.
      	* gcc.target/i386/pr90500-2.c: Likewise.
      
      From-SVN: r271462
      Martin Liska committed
    • Don't split non-critical edges in crited · d8bbf1d9
      gcc/ChangeLog:
      
              * tree-cfg.h (split_critical_edges): Add for_edge_insertion_p
      	parameter with default value false to declaration.
              (split_edges_for_insertion): New inline function.  Wrapper for
      	split_critical_edges with for_edge_insertion_p = true.
              * tree-cfg.c (split_critical_edges): Don't split non-critical
      	edges if for_edge_insertion_p is false.  Fix whitespace.
              * tree-ssa-pre.c (pass_pre::execute): Call
      	split_edges_for_insertion instead of split_critical_edges.
              * gcc/tree-ssa-tail-merge.c (tail_merge_optimize): Ditto.
              * gcc/tree-ssa-sink.c (pass_sink_code::execute): Ditto.
      	(pass_data_sink_code): Update function name in the comment.
      
      From-SVN: r271461
      Vladislav Ivanishin committed
    • tree-ssa-uninit: suppress more spurious warnings · 0f8e84c6
      	* tree-ssa-uninit.c (value_sat_pred_p): This new function is a wrapper
              around is_value_included_in that knows how to handle BIT_AND_EXPR.
              (is_pred_expr_subset_of): Use the new function.  Handle more cases where
              code1 == EQ_EXPR and where code1 == BIT_AND_EXPR and thus fix some false
              positives.
      
      testsuite/
              * gcc.dg/uninit-28-gimple.c: New test.
              * gcc.dg/uninit-29-gimple.c: New test.
              * gcc.dg/uninit-30-gimple.c: New test.
              * gcc.dg/uninit-31-gimple.c: New test.
      
      From-SVN: r271460
      Vladislav Ivanishin committed
    • contrib/mklog: Open files in text mode · 36902ed6
      Due to the python 3 conversion, files should be opened in text mode,
      matching stdin/stdout.
      
      2019-05-21  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	* mklog: Open files in text mode.
      
      From-SVN: r271459
      Janne Blomqvist committed
    • Enable -O2 for pr90263.c test. · 9c4ab6fa
      2019-05-21  Martin Liska  <mliska@suse.cz>
      
      	* gcc.dg/pr90263.c: Add -O2.
      
      From-SVN: r271458
      Martin Liska committed
    • c-ada-spec.h (enum cpp_operation): Add IS_ASSIGNMENT_OPERATOR. · 419ba5b9
      c-family/
      	* c-ada-spec.h (enum cpp_operation): Add IS_ASSIGNMENT_OPERATOR.
      	* c-ada-spec.c (print_assignment_operator): New function.
      	(dump_ada_declaration) <FUNCTION_DECL>: Call it do dump explicit copy
      	assignment operators declared as methods and filter out the others.
      cp/
      	* decl2.c (cpp_check) <IS_ASSIGNMENT_OPERATOR>: New case.
      
      From-SVN: r271457
      Eric Botcazou committed
    • Convert contrib/mklog script to Python 3 · eaa6a39d
      Upstream will drop support for Python 2.x on January 1, 2020.  This
      patch converts the contrib/mklog script to Python 3.  The process for
      the conversion was as follows.
      
      - Use the futurize tool (https://python-future.org ) to apply the
        print_with_import, except, and dict transformations.
      
      - Remove the "from __future__ import print_function".
      
      - Change the shebang line to search for python3 in the environment.
      
      - Modify the run() function to return a str instead of bytes.
      
      - Update the copyright year.
      
      contrib/ChangeLog:
      
      2019-05-21  Janne Blomqvist  <jb@gcc.gnu.org>
      
              * mklog: Convert to Python 3.
      
      From-SVN: r271456
      Janne Blomqvist committed
    • fix diagnostic quoting/spelling in rs6000 · cb7ac91b
      2019-05-21  Martin Liska  <mliska@suse.cz>
      
      	* config/rs6000/driver-rs6000.c (elf_platform): Do not use
      	an extra newline.
      	* config/rs6000/rs6000-c.c (rs6000_pragma_longcal): Wrap pragma in %<%>.
      	(altivec_resolve_overloaded_builtin): Likewise for vec_lvsl and
      	vec_lvsr.
      	* config/rs6000/rs6000.c (rs6000_option_override_internal):
      	Quote a C type.
      	(rs6000_function_arg): Likewise.
      	(rs6000_expand_set_fpscr_drn_builtin): Remove trailing dot.
      	(rs6000_expand_ternop_builtin): Use interval syntax.
      	(get_element_number): Likewise.
      	(altivec_expand_builtin): Likewise.
      	(rs6000_get_function_versions_dispatcher): Quote target_clones.
      
      Fix test-suite.
      2019-05-21  Martin Liska  <mliska@suse.cz>
      
      	* gcc.target/powerpc/ppc64-abi-warn-1.c: Wrap a type.
      	* gcc.target/powerpc/pr80315-1.c: Use new interval format.
      	* gcc.target/powerpc/pr80315-2.c: Likewise.
      	* gcc.target/powerpc/pr80315-3.c: Likewise.
      	* gcc.target/powerpc/pr80315-4.c: Likewise.
      	* gcc.target/powerpc/warn-lvsl-lvsr.c: Wrap builtin names.
      
      From-SVN: r271455
      Martin Liska committed
    • Move a test-case (PR testsuite/90551). · 601071c8
      2019-05-21  Martin Liska  <mliska@suse.cz>
      
      	PR testsuite/90551
      	* pr90263.c: Move from gcc.c-torture/compile
      	into gcc.dg.
      
      From-SVN: r271454
      Martin Liska committed
    • tbb-backend effective target should check ability to link TBB · 83837311
      	    PR libstdc++/90252
      	    * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
      	    Changed v3_target_compile check from preprocess to executable.
      	    Added "-ltbb" to v3_target_compile flags.
      
      From-SVN: r271451
      Thomas Rodgers committed
    • Check TBB version in tbb-backed effective target check · d748c543
            * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
            Add check for Thread Building Blocks 2018 or later.
      
      From-SVN: r271450
      Thomas Rodgers committed
    • Daily bump. · 469528f2
      From-SVN: r271449
      GCC Administrator committed
  2. 20 May, 2019 11 commits