gcc.git
5 years agoadd myself as selective scheduling reviewer
Alexander Monakov [Fri, 15 Mar 2019 16:49:24 +0000 (19:49 +0300)]
add myself as selective scheduling reviewer

* MAINTAINERS (Reviewers): Add myself as selective scheduling reviewer.
(Write After Approval): Remove myself.

From-SVN: r269712

5 years agocompiler: use const rather than constexpr
Ian Lance Taylor [Fri, 15 Mar 2019 15:50:34 +0000 (15:50 +0000)]
compiler: use const rather than constexpr

    Fixes bootstrap with a C++98 compiler.

    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/167762

From-SVN: r269710

5 years ago[PR88534] accept VAR_DECL in class literal template parms
Alexandre Oliva [Fri, 15 Mar 2019 13:56:55 +0000 (13:56 +0000)]
[PR88534] accept VAR_DECL in class literal template parms

P0732R2 / C++ 2a introduce class literals as template parameters.  The
front-end uses VAR_DECLs constructed from such literals to bind the
template PARM_DECLs, but dwarf2out.c used to reject such VAR_DECLs.

Taking DECL_INITIAL from such VAR_DECLs enables the generation of
DW_AT_const_value for them, at least when the class literal can
actually be represented as such.

for  gcc/ChangeLog

PR c++/88534
PR c++/88537
* dwarf2out.c (generic_parameter_die): Follow DECL_INITIAL of
VAR_DECL args.

for  gcc/testsuite/ChangeLog

PR c++/88534
PR c++/88537
* g++.dg/cpp2a/pr88534.C: New.
* g++.dg/cpp2a/pr88537.C: New.

From-SVN: r269709

5 years agore PR d/88990 (ICE in get_symbol_decl, at d/decl.cc:1097)
Iain Buclaw [Fri, 15 Mar 2019 13:37:07 +0000 (13:37 +0000)]
re PR d/88990 (ICE in get_symbol_decl, at d/decl.cc:1097)

    PR d/88990
d/dmd: Merge upstream dmd 8d4c876c6

The extern storage class flag was wrongly propagated to function scope
when starting the semantic pass on the body.

Fixes https://gcc.gnu.org/PR88990

Reviewed-on: https://github.com/dlang/dmd/pull/9452

From-SVN: r269708

5 years agoS/390: Fix tests that expect unquoted option names
Robin Dapp [Fri, 15 Mar 2019 13:19:10 +0000 (13:19 +0000)]
S/390: Fix tests that expect unquoted option names

r269586 puts single quotes around option names. This patch fixes tests
that expect the old format.

From-SVN: r269706

5 years ago[AArch64] PR target/89719 Adjust gcc.target/aarch64/spellcheck*.c tests
Kyrylo Tkachov [Fri, 15 Mar 2019 09:50:11 +0000 (09:50 +0000)]
[AArch64] PR target/89719 Adjust gcc.target/aarch64/spellcheck*.c tests

As of recently the -march,-mcpu,-mtune strings in the error messages are
now quoted.
This patch adjusts the testcases in gcc.target/aarch64/ that had started
failing due to that change.

PR target/89719
* gcc.target/aarch64/spellcheck_4.c: Adjust dg-error string.
* gcc.target/aarch64/spellcheck_5.c: Likewise.
* gcc.target/aarch64/spellcheck_6.c: Likewise.

From-SVN: r269703

5 years agore PR c++/89709 (ICE with constexpr and "-O")
Jakub Jelinek [Fri, 15 Mar 2019 09:23:11 +0000 (10:23 +0100)]
re PR c++/89709 (ICE with constexpr and "-O")

PR c++/89709
* tree.c (inchash::add_expr): Strip any location wrappers.
* fold-const.c (operand_equal_p): Move stripping of location wrapper
after hash verification.

* g++.dg/cpp0x/constexpr-89709.C: New test.

From-SVN: r269702

5 years agore PR debug/89704 (ICE in add_const_value_attribute, at dwarf2out.c:19685)
Jakub Jelinek [Fri, 15 Mar 2019 08:00:46 +0000 (09:00 +0100)]
re PR debug/89704 (ICE in add_const_value_attribute, at dwarf2out.c:19685)

PR debug/89704
* dwarf2out.c (add_const_value_attribute): Return false for MINUS,
SIGN_EXTEND and ZERO_EXTEND.

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

From-SVN: r269700

5 years agocompiler: eliminate bound checks in append expression
Ian Lance Taylor [Fri, 15 Mar 2019 04:34:43 +0000 (04:34 +0000)]
compiler: eliminate bound checks in append expression

    The compiler generates two array index expressions when lowering
    an append expression. Currently they generate bound checks.
    Bound checks are not necessary in this case, as we know the slice
    has, or will grow to, enough length and capacity. Eliminate them.

    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/166817

From-SVN: r269699

5 years agoDaily bump.
GCC Administrator [Fri, 15 Mar 2019 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r269698

5 years agohash-table.h (remove_elt_with_hash): Return if slot is NULL rather than if is_empty...
Jason Merrill [Thu, 14 Mar 2019 22:47:01 +0000 (18:47 -0400)]
hash-table.h (remove_elt_with_hash): Return if slot is NULL rather than if is_empty (*slot).

* hash-table.h (remove_elt_with_hash): Return if slot is NULL rather
than if is_empty (*slot).
* hash-set-tests.c (test_set_of_strings): Add tests for addition of
existing elt and for elt removal.
* hash-map-tests.c (test_map_of_strings_to_int): Add test for removal
of already removed elt.

* hashtab.c (htab_remove_elt_with_hash): Return if slot is NULL rather
than if *slot is HTAB_EMPTY_ENTRY.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r269695

5 years agoi386: Handle REG_EH_REGION note
H.J. Lu [Thu, 14 Mar 2019 20:38:52 +0000 (20:38 +0000)]
i386: Handle REG_EH_REGION note

When we split:

(insn 18 17 76 2 (set (reg:SF 88 [ _19 ])
        (float:SF (mem/c:SI (symbol_ref:DI ("d") [flags 0x2]  <var_decl 0x7fd6d8290c60 d>) [1 d+0 S4 A32]))) "x.ii":4:20 170 {*floatsisf2}
     (expr_list:REG_EH_REGION (const_int 2 [0x2])
        (nil)))

to

(insn 94 17 18 2 (set (reg:V4SF 115)
        (vec_merge:V4SF (vec_duplicate:V4SF (float:SF (mem/c:SI (symbol_ref:DI ("d") [flags 0x2]  <var_decl 0x7f346837ac60 d>) [1 d+0 S4 A32])))
            (reg:V4SF 114)
            (const_int 1 [0x1]))) "x.ii":4:20 -1
     (nil))
(insn 18 94 76 2 (set (reg:SF 88 [ _19 ])
        (subreg:SF (reg:V4SF 115) 0)) "x.ii":4:20 112 {*movsf_internal}
     (expr_list:REG_EH_REGION (const_int 2 [0x2])
        (nil)))

we must copy the REG_EH_REGION note to the first insn and split the block
after the newly added insn.  The REG_EH_REGION on the second insn will be
removed later since it no longer traps.

gcc/

PR target/89650
* config/i386/i386.c (remove_partial_avx_dependency): Handle
REG_EH_REGION note.

gcc/testsuite/

PR target/89650
* g++.target/i386/pr89650.C: New test.

From-SVN: r269694

5 years agoDon't require 'bool' in a concept definition.
Jason Merrill [Thu, 14 Mar 2019 19:53:04 +0000 (15:53 -0400)]
Don't require 'bool' in a concept definition.

* parser.c (cp_parser_decl_specifier_seq): Support C++20
concept-definition syntax without 'bool'.

From-SVN: r269692

5 years ago* gcc.target/i386/pr85860.c: Use target int128 instead of lp64.
Uros Bizjak [Thu, 14 Mar 2019 18:39:44 +0000 (19:39 +0100)]
* gcc.target/i386/pr85860.c: Use target int128 instead of lp64.

From-SVN: r269691

5 years agogfortran.texi: Document Q edit descriptor under " Extensions not implemented in GNU...
Thomas Koenig [Thu, 14 Mar 2019 17:31:18 +0000 (17:31 +0000)]
gfortran.texi: Document Q edit descriptor under " Extensions not implemented in GNU Fortran".

2019-03-14  Thomas Koenig  <tkoenig@gcc.gnu.org>

* gfortran.texi: Document Q edit descriptor under
" Extensions not implemented in GNU Fortran".

From-SVN: r269690

5 years agoRemove dead option from manual (PR other/89712).
Martin Liska [Thu, 14 Mar 2019 14:19:33 +0000 (15:19 +0100)]
Remove dead option from manual (PR other/89712).

2019-03-14  Martin Liska  <mliska@suse.cz>

PR other/89712
* doc/invoke.texi: Remove -fdump-class-hierarchy option.

From-SVN: r269684

5 years agore PR target/89711 (ICE in insert_vi_for_tree, at tree-ssa-structalias.c:2832)
Richard Biener [Thu, 14 Mar 2019 14:05:26 +0000 (14:05 +0000)]
re PR target/89711 (ICE in insert_vi_for_tree, at tree-ssa-structalias.c:2832)

2019-03-14  Richard Biener  <rguenther@suse.de>

PR target/89711
* config/i386/i386.c (make_resolver_func): Properly set
DECL_CONTEXT on the RESULT_DECL.
* config/rs6000/rs6000.c (make_resolver_func): Likewise.

From-SVN: r269683

5 years agoc-tree.h (enum c_declspec_il): New.
Richard Biener [Thu, 14 Mar 2019 13:25:27 +0000 (13:25 +0000)]
c-tree.h (enum c_declspec_il): New.

2019-03-14  Richard Biener  <rguenther@suse.de>

c/
* c-tree.h (enum c_declspec_il): New.
(struct c_declspecs): Merge gimple_p and rtl_p into declspec_il
enum bitfield.
* c-parser.c (c_parser_declaration_or_fndef): Adjust accordingly.
Pass start pass and declspec_il to c_parser_parse_gimple_body.
(c_parser_declspecs): Adjust.
* gimple-parser.c: Include cfg.h, cfghooks.h, cfganal.h, tree-cfg.h,
gimple-iterator.h, cfgloop.h, tree-phinodes.h, tree-into-ssa.h
and bitmap.h.
(struct gimple_parser): New.
(gimple_parser::push_edge): New method.
(c_parser_gimple_parse_bb_spec): New helper.
(c_parser_parse_gimple_body): Get start pass and IL specification.
Initialize SSA and CFG.
(c_parser_gimple_compound_statement): Handle CFG and SSA build.
Build a gimple_parser parsing state and pass it along.
(c_parser_gimple_statement): Change intermittend __PHI internal
function argument for the edge.
(c_parser_gimple_or_rtl_pass_list): Handle ssa, cfg flags.
(c_parser_gimple_goto_stmt): Record edges to build.
(c_parser_gimple_if_stmt): Likewise.
* gimple-parser.h (c_parser_parse_gimple_body): Adjust.
(c_parser_gimple_or_rtl_pass_list): Likewise.

* gimple-pretty-print.c: Include cfgloop.h.
(dump_gimple_phi): Adjust.
(dump_gimple_bb_header): Dump loop header for GIMPLE.
(pp_cfg_jump): Adjust.
(dump_implicit_edges): Dump fallthru to next block for GIMPLE as well.
* tree-cfg.c (build_gimple_cfg): Remove lower_phi_internal_fn call.
(lower_phi_internal_fn): Remove.
(verify_gimple_call): Remove IFN_PHI special-casing.
(dump_function_to_file): Dump IL state.
* tree-into-ssa.c (rewrite_add_phi_arguments): Revert changes
done to deal with PHI nodes being present in non-SSA state.

* gcc.dg/gimplefe-13.c: Adjust.
* gcc.dg/gimplefe-14.c: Likewise.
* gcc.dg/gimplefe-17.c: Likewise.
* gcc.dg/gimplefe-18.c: Likewise.
* gcc.dg/gimplefe-7.c: Likewise.
* gcc.dg/torture/pr89595.c: Likewise.
* gcc.dg/tree-ssa/cunroll-13.c: Likewise.
* gcc.dg/tree-ssa/ivopt_mult_1g.c: Likewise.
* gcc.dg/tree-ssa/ivopt_mult_2g.c: Likewise.
* gcc.dg/tree-ssa/scev-3.c: Likewise.
* gcc.dg/tree-ssa/scev-4.c: Likewise.
* gcc.dg/tree-ssa/scev-5.c: Likewise.
* gcc.dg/vect/vect-cond-arith-2.c: Likewise.
* gcc.target/aarch64/sve/loop_add_6.c: Likewise.

From-SVN: r269682

5 years agore PR ipa/89684 (ICE in gsi_for_stmt, at gimple-iterator.c:613)
Jakub Jelinek [Thu, 14 Mar 2019 13:05:34 +0000 (14:05 +0100)]
re PR ipa/89684 (ICE in gsi_for_stmt, at gimple-iterator.c:613)

PR ipa/89684
* multiple_target.c (create_dispatcher_calls): Change
references_to_redirect from vector of ipa_ref * to vector of ipa_ref.
In the node->iterate_referring loop, push *ref rather than ref, call
ref->remove_reference () and always pass 0 to iterate_referring.

* gcc.target/i386/pr89684.c: New test.

From-SVN: r269681

5 years agore PR rtl-optimization/89679 (wrong code with -Og -frerun-cse-after-loop -fno-tree...
Jakub Jelinek [Thu, 14 Mar 2019 12:21:36 +0000 (13:21 +0100)]
re PR rtl-optimization/89679 (wrong code with -Og -frerun-cse-after-loop -fno-tree-fre)

PR rtl-optimization/89679
* expmed.c (expand_mult_const): Don't add a REG_EQUAL note if it
would contain a paradoxical SUBREG.

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

From-SVN: r269680

5 years agore PR tree-optimization/89710 (ICE in dyn_cast<gcond*, gimple>(gimple*) / should_dupl...
Richard Biener [Thu, 14 Mar 2019 11:07:41 +0000 (11:07 +0000)]
re PR tree-optimization/89710 (ICE in dyn_cast<gcond*, gimple>(gimple*) / should_duplicate_loop_header_p)

2019-03-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/89710
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Use
safe_dyn_cast.

* gcc.dg/torture/pr89710.c: New testcase.

From-SVN: r269679

5 years agoGCOV: print {start,end}_column in JSON file and gcov-dump tool.
Martin Liska [Thu, 14 Mar 2019 09:33:54 +0000 (10:33 +0100)]
GCOV: print {start,end}_column in JSON file and gcov-dump tool.

2019-03-14  Martin Liska  <mliska@suse.cz>

* coverage.c (coverage_begin_function): Stream also
end_column.
* doc/gcov.texi: Document 2 new fields in JSON file.  Improve
documentation about function declaration location.
* gcov-dump.c (tag_function): Print whole range
of function declaration.
* gcov.c (struct function_info): Add end_column field.
(function_info::function_info): Initialize it.
(output_json_intermediate_file): Output {start,end}_column
fields.
(read_graph_file): Read end_column.

From-SVN: r269678

5 years agore PR c++/89698 (Run-time error due to optimization of field access after cast at...
Richard Biener [Thu, 14 Mar 2019 09:24:21 +0000 (09:24 +0000)]
re PR c++/89698 (Run-time error due to optimization of field access after cast at -Os/-O2 and higher)

2019-03-14  Richard Biener  <rguenther@suse.de>

PR middle-end/89698
* fold-const.c (operand_equal_p): For INDIRECT_REF check
that the access types are similar.

* g++.dg/torture/pr89698.C: New testcase.

From-SVN: r269677

5 years agore PR tree-optimization/89703 (ICE in compare_values_warnv, at tree-vrp.c:997)
Jakub Jelinek [Thu, 14 Mar 2019 08:56:47 +0000 (09:56 +0100)]
re PR tree-optimization/89703 (ICE in compare_values_warnv, at tree-vrp.c:997)

PR tree-optimization/89703
* tree-ssa-strlen.c (valid_builtin_call): Punt if stmt call types
aren't compatible also with builtin_decl_explicit.  Check pure
or non-pure status of BUILT_IN_STR{{,N}CMP,N{LEN,{CAT,CPY}{,_CHK}}}
and BUILT_IN_STPNCPY{,_CHK}.

* gcc.c-torture/compile/pr89703-1.c: New test.
* gcc.c-torture/compile/pr89703-2.c: New test.

From-SVN: r269674

5 years agox32: Add addr32 prefix to VSIB address
H.J. Lu [Thu, 14 Mar 2019 08:49:54 +0000 (08:49 +0000)]
x32: Add addr32 prefix to VSIB address

32-bit indices in VSIB address are sign-extended to 64 bits.  In x32,
when 32-bit indices are used as addresses, like in

vgatherdps %ymm7, 0(,%ymm9,1), %ymm6

32-bit indices, 0xf7fa3010, is sign-extended to 0xfffffffff7fa3010 which
is invalid address.  Add addr32 prefix to UNSPEC_VSIBADDR instructions
for x32 if there is no base register nor symbol.

This fixes 175.vpr and 254.gap in SPEC CPU 2000 on x32 with

-Ofast -funroll-loops -march=haswell

gcc/

PR target/89523
* config/i386/i386.c (ix86_print_operand): Handle 'M' to add
addr32 prefix to VSIB address for X32.
* config/i386/sse.md (*avx512pf_gatherpf<mode>sf_mask): Prepend
"%M2" to opcode.
(*avx512pf_gatherpf<mode>df_mask): Likewise.
(*avx512pf_scatterpf<mode>sf_mask): Likewise.
(*avx512pf_scatterpf<mode>df_mask): Likewise.
(*avx2_gathersi<mode>): Prepend "%M3" to opcode.
(*avx2_gathersi<mode>_2): Prepend "%M2" to opcode.
(*avx2_gatherdi<mode>): Prepend "%M3" to opcode.
(*avx2_gatherdi<mode>_2): Prepend "%M2" to opcode.
(*avx2_gatherdi<mode>_3): Prepend "%M3" to opcode.
(*avx2_gatherdi<mode>_4): Prepend "%M2" to opcode.`
(*avx512f_gathersi<mode>): Prepend "%M4" to opcode.
(*avx512f_gathersi<mode>_2): Prepend "%M3" to opcode.
(*avx512f_gatherdi<mode>): Prepend "%M4" to opcode.
(*avx512f_gatherdi<mode>_2): Prepend "%M3" to opcode.
(*avx512f_scattersi<mode>): Prepend "%M0" to opcode.
(*avx512f_scatterdi<mode>): Likewise.

gcc/testsuite/

PR target/89523
* gcc.target/i386/pr89523-1a.c: New test.
* gcc.target/i386/pr89523-1b.c: Likewise.
* gcc.target/i386/pr89523-2.c: Likewise.
* gcc.target/i386/pr89523-3.c: Likewise.
* gcc.target/i386/pr89523-4.c: Likewise.
* gcc.target/i386/pr89523-5.c: Likewise.
* gcc.target/i386/pr89523-6.c: Likewise.
* gcc.target/i386/pr89523-7.c: Likewise.
* gcc.target/i386/pr89523-8.c: Likewise.
* gcc.target/i386/pr89523-9.c: Likewise.

From-SVN: r269673

5 years agore PR c++/89512 (ICE in get_expr_operands, at tree-ssa-operands.c:882)
Jakub Jelinek [Thu, 14 Mar 2019 08:14:48 +0000 (09:14 +0100)]
re PR c++/89512 (ICE in get_expr_operands, at tree-ssa-operands.c:882)

PR c++/89512
* semantics.c (finish_qualified_id_expr): Reject variable templates.

* g++.dg/cpp1y/var-templ61.C: New test.

From-SVN: r269672

5 years agore PR c++/89652 (ICE during constexpr evaluation)
Jakub Jelinek [Thu, 14 Mar 2019 08:13:09 +0000 (09:13 +0100)]
re PR c++/89652 (ICE during constexpr evaluation)

PR c++/89652
* constexpr.c (struct constexpr_ctx): Change save_exprs type from
hash_set<tree> to vec<tree>.
(cxx_eval_call_expression): Adjust for save_exprs being a vec instead
of hash_set.
(cxx_eval_loop_expr): Likewise.  Truncate the vector after each
removal of SAVE_EXPRs from values.
(cxx_eval_constant_expression) <case SAVE_EXPR>: Call safe_push
method on save_exprs instead of add.

* g++.dg/cpp1y/constexpr-89652.C: New test.

From-SVN: r269671

5 years agoDaily bump.
GCC Administrator [Thu, 14 Mar 2019 00:16:19 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r269670

5 years agoPR c++/86521 - C++17 copy elision in initialization by constructor.
Jason Merrill [Wed, 13 Mar 2019 23:34:51 +0000 (19:34 -0400)]
PR c++/86521 - C++17 copy elision in initialization by constructor.

This is an overlooked case in C++17 mandatory copy elision: We want overload
resolution to reflect that initializing an object from a prvalue does not
involve a copy or move constructor even when [over.match.ctor] says that
only constructors are candidates.  Here I implement that by looking through
the copy/move constructor in joust.

* call.c (joust_maybe_elide_copy): New.
(joust): Call it.

From-SVN: r269667

5 years agore PR fortran/87045 (pointer to array of character)
Harald Anlauf [Wed, 13 Mar 2019 21:33:27 +0000 (21:33 +0000)]
re PR fortran/87045 (pointer to array of character)

2019-03-13  Harald Anlauf  <anlauf@gmx.de>

PR fortran/87045
* trans-expr.c (gfc_trans_pointer_assignment): Move check for same
string length so that we do not get false errors for deferred
length.

PR fortran/87045
* gfortran.dg/pr87045.f90: New test.

From-SVN: r269664

5 years agore PR target/85860 (ICE: in lra_split_hard_reg_for, at lra-assigns.c:1810: unable...
Vladimir Makarov [Wed, 13 Mar 2019 20:35:18 +0000 (20:35 +0000)]
re PR target/85860 (ICE: in lra_split_hard_reg_for, at lra-assigns.c:1810: unable to find a register to spill with -flive-range-shrinkage -mbmi2)

2019-03-13  Vladimir Makarov  <vmakarov@redhat.com>

PR target/85860
* lra-constraints.c (inherit_in_ebb): Update
potential_reload_hard_regs along with live_hard_regs.

2019-03-13  Vladimir Makarov  <vmakarov@redhat.com>

PR target/85860
* gcc.target/i386/pr85860.c: New.

From-SVN: r269662

5 years agore PR debug/89498 (ICE in AT_loc_list, at dwarf2out.c:4871)
Jakub Jelinek [Wed, 13 Mar 2019 20:22:15 +0000 (21:22 +0100)]
re PR debug/89498 (ICE in AT_loc_list, at dwarf2out.c:4871)

PR debug/89498
* dwarf2out.c (size_of_die): For dw_val_class_view_list always use
DWARF_OFFSET_SIZE.
(value_format): For dw_val_class_view_list never use DW_FORM_loclistx.

From-SVN: r269661

5 years agoPR c++/89660 - bogus error with -Wredundant-move.
Marek Polacek [Wed, 13 Mar 2019 20:04:33 +0000 (20:04 +0000)]
PR c++/89660 - bogus error with -Wredundant-move.

* typeck.c (maybe_warn_pessimizing_move): Only accept (T &) &arg
as the std::move's argument.  Don't call convert_for_initialization
when warn_redundant_move isn't on.

* g++.dg/cpp0x/Wredundant-move8.C: New test.
* g++.dg/cpp0x/Wredundant-move9.C: New test.

From-SVN: r269660

5 years agoPR c++/89686 - mixing init-capture and simple-capture in lambda.
Marek Polacek [Wed, 13 Mar 2019 19:58:20 +0000 (19:58 +0000)]
PR c++/89686 - mixing init-capture and simple-capture in lambda.

* parser.c (cp_parser_lambda_introducer): Give error when combining
init-capture and simple-capture.

* g++.dg/cpp2a/lambda-pack-init2.C: New test.

From-SVN: r269659

5 years agore PR fortran/89601 ([PDT] ICE: Segmentation fault (in resolve_component))
Janus Weil [Wed, 13 Mar 2019 19:52:23 +0000 (20:52 +0100)]
re PR fortran/89601 ([PDT] ICE: Segmentation fault (in resolve_component))

fix PR 89601

2019-03-13  Janus Weil  <janus@gcc.gnu.org>

PR fortran/89601
* decl.c (gfc_match_formal_arglist): Reject empty type parameter lists.
(gfc_match_derived_decl): Mark as PDT only if type parameter list was
matched successfully.

2019-03-13  Janus Weil  <janus@gcc.gnu.org>

PR fortran/89601
* gfortran.dg/pdt_16.f03: Modified to avoid follow-up errors.
* gfortran.dg/pdt_30.f90: New test case.

From-SVN: r269658

5 years agoPR c++/88979 - further P0634 fix for constructors.
Marek Polacek [Wed, 13 Mar 2019 18:38:45 +0000 (18:38 +0000)]
PR c++/88979 - further P0634 fix for constructors.

* parser.c (cp_parser_decl_specifier_seq): Pass flags to
cp_parser_constructor_declarator_p.
(cp_parser_direct_declarator): Allow missing typename for constructor
parameters.
(cp_parser_constructor_declarator_p): Add FLAGS parameter.  Pass it to
cp_parser_type_specifier.

* g++.dg/cpp2a/typename15.C: New test.

From-SVN: r269656

5 years agoPR tree-optimization/89662 - -Warray-bounds ICE on void* arithmetic
Martin Sebor [Wed, 13 Mar 2019 17:19:43 +0000 (17:19 +0000)]
PR tree-optimization/89662 - -Warray-bounds ICE on void* arithmetic

gcc/ChangeLog:

PR tree-optimization/89662
* tree-vrp.c (vrp_prop::check_mem_ref): Avoid assuming every type
has a size.

gcc/testsuite/ChangeLog:

PR tree-optimization/89662
* gcc.dg/Warray-bounds-41.c: New test.

From-SVN: r269655

5 years agore PR c++/63508 (ICE when using bracketed initializer on pointer to member function...
Paolo Carlini [Wed, 13 Mar 2019 15:01:00 +0000 (15:01 +0000)]
re PR c++/63508 (ICE when using bracketed initializer on pointer to member function of a templated class)

2019-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/63508
* g++.dg/cpp0x/auto53.C: New.

From-SVN: r269651

5 years agore PR middle-end/89677 (internal compiler error: in wide_int_to_tree_1, at tree.c...
Richard Biener [Wed, 13 Mar 2019 11:32:11 +0000 (11:32 +0000)]
re PR middle-end/89677 (internal compiler error: in wide_int_to_tree_1, at tree.c:1549)

2019-03-13  Richard Biener  <rguenther@suse.de>

PR middle-end/89677
* tree-scalar-evolution.c (simplify_peeled_chrec): Do not
throw FP expressions at tree-affine.

* gcc.dg/torture/pr89677.c: New testcase.

From-SVN: r269646

5 years agotree-pretty-print.c (dump_generic_node): For -gimple properly dump negative integer...
Richard Biener [Wed, 13 Mar 2019 10:56:32 +0000 (10:56 +0000)]
tree-pretty-print.c (dump_generic_node): For -gimple properly dump negative integer constants using _Literal (type) -num.

2019-03-14  Richard Biener  <rguenther@suse.de>

* tree-pretty-print.c (dump_generic_node): For -gimple properly
dump negative integer constants using _Literal (type) -num.

From-SVN: r269645

5 years agore PR c++/85558 (ICE in make_rtl_for_nonlocal_decl when using static member of templa...
Paolo Carlini [Wed, 13 Mar 2019 10:32:29 +0000 (10:32 +0000)]
re PR c++/85558 (ICE in make_rtl_for_nonlocal_decl when using static member of template class)

2019-03-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/85558
* g++.dg/other/friend16.C: New.
* g++.dg/other/friend17.C: Likewise.

From-SVN: r269644

5 years agore PR sanitizer/80953 (Support libsanitizer on Solaris)
Eric Botcazou [Wed, 13 Mar 2019 09:19:25 +0000 (09:19 +0000)]
re PR sanitizer/80953 (Support libsanitizer on Solaris)

PR sanitizer/80953
Merge from LLVM revision 355980
* asan/asan_allocator.h (kAllocatorSpace): Define for SPARC.
(kAllocatorSize): Likewise.
(DefaultSizeClassMap): Likewise.
* asan/asan_mapping.h (kSPARC64_ShadowOffset64): Define.
(SHADOW_OFFSET): Define for SPARC.
Include asan_mapping_sparc64.h for SPARC 64-bit.
* asan/asan_mapping_sparc64.h: New file.

From-SVN: r269641

5 years agore PR sanitizer/80953 (Support libsanitizer on Solaris)
Eric Botcazou [Wed, 13 Mar 2019 09:15:02 +0000 (09:15 +0000)]
re PR sanitizer/80953 (Support libsanitizer on Solaris)

PR sanitizer/80953
Merge from LLVM revision 355979
* asan/asan_globals.c (GetGlobalsForAddress): Use internal_memcpy to
copy Global objects for SPARC with GCC.

From-SVN: r269640

5 years agore PR sanitizer/80953 (Support libsanitizer on Solaris)
Eric Botcazou [Wed, 13 Mar 2019 09:11:46 +0000 (09:11 +0000)]
re PR sanitizer/80953 (Support libsanitizer on Solaris)

PR sanitizer/80953
Merge from LLVM revision 355978
* sanitizer_common/sanitizer_allocator_primary32.h
(class SizeClassAllocator32): Assert that kSpaceSize is power of 2 if
SANITIZER_SIGN_EXTENDED_ADDRESSES is set.
(PointerIsMine): Deal with SANITIZER_SIGN_EXTENDED_ADDRESSES.
(ComputeRegionId): Likewise.
* sanitizer_common/sanitizer_linux.cc (GetMaxVirtualAddress): Return
appropriate value for SPARC 64-bit.
* sanitizer_common/sanitizer_platform.h (SANITIZER_MMAP_RANGE_SIZE):
Define for SPARC.
(SANITIZER_SIGN_EXTENDED_ADDRESSES): Define to 1 for SPARC 64-bit.

From-SVN: r269639

5 years agore PR sanitizer/80953 (Support libsanitizer on Solaris)
Eric Botcazou [Wed, 13 Mar 2019 09:05:43 +0000 (09:05 +0000)]
re PR sanitizer/80953 (Support libsanitizer on Solaris)

PR sanitizer/80953
Merge from LLVM revision 355965
* sanitizer_common/sanitizer_linux.cc (GetWriteFlag): Implement for
SPARC/Linux.
(GetPcSpBp): Likewise.
* sanitizer_common/sanitizer_stacktrace.cc (GetNextInstructionPc):
Adjust for SPARC.
* sanitizer_common/sanitizer_stacktrace.h (SANITIZER_CAN_FAST_UNWIND):
Define to 1 for SPARC.
* sanitizer_common/sanitizer_stacktrace_sparc.cc: Rewrite.
* sanitizer_common/sanitizer_unwind_linux_libcdep.cc (SlowUnwindStack):
Adjust the PC address for SPARC with GCC.

From-SVN: r269638

5 years agoipa-param-manipulation.h (struct ipa_parm_adjustment): Remove nonlocal_value member.
Jakub Jelinek [Wed, 13 Mar 2019 08:48:56 +0000 (09:48 +0100)]
ipa-param-manipulation.h (struct ipa_parm_adjustment): Remove nonlocal_value member.

* ipa-param-manipulation.h (struct ipa_parm_adjustment): Remove
nonlocal_value member.

From-SVN: r269637

5 years agore PR middle-end/88588 (ICE in make_decl_rtl, at varasm.c:1329)
Jakub Jelinek [Wed, 13 Mar 2019 08:24:41 +0000 (09:24 +0100)]
re PR middle-end/88588 (ICE in make_decl_rtl, at varasm.c:1329)

PR middle-end/88588
* omp-simd-clone.c (ipa_simd_modify_stmt_ops): Handle PHI args.
(ipa_simd_modify_function_body): Handle PHIs.

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

From-SVN: r269636

5 years ago[multiple changes]
Thomas Koenig [Wed, 13 Mar 2019 07:21:33 +0000 (07:21 +0000)]
[multiple changes]

2019-03-13  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66695
PR fortran/77746
PR fortran/79485
* gfortran.h (gfc_symbol): Add bind_c component.
(gfc_get_gsymbol): Add argument bind_c.
* decl.c (add_global_entry): Add bind_c argument to
gfc_get_symbol.
* parse.c (parse_block_data): Likewise.
(parse_module): Likewise.
(add_global_procedure): Likewise.
(add_global_program): Likewise.
* resolve.c (resolve_common_blocks): Likewise.
(resolve_global_procedure): Likewise.
(gfc_verify_binding_labels): Likewise.
* symbol.c (gfc_get_gsymbol): Add argument bind_c. Set bind_c
in gsym.
* trans-decl.c (gfc_get_module_backend_decl): Add bind_c argument
to gfc_get_symbol.
(gfc_get_extern_function_decl): If the sym has a binding label
and it cannot be found in the global symbol tabel, it is the wrong
one and vice versa.

2019-03-13 Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/66695
PR fortran/77746
PR fortran/79485
* gfortran.dg/binding_label_tests_30.f90: New test.
* gfortran.dg/binding_label_tests_31.f90: New test.
* gfortran.dg/binding_label_tests_32.f90: New test.
* gfortran.dg/binding_label_tests_33.f90: New test.

From-SVN: r269635

5 years agocompiler: compare parse methods when indexing interface types for export
Ian Lance Taylor [Wed, 13 Mar 2019 05:12:05 +0000 (05:12 +0000)]
compiler: compare parse methods when indexing interface types for export

    This change fixes a bug in which two interface types were being
    incorrectly commoned (considered identical) in the initial stages of
    writing out types to export data. The indexer does a walk to collect
    candidates for export, inserting types into a table to eliminate
    duplicates; as part of this process a local interface type T1 was
    being commoned with a different interface type T2. This caused a cycle
    in the exported type graph due to the way embedded interfaces are
    handled.

    The fix was to add a new flag to the Type::is_identical utility
    routine to request that interface type comparison be done by examining
    the original parse methods, as opposed to the expanded method set,
    then use the new flag when creating the hash map for the exporter.

    Fixes golang/go#30659.

    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/166638

From-SVN: r269634

5 years agocompiler: add new debugging helper function debug_go_type()
Ian Lance Taylor [Wed, 13 Mar 2019 04:43:33 +0000 (04:43 +0000)]
compiler: add new debugging helper function debug_go_type()

    Add a new debugging utility routine debug_go_type(), intended to
    display the contents of a Type object in a way useful to debugging
    a run of the compiler.  Prior to this the only useful alternative
    for debugging types was invoking the mangled_name() method, which
    has problems (for example, won't work on interface types prior
    to finalizing of methods).

    This is a "deep" dump, meaning that all types reachable from the
    type passed to debug_go_type() will be printed out. Example:

    (gdb) print debug_go_type(t1)
          T0        0x535f300  'net/http.Header' -> T1
          T1        0x535d3d0  map ['string' -> string] T4
          T2        0x5304bb0  'string' -> string
          T3        0x331f900  string
          T4        0x535d370  array [] 'string' -> string

    Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/166637

From-SVN: r269633

5 years agopr88957.d: Move to gdc.dg/ubsan.
Iain Buclaw [Wed, 13 Mar 2019 00:18:37 +0000 (00:18 +0000)]
pr88957.d: Move to gdc.dg/ubsan.

gcc/testsuite/ChangeLog:

2019-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>

* gdc.dg/pr88957.d: Move to gdc.dg/ubsan.
* gdc.dg/ubsan/ubsan.exp: New file.
* lib/gdc.exp (gdc_include_flags): Remove unused target variable.
Explicitly return flags from procedure.

From-SVN: r269632

5 years agoDaily bump.
GCC Administrator [Wed, 13 Mar 2019 00:16:13 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r269631

5 years agore PR libstdc++/89461 (FAIL: experimental/net/timer/waitable/cons.cc)
John David Anglin [Tue, 12 Mar 2019 23:13:36 +0000 (23:13 +0000)]
re PR libstdc++/89461 (FAIL: experimental/net/timer/waitable/cons.cc)

PR libstdc++/89461
* testsuite/lib/libstdc++.exp: Locate libatomic.
* testsuite/lib/dg-options.exp (add_options_for_libatomic): New.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc: Add
libatomic options.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/experimental/net/timer/waitable/cons.cc: Likewise.
* testsuite/experimental/net/timer/waitable/dest.cc: Likewise.
* testsuite/experimental/net/timer/waitable/ops.cc: Likewise.

From-SVN: r269628

5 years agod/dmd: Merge upstream dmd 19b1454b5
Iain Buclaw [Tue, 12 Mar 2019 23:10:49 +0000 (23:10 +0000)]
d/dmd: Merge upstream dmd 19b1454b5

Backports fixes for many ICEs that occurred when using the vector .array
property in both CTFE and code generation passes.

Fixes https://gcc.gnu.org/PR88957

Reviewed-on: https://github.com/dlang/dmd/pull/9438

gcc/d/ChangeLog:

2019-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>

PR d/88957
* expr.cc (ExprVisitor::visit(VectorArrayExp)): New override.

gcc/testsuite/ChangeLog:

2019-03-13  Iain Buclaw  <ibuclaw@gdcproject.org>

PR d/88957
* gdc.dg/pr88957.d: New test.
* gdc.dg/simd.d: Add new vector tests.

From-SVN: r269627

5 years agore PR d/87824 (x86_64-linux multilib issues)
Uros Bizjak [Tue, 12 Mar 2019 18:37:31 +0000 (19:37 +0100)]
re PR d/87824 (x86_64-linux multilib issues)

PR d/87824
* lib/gdc.exp (gdc_include_flags): Find C++ headers by calling
libstdc++v3/scripts/testsuite_flags.  Filter out unsupported
-nostdinc++ flag.

From-SVN: r269625

5 years agore PR fortran/87673 (Errors caused by using function for character length in allocate...
Thomas Koenig [Tue, 12 Mar 2019 17:22:28 +0000 (17:22 +0000)]
re PR fortran/87673 (Errors caused by using function for character length in allocate with typespec)

2019-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/87673
* match.c (gfc_match_type_spec): Remove call to
gfc_resolve_expr for character length.

2019-03-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/87673
* gfortran.dg/charlen_17.f90: New test.

From-SVN: r269624

5 years agoS/390: Perform more aggressive inlining
Robin Dapp [Tue, 12 Mar 2019 17:12:56 +0000 (17:12 +0000)]
S/390: Perform more aggressive inlining

This patch sets the inlining parameters for z13 and later to rather
aggressive values in response to PR85103 that caused performance
regressions in SPEC2006's sjeng and gobmk benchmarks.

From-SVN: r269623

5 years agoS/390: Rework instruction scheduling.
Robin Dapp [Tue, 12 Mar 2019 17:08:27 +0000 (17:08 +0000)]
S/390: Rework instruction scheduling.

This patch set adds new pipeline descriptions for z13 and z14.  Based
on that, the scoring and some properties are handled differently in
the scheduler hooks.

The patch before (r269620) also belongs to this set but I accidentally
applied it separately.

From-SVN: r269622

5 years agoS/390: Change z13 pipeline description.
Robin Dapp [Tue, 12 Mar 2019 16:57:08 +0000 (16:57 +0000)]
S/390: Change z13 pipeline description.

This patch adapts the z13 pipeline description.

From-SVN: r269620

5 years agoUse libiberty's lrealpath to avoid portability problems.
Iain Buclaw [Tue, 12 Mar 2019 16:31:48 +0000 (16:31 +0000)]
Use libiberty's lrealpath to avoid portability problems.

The dmd front-end function FileName::canonicalName could be called
during the semantic pass of import("file") expressions, so still
requires that realpath() be redefined.

Initial patch by Rainer Orth.

gcc/d/ChangeLog:

2019-03-12  Iain Buclaw  <ibuclaw@gdcproject.org>

PR d/87866
* d-system.h (realpath): Redefine as lrealpath.

From-SVN: r269619

5 years agoReplace can't in error messages for Fortran.
Martin Liska [Tue, 12 Mar 2019 15:11:42 +0000 (16:11 +0100)]
Replace can't in error messages for Fortran.

2019-03-12  Martin Liska  <mliska@suse.cz>

* c-opts.c (c_common_handle_option): Wrap option with %< and %>.
2019-03-12  Martin Liska  <mliska@suse.cz>

* decl.c (add_init_expr_to_sym): Replace usage of 'can't'
with 'cannot'.
(variable_decl): Likewise.
(cray_pointer_decl): Likewise.
(match_binding_attributes): Likewise.
* f95-lang.c (gfc_init): Likewise.
* interface.c (gfc_check_typebound_override): Likewise.
* intrinsic.c (make_generic): Likewise.
* module.c (dump_module): Likewise.
(gfc_use_module): Likewise.
* primary.c (gfc_convert_to_structure_constructor): Likewise.
* resolve.c (resolve_entries): Likewise.
(check_generic_tbp_ambiguity): Likewise.
(get_checked_tb_operator_target): Likewise.
* scanner.c (load_file): Likewise.
* trans-expr.c (gfc_conv_intrinsic_to_class): Likewise.
2019-03-12  Martin Liska  <mliska@suse.cz>

* config/i386/i386.c: Reword an error message.
2019-03-12  Martin Liska  <mliska@suse.cz>

* gfortran.dg/abstract_type_3.f03: Amend test-case scan
patterns.
* gfortran.dg/binding_label_tests_4.f03: Likewise.
* gfortran.dg/c_f_pointer_tests_6.f90: Likewise.
* gfortran.dg/c_funloc_tests_6.f90: Likewise.
* gfortran.dg/c_loc_tests_17.f90: Likewise.
* gfortran.dg/constructor_9.f90: Likewise.
* gfortran.dg/dec_structure_8.f90: Likewise.
* gfortran.dg/entry_4.f90: Likewise.
* gfortran.dg/init_char_with_nonchar_ctr.f90: Likewise.
* gfortran.dg/initialization_23.f90: Likewise.
* gfortran.dg/logical_assignment_1.f90: Likewise.
* gfortran.dg/pr80752.f90: Likewise.
* gfortran.dg/pr88116_1.f90: Likewise.
* gfortran.dg/pr88467.f90: Likewise.
* gfortran.dg/typebound_call_7.f03: Likewise.
* gfortran.dg/typebound_generic_1.f03: Likewise.
* gfortran.dg/typebound_operator_2.f03: Likewise.
* gfortran.dg/typebound_operator_4.f03: Likewise.
* gfortran.dg/typebound_proc_9.f03: Likewise.
* gfortran.dg/unlimited_polymorphic_2.f03: Likewise.

From-SVN: r269616

5 years agore PR fortran/89363 (RANK incorrect for unallocated allocatable)
Paul Thomas [Tue, 12 Mar 2019 13:40:51 +0000 (13:40 +0000)]
re PR fortran/89363 (RANK incorrect for unallocated allocatable)

2019-03-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/89363
PR fortran/89364
* trans-expr.c (set_dtype_for_unallocated): New function.
(gfc_conv_gfc_desc_to_cfi_desc): Call it for allocatable and
pointer arguments.
(gfc_conv_procedure_call): Likewise. Also, set the ubound of
the final dimension to -1 for assumed rank formal args that are
associated with assumed size arrays.
* trans-intrinsic.c (gfc_conv_intrinsic_bound): Return -1 for
the final dimension of assumed rank entities that are argument
associated with assumed size arrays.
(gfc_conv_intrinsic_shape): Likewise return -1 for the final
dimension of the shape intrinsic.

2019-03-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/89363
* gfortran.dg/assumed_rank_16.f90: New test.

PR fortran/89364
* gfortran.dg/assumed_rank_17.f90: New test.

From-SVN: r269612

5 years agod/dmd: Merge upstream dmd 7423993c9
Iain Buclaw [Tue, 12 Mar 2019 13:29:16 +0000 (13:29 +0000)]
d/dmd: Merge upstream dmd 7423993c9

Fixes C++ mangling for substituted basic types that are target-specific.
Introduces a new method that currently does nothing, but could in future
make use of flag_abi_version as extern(C++) integration improves in
latter versions of the D front-end.

Reviewed-on: https://github.com/dlang/dmd/pull/9439

gcc/d/ChangeLog:

2019-03-12  Iain Buclaw  <ibuclaw@gdcproject.org>

* d-lang.cc (d_init_options): Set global.params.cplusplus to C++14.
* d-target.cc (Target::cppFundamentalType): New method.

From-SVN: r269611

5 years agoFix dumping of "former thunk" info in cgraph dump
Martin Jambor [Tue, 12 Mar 2019 12:39:18 +0000 (13:39 +0100)]
Fix dumping of "former thunk" info in cgraph dump

2019-03-12  Martin Jambor  <mjambor@suse.cz>

* cgraph.c (cgraph_node::dump): Dump more info for former thunks,
terminate with newline.

From-SVN: r269608

5 years agore PR target/52726 (Composed error message will not get translated)
Jakub Jelinek [Tue, 12 Mar 2019 10:07:25 +0000 (11:07 +0100)]
re PR target/52726 (Composed error message will not get translated)

PR target/52726
* config/s390/s390.md (tabort): Use %wd instead of
HOST_WIDE_INT_PRINT_DEC in error message, reword to avoid two capital
letters and periods.
* config/tilepro/tilepro.c (tilepro_print_operand): Use %wd in
output_operand_lossage instead of HOST_WIDE_INT_PRINT_DEC, replace
's with %< and %>.

From-SVN: r269607

5 years agore PR middle-end/89663 (ICE in expand_builtin_int_roundingfn_2, at builtins.c:2831)
Jakub Jelinek [Tue, 12 Mar 2019 08:17:08 +0000 (09:17 +0100)]
re PR middle-end/89663 (ICE in expand_builtin_int_roundingfn_2, at builtins.c:2831)

PR middle-end/89663
* builtins.c (expand_builtin_int_roundingfn,
expand_builtin_int_roundingfn_2): Return NULL_RTX instead of
gcc_unreachable if validate_arglist fails.

* gcc.c-torture/compile/pr89663-1.c: New test.
* gcc.c-torture/compile/pr89663-2.c: New test.

From-SVN: r269605

5 years agore PR tree-optimization/89664 (ICE in free_bb, at tree-ssa-math-opts.c:522)
Richard Biener [Tue, 12 Mar 2019 07:56:23 +0000 (07:56 +0000)]
re PR tree-optimization/89664 (ICE in free_bb, at tree-ssa-math-opts.c:522)

2019-03-12  Richard Biener  <rguenther@suse.de>

PR tree-optimization/89664
* tree-ssa-math-opts.c (execute_cse_reciprocals_1): Properly
free the occurance tree after the early out.

* gfortran.dg/pr89664.f90: New testcase.

From-SVN: r269604

5 years agoFix last entry.
Eric Botcazou [Tue, 12 Mar 2019 07:34:39 +0000 (07:34 +0000)]
Fix last entry.

From-SVN: r269603

5 years agoPR c++/86521 - wrong overload resolution with ref-qualifiers.
Jason Merrill [Tue, 12 Mar 2019 03:19:22 +0000 (23:19 -0400)]
PR c++/86521 - wrong overload resolution with ref-qualifiers.

Here we were wrongly treating binding a const lvalue ref to an xvalue as
direct binding, which is wrong under [dcl.init.ref] and [over.match.ref].

* call.c (build_user_type_conversion_1): Don't use a conversion to a
reference of the wrong rvalueness for direct binding.

From-SVN: r269602

5 years agoDaily bump.
GCC Administrator [Tue, 12 Mar 2019 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r269601

5 years agore PR fortran/89651 (OpenMP private array uninitialized warning with -O flag)
Jakub Jelinek [Mon, 11 Mar 2019 22:27:39 +0000 (23:27 +0100)]
re PR fortran/89651 (OpenMP private array uninitialized warning with -O flag)

PR fortran/89651
* trans-openmp.c (gfc_omp_clause_default_ctor): Set TREE_NO_WARNING
on decl if adding COND_EXPR for allocatable.
(gfc_omp_clause_copy_ctor): Set TREE_NO_WARNING on dest.

* gfortran.dg/gomp/pr89651.f90: New test.

From-SVN: r269598

5 years agore PR middle-end/89655 (GCC crashes building linux kernel for arm 32-bit (culprit...
Jakub Jelinek [Mon, 11 Mar 2019 21:58:43 +0000 (22:58 +0100)]
re PR middle-end/89655 (GCC crashes building linux kernel for arm 32-bit (culprit r269453))

PR middle-end/89655
PR bootstrap/89656
* vr-values.c (vr_values::update_value_range): If
old_vr->varying_p (), don't update it, make new_vr also VARYING
and return false.

* gcc.c-torture/compile/pr89655.c: New test.

From-SVN: r269597

5 years ago[ARM] Fix availability of FP16-FP64 conversion instructions
Christophe Lyon [Mon, 11 Mar 2019 21:04:02 +0000 (21:04 +0000)]
[ARM] Fix availability of FP16-FP64 conversion instructions

2019-03-11  Christophe Lyon  <christophe.lyon@linaro.org>

* gcc.target/arm/f16_f64_conv_no_dp.c: Add arm_fp16_ok effective
target.

From-SVN: r269596

5 years agoFix double string quoting.
Martin Liska [Mon, 11 Mar 2019 20:56:07 +0000 (21:56 +0100)]
Fix double string quoting.

2019-03-11  Martin Liska  <mliska@suse.cz>

* config/aarch64/aarch64.c (aarch64_override_options_internal):
Fix double string quoting.

From-SVN: r269595

5 years agore PR libbacktrace/89669 (/usr/ccs/bin/ld: Unsatisfied symbols: backtrace_uncompress_...
Ian Lance Taylor [Mon, 11 Mar 2019 20:40:34 +0000 (20:40 +0000)]
re PR libbacktrace/89669 (/usr/ccs/bin/ld: Unsatisfied symbols: backtrace_uncompress_zdebug)

PR libbacktrace/89669
* Makefile.am (BUILDTESTS): Only add ztest and ztest_alloc if
HAVE_ELF.
* Makefile.in: Regenerate.

From-SVN: r269594

5 years agoPR libstdc++/89460 Fix Networking TS test failures on HP-UX
Jonathan Wakely [Mon, 11 Mar 2019 16:28:11 +0000 (16:28 +0000)]
PR libstdc++/89460 Fix Networking TS test failures on HP-UX

Check for availability of POSIX sockatmark before using it.

Rename _S_ntoh overloads that are ambiguous when passed an integral type
that is neither uint16_t nor uint32_t.

PR libstdc++/89460
* configure.ac: Check for sockatmark.
* crossconfig.m4: Check for sockatmark.
* config.h.in: Regenerate.
* configure: Regenerate.
* include/experimental/internet (address_v4::_S_hton): Rename
overloaded functions to _S_hton_16 and _S_ntoh_16.
(address_v4::_S_ntoh): Rename to _S_ntoh_16 and _S_ntoh_32.
(basic_endpoint): Adjust calls to _S_hton and _S_ntoh.
* include/experimental/socket (basic_socket::at_mark): Check
_GLIBCXX_HAVE_SOCKATMARK.

From-SVN: r269588

5 years agoWrap apostrophes in gcc internal format with %'.
Martin Liska [Mon, 11 Mar 2019 13:59:04 +0000 (14:59 +0100)]
Wrap apostrophes in gcc internal format with %'.

2019-03-11  Martin Liska  <mliska@suse.cz>

* check-internal-format-escaping.py: Uncomment apostrophes
check.
2019-03-11  Martin Liska  <mliska@suse.cz>

* collect-utils.c (collect_wait): Wrap apostrophes
in gcc internal format with %'.
* collect2.c (main): Likewise.
(scan_prog_file): Likewise.
(scan_libraries): Likewise.
* config/i386/i386.c (ix86_expand_call): Likewise.
(ix86_handle_interrupt_attribute): Likewise.
* config/nds32/nds32-intrinsic.c (nds32_expand_builtin_impl): Likewise.
* config/nds32/nds32.c (nds32_insert_attributes): Likewise.
* config/rl78/rl78.c (rl78_handle_saddr_attribute): Likewise.
* lto-wrapper.c (find_crtoffloadtable): Likewise.
* symtab.c (symtab_node::verify_base): Likewise.
* tree-cfg.c (verify_gimple_label): Likewise.
* tree.c (verify_type_variant): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* c-opts.c (c_common_post_options): Wrap apostrophes
in gcc internal format with %'.
2019-03-11  Martin Liska  <mliska@suse.cz>

* cvt.c (build_expr_type_conversion): Wrap apostrophes
in gcc internal format with %'.
* decl.c (check_no_redeclaration_friend_default_args): Likewise.
(grokfndecl): Likewise.
* name-lookup.c (do_pushtag): Likewise.
* pt.c (unify_parameter_deduction_failure): Likewise.
(unify_template_deduction_failure): Likewise.

From-SVN: r269587

5 years agoWrap option names in gcc internal messages with %< and %>.
Martin Liska [Mon, 11 Mar 2019 13:58:44 +0000 (14:58 +0100)]
Wrap option names in gcc internal messages with %< and %>.

2019-03-11  Martin Liska  <mliska@suse.cz>

* check-internal-format-escaping.py: New file.
2019-03-11  Martin Liska  <mliska@suse.cz>

* builtins.c (expand_builtin_thread_pointer): Wrap an option name
in a string format message and fix GNU coding style.
(expand_builtin_set_thread_pointer): Likewise.
* common/config/aarch64/aarch64-common.c (aarch64_rewrite_selected_cpu): Likewise.
* common/config/alpha/alpha-common.c (alpha_handle_option): Likewise.
* common/config/arc/arc-common.c (arc_handle_option): Likewise.
* common/config/arm/arm-common.c (arm_parse_fpu_option): Likewise.
* common/config/bfin/bfin-common.c (bfin_handle_option): Likewise.
* common/config/i386/i386-common.c (ix86_handle_option): Likewise.
* common/config/ia64/ia64-common.c (ia64_handle_option): Likewise.
* common/config/m68k/m68k-common.c (m68k_handle_option): Likewise.
* common/config/msp430/msp430-common.c (msp430_handle_option): Likewise.
* common/config/nds32/nds32-common.c (nds32_handle_option): Likewise.
* common/config/powerpcspe/powerpcspe-common.c (rs6000_handle_option): Likewise.
* common/config/riscv/riscv-common.c (riscv_subset_list::parsing_subset_version): Likewise.
(riscv_subset_list::parse_std_ext): Likewise.
(riscv_subset_list::parse_sv_or_non_std_ext): Likewise.
(riscv_subset_list::parse): Likewise.
* common/config/rs6000/rs6000-common.c (rs6000_handle_option): Likewise.
* config/aarch64/aarch64.c (aarch64_parse_one_option_token): Likewise.
(aarch64_override_options_internal): Likewise.
(aarch64_validate_mcpu): Likewise.
(aarch64_validate_march): Likewise.
(aarch64_validate_mtune): Likewise.
(aarch64_override_options): Likewise.
* config/alpha/alpha.c (alpha_option_override): Likewise.
* config/arc/arc.c (arc_init): Likewise.
(parse_mrgf_banked_regs_option): Likewise.
(arc_override_options): Likewise.
(arc_expand_builtin_aligned): Likewise.
* config/arm/arm-builtins.c (arm_expand_neon_builtin): Likewise.
(arm_expand_builtin): Likewise.
* config/arm/arm.c (arm_option_check_internal): Likewise.
(arm_configure_build_target): Likewise.
(arm_option_override): Likewise.
(arm_options_perform_arch_sanity_checks): Likewise.
(arm_handle_cmse_nonsecure_entry): Likewise.
(arm_handle_cmse_nonsecure_call): Likewise.
(arm_tls_referenced_p): Likewise.
(thumb1_expand_prologue): Likewise.
* config/avr/avr.c (avr_option_override): Likewise.
* config/bfin/bfin.c (bfin_option_override): Likewise.
* config/c6x/c6x.c (c6x_option_override): Likewise.
* config/cr16/cr16.c (cr16_override_options): Likewise.
* config/cris/cris.c (cris_option_override): Likewise.
* config/csky/csky.c (csky_handle_isr_attribute): Likewise.
* config/darwin-c.c (macosx_version_as_macro): Likewise.
* config/darwin.c (darwin_override_options): Likewise.
* config/frv/frv.c (frv_expand_builtin): Likewise.
* config/h8300/h8300.c (h8300_option_override): Likewise.
* config/i386/i386.c (parse_mtune_ctrl_str): Likewise.
(ix86_option_override_internal): Likewise.
(warn_once_call_ms2sysv_xlogues): Likewise.
(ix86_expand_prologue): Likewise.
(split_stack_prologue_scratch_regno): Likewise.
(ix86_warn_parameter_passing_abi): Likewise.
* config/ia64/ia64.c (fix_range): Likewise.
* config/m68k/m68k.c (m68k_option_override): Likewise.
* config/microblaze/microblaze.c (microblaze_option_override): Likewise.
* config/mips/mips.c (mips_emit_probe_stack_range): Likewise.
(mips_set_compression_mode): Likewise.
* config/mmix/mmix.c (mmix_option_override): Likewise.
* config/mn10300/mn10300.c (mn10300_option_override): Likewise.
* config/msp430/msp430.c (msp430_option_override): Likewise.
* config/nds32/nds32.c (nds32_option_override): Likewise.
* config/nios2/nios2.c (nios2_custom_check_insns): Likewise.
(nios2_option_override): Likewise.
(nios2_expand_custom_builtin): Likewise.
* config/nvptx/mkoffload.c (main): Likewise.
* config/nvptx/nvptx.c (diagnose_openacc_conflict): Likewise.
* config/pa/pa.c (fix_range): Likewise.
(pa_option_override): Likewise.
* config/riscv/riscv.c (riscv_parse_cpu): Likewise.
(riscv_option_override): Likewise.
* config/rl78/rl78.c (rl78_option_override): Likewise.
* config/rs6000/aix61.h: Likewise.
* config/rs6000/aix71.h: Likewise.
* config/rs6000/aix72.h: Likewise.
* config/rs6000/driver-rs6000.c (elf_platform): Likewise.
* config/rs6000/freebsd64.h: Likewise.
* config/rs6000/linux64.h: Likewise.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Likewise.
(rs6000_expand_zeroop_builtin): Likewise.
(rs6000_expand_mtfsb_builtin): Likewise.
(rs6000_expand_set_fpscr_rn_builtin): Likewise.
(rs6000_expand_set_fpscr_drn_builtin): Likewise.
(rs6000_invalid_builtin): Likewise.
(rs6000_expand_split_stack_prologue): Likewise.
* config/rs6000/rtems.h: Likewise.
* config/rx/rx.c (valid_psw_flag): Likewise.
(rx_expand_builtin): Likewise.
* config/s390/s390-c.c (s390_resolve_overloaded_builtin): Likewise.
* config/s390/s390.c (s390_expand_builtin): Likewise.
(s390_function_profiler): Likewise.
(s390_option_override_internal): Likewise.
(s390_option_override): Likewise.
* config/sh/sh.c (sh_option_override): Likewise.
(sh_builtin_saveregs): Likewise.
(sh_fix_range): Likewise.
* config/sh/vxworks.h: Likewise.
* config/sparc/sparc.c (sparc_option_override): Likewise.
* config/spu/spu.c (spu_option_override): Likewise.
(fix_range): Likewise.
* config/visium/visium.c (visium_option_override): Likewise.
(visium_handle_interrupt_attr): Likewise.
* config/xtensa/xtensa.c (xtensa_option_override): Likewise.
* dbgcnt.c (dbg_cnt_set_limit_by_name): Likewise.
(dbg_cnt_process_opt): Likewise.
* dwarf2out.c (output_dwarf_version): Likewise.
* except.c (expand_eh_return): Likewise.
* gcc.c (defined): Likewise.
(driver_handle_option): Likewise.
(process_command): Likewise.
(compare_files): Likewise.
(driver::prepare_infiles): Likewise.
(driver::do_spec_on_infiles): Likewise.
(driver::maybe_run_linker): Likewise.
* omp-offload.c (oacc_parse_default_dims): Likewise.
* opts-global.c (handle_common_deferred_options): Likewise.
* opts.c (parse_sanitizer_options): Likewise.
(common_handle_option): Likewise.
(enable_warning_as_error): Likewise.
* passes.c (enable_disable_pass): Likewise.
* plugin.c (parse_plugin_arg_opt): Likewise.
(default_plugin_dir_name): Likewise.
* targhooks.c (default_expand_builtin_saveregs): Likewise.
(default_pch_valid_p): Likewise.
* toplev.c (init_asm_output): Likewise.
(process_options): Likewise.
(toplev::run_self_tests): Likewise.
* tree-cfg.c (verify_gimple_call): Likewise.
* tree-inline.c (inline_forbidden_p_stmt): Likewise.
(tree_inlinable_function_p): Likewise.
* var-tracking.c (vt_find_locations): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* gcc-interface/misc.c (gnat_post_options) Wrap an option name
in a string format message and fix GNU coding style.:
2019-03-11  Martin Liska  <mliska@suse.cz>

* c-attribs.c (handle_nocf_check_attribute): Wrap an option name
in a string format message and fix GNU coding style.
* c-common.c (vector_types_convertible_p): Likewise.
(c_build_vec_perm_expr): Likewise.
* c-indentation.c (get_visual_column): Likewise.
* c-opts.c (c_common_handle_option): Likewise.
(c_common_post_options): Likewise.
(sanitize_cpp_opts): Likewise.
* c-pch.c (c_common_pch_pragma): Likewise.
* c-pragma.c (handle_pragma_pack): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* c-decl.c (check_for_loop_decls): Wrap an option name
in a string format message and fix GNU coding style.
* c-parser.c (c_parser_declspecs): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* call.c (convert_arg_to_ellipsis): Wrap an option name
in a string format message and fix GNU coding style.
(build_over_call): Likewise.
* class.c (check_field_decl): Likewise.
(layout_nonempty_base_or_field): Likewise.
* constexpr.c (cxx_eval_loop_expr): Likewise.
* cvt.c (type_promotes_to): Likewise.
* decl.c (cxx_init_decl_processing): Likewise.
(mark_inline_variable): Likewise.
(grokdeclarator): Likewise.
* decl2.c (record_mangling): Likewise.
* error.c (maybe_warn_cpp0x): Likewise.
* except.c (doing_eh): Likewise.
* mangle.c (maybe_check_abi_tags): Likewise.
* parser.c (cp_parser_diagnose_invalid_type_name): Likewise.
(cp_parser_userdef_numeric_literal): Likewise.
(cp_parser_primary_expression): Likewise.
(cp_parser_unqualified_id): Likewise.
(cp_parser_pseudo_destructor_name): Likewise.
(cp_parser_builtin_offsetof): Likewise.
(cp_parser_lambda_expression): Likewise.
(cp_parser_lambda_introducer): Likewise.
(cp_parser_lambda_declarator_opt): Likewise.
(cp_parser_selection_statement): Likewise.
(cp_parser_init_statement): Likewise.
(cp_parser_decomposition_declaration): Likewise.
(cp_parser_function_specifier_opt): Likewise.
(cp_parser_static_assert): Likewise.
(cp_parser_simple_type_specifier): Likewise.
(cp_parser_namespace_definition): Likewise.
(cp_parser_using_declaration): Likewise.
(cp_parser_ctor_initializer_opt_and_function_body): Likewise.
(cp_parser_initializer_list): Likewise.
(cp_parser_type_parameter_key): Likewise.
(cp_parser_member_declaration): Likewise.
(cp_parser_try_block): Likewise.
(cp_parser_std_attribute_spec): Likewise.
(cp_parser_requires_clause_opt): Likewise.
* pt.c (check_template_variable): Likewise.
(check_default_tmpl_args): Likewise.
(push_tinst_level_loc): Likewise.
(instantiate_pending_templates): Likewise.
(invalid_nontype_parm_type_p): Likewise.
* repo.c (get_base_filename): Likewise.
* rtti.c (typeid_ok_p): Likewise.
(build_dynamic_cast_1): Likewise.
* tree.c (maybe_warn_parm_abi): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* decl.c (match_record_decl): Wrap an option name
in a string format message and fix GNU coding style.
(gfc_match_pointer): Likewise.
* expr.c (find_array_section): Likewise.
* intrinsic.c (gfc_is_intrinsic): Likewise.
* options.c (gfc_post_options): Likewise.
* primary.c (match_integer_constant): Likewise.
* trans-common.c (translate_common): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* lto-lang.c (lto_post_options): Wrap an option name
in a string format message and fix GNU coding style.
* lto-symtab.c (lto_symtab_merge_decls_2): Likewise.
2019-03-11  Martin Liska  <mliska@suse.cz>

* g++.dg/conversion/simd3.C (foo): Wrap option names
with apostrophe character.
* g++.dg/cpp1z/decomp3.C (test): Likewise.
(test3): Likewise.
* g++.dg/cpp1z/decomp4.C (test): Likewise.
* g++.dg/cpp1z/decomp44.C (foo): Likewise.
* g++.dg/cpp1z/decomp45.C (f): Likewise.
* g++.dg/opt/pr34036.C: Likewise.
* g++.dg/spellcheck-c++-11-keyword.C: Likewise.
* gcc.dg/c90-fordecl-1.c (foo): Likewise.
* gcc.dg/cpp/dir-only-4.c: Likewise.
* gcc.dg/cpp/dir-only-5.c: Likewise.
* gcc.dg/cpp/pr71591.c: Likewise.
* gcc.dg/format/opt-1.c: Likewise.
* gcc.dg/format/opt-2.c: Likewise.
* gcc.dg/format/opt-3.c: Likewise.
* gcc.dg/format/opt-4.c: Likewise.
* gcc.dg/format/opt-5.c: Likewise.
* gcc.dg/format/opt-6.c: Likewise.
* gcc.dg/pr22231.c: Likewise.
* gcc.dg/pr33007.c: Likewise.
* gcc.dg/simd-1.c (hanneke): Likewise.
* gcc.dg/simd-5.c: Likewise.
* gcc.dg/simd-6.c: Likewise.
* gcc.dg/spellcheck-options-14.c: Likewise.
* gcc.dg/spellcheck-options-15.c: Likewise.
* gcc.dg/spellcheck-options-16.c: Likewise.
* gcc.dg/spellcheck-options-17.c: Likewise.
* gcc.dg/tree-ssa/pr23109.c: Likewise.
* gcc.dg/tree-ssa/recip-5.c: Likewise.
* gcc.target/i386/cet-notrack-1a.c (func): Likewise.
(__attribute__): Likewise.
* gcc.target/i386/cet-notrack-icf-1.c (fn3): Likewise.
* gcc.target/i386/cet-notrack-icf-3.c (__attribute__): Likewise.
* gcc.target/powerpc/warn-1.c: Likewise.
* gcc.target/powerpc/warn-2.c: Likewise.

From-SVN: r269586

5 years agoChange test to use const variables instead of macros
Jonathan Wakely [Mon, 11 Mar 2019 13:46:09 +0000 (13:46 +0000)]
Change test to use const variables instead of macros

This is C++ so there's no reason to use macros here.

* testsuite/29_atomics/atomic_flag/test_and_set/explicit-hle.cc: Use
const variables instead of macros.

From-SVN: r269585

5 years agoPR libstdc++/89629 fix _Hash_bytes for lengths > INT_MAX
Jonathan Wakely [Mon, 11 Mar 2019 13:46:05 +0000 (13:46 +0000)]
PR libstdc++/89629 fix _Hash_bytes for lengths > INT_MAX

PR libstdc++/89629
* libsupc++/hash_bytes.cc [__SIZEOF_SIZE_T__ == 8] (_Hash_bytes):
Use correct type for len_aligned.
* testsuite/20_util/hash/89629.cc: New test.

From-SVN: r269584

5 years agoS/390: Fix immediate vector operands for some builtins.
Andreas Krebbel [Mon, 11 Mar 2019 13:30:35 +0000 (13:30 +0000)]
S/390: Fix immediate vector operands for some builtins.

This fixes a problem with vec_add/sub_u128 builtins.  The
s390_expand_builtin backend function is supposed to convert the
operand to TImode *AND* load it into a vector register.  The current
implementation did only the conversion and gave up then.

gcc/ChangeLog:

2019-03-11  Andreas Krebbel  <krebbel@linux.ibm.com>

* config/s390/s390.c (s390_expand_builtin): Do the copy_to_reg not
only on the else branch.

gcc/testsuite/ChangeLog:

2019-03-11  Andreas Krebbel  <krebbel@linux.ibm.com>

* gcc.target/s390/zvector/vec-addc-u128.c: New test.

From-SVN: r269583

5 years agore PR libstdc++/89641 (std::atomic<T> no longer works)
Jakub Jelinek [Mon, 11 Mar 2019 11:49:13 +0000 (12:49 +0100)]
re PR libstdc++/89641 (std::atomic<T> no longer works)

PR libstdc++/89641
* include/std/atomic (atomic<T>::store, atomic<T>::load,
atomic<T>::exchange, atomic<T>::compare_exchange_weak,
atomic<T>::compare_exchange_strong): Cast __m or __s and __f to int.
* include/bits/atomic_base.h (__atomic_base<T>::operator++,
__atomic_base<T>::operator--, __atomic_base<T>::operator+=,
__atomic_base<T>::operator-=, __atomic_base<T>::operator&=,
__atomic_base<T>::operator|=, __atomic_base<T>::operator^=,
__atomic_base<T*>::operator++, __atomic_base<T*>::operator--,
__atomic_base<T*>::operator+=, __atomic_base<T*>::operator-=): Cast
memory_order_seq_cst to int.

From-SVN: r269582

5 years agoImprove JSON format: add function names for lines.
Martin Liska [Mon, 11 Mar 2019 11:48:49 +0000 (12:48 +0100)]
Improve JSON format: add function names for lines.

2019-03-11  Martin Liska  <mliska@suse.cz>

* gcov.c (output_intermediate_json_line): Print function
name of each line.
(output_json_intermediate_file): Add new argument.
* doc/gcov.texi: Document the change.

From-SVN: r269581

5 years agore PR rtl-optimization/89588 (ICE in unroll_loop_constant_iterations, at loop-unroll...
Eric Botcazou [Mon, 11 Mar 2019 11:37:46 +0000 (11:37 +0000)]
re PR rtl-optimization/89588 (ICE in unroll_loop_constant_iterations, at loop-unroll.c:498)

PR rtl-optimization/89588
* loop-unroll.c (decide_unroll_constant_iterations): Make guard for
explicit unrolling factor more robust.

From-SVN: r269579

5 years agore PR tree-optimization/89649 (r269458 FAILs g++.dg/pr80481.C, scan-assembler-not...
Richard Biener [Mon, 11 Mar 2019 11:31:05 +0000 (11:31 +0000)]
re PR tree-optimization/89649 (r269458 FAILs g++.dg/pr80481.C, scan-assembler-not vmovaps)

2019-03-11  Richard Biener  <rguenther@suse.de>

PR tree-optimization/89649
* tree-vectorizer.h (vect_loop_versioning): Adjust prototype.
* tree-vect-loop-manip.c (vect_do_peeling): Unset force_vectorize
on the prolog and epilog loops.
(vect_loop_versioning): Return copy of loop.
* tree-vect-loop.c (vect_transform_loop): Unset force_vectorize
on the non-vectorized version of the loop.

From-SVN: r269578

5 years agore PR c++/87571 (ICE in friend_accessible_p, accessing protected member of template...
Paolo Carlini [Mon, 11 Mar 2019 10:30:24 +0000 (10:30 +0000)]
re PR c++/87571 (ICE in friend_accessible_p, accessing protected member of template friend inside template class)

2019-03-11  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/87571
* g++.dg/template/memfriend18.C: New.

From-SVN: r269575

5 years agoFix up doubly applied patch making two copies of the test in one file.
Jakub Jelinek [Mon, 11 Mar 2019 07:30:48 +0000 (08:30 +0100)]
Fix up doubly applied patch making two copies of the test in one file.

From-SVN: r269566

5 years agoDaily bump.
GCC Administrator [Mon, 11 Mar 2019 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r269565

5 years agore PR target/68924 (No intrinsic for x86 `MOVQ m64, %xmm` in 32bit mode.)
Uros Bizjak [Sun, 10 Mar 2019 22:59:31 +0000 (23:59 +0100)]
re PR target/68924 (No intrinsic for x86  `MOVQ m64, %xmm`  in 32bit mode.)

PR target/68924
* config/i386/sse.md (*vec_extractv2di_0_sse):
Add (=r,x) alternative and corresponding splitter.

From-SVN: r269562

5 years agore PR d/87824 (x86_64-linux multilib issues)
Iain Buclaw [Sun, 10 Mar 2019 21:55:30 +0000 (21:55 +0000)]
re PR d/87824 (x86_64-linux multilib issues)

    PR d/87824
d/dmd: Merge upstream dmd fcc235e8e

Associative arrays are value types, which are not covariant with the
pointer type typeof(null).

Updates https://gcc.gnu.org/PR87824

Reviewed-on: https://github.com/dlang/dmd/pull/9435

From-SVN: r269561

5 years agore PR d/89016 (ICE in ArrayLiteralExp::toStringExp, at d/dmd/expression.c:3873)
Iain Buclaw [Sun, 10 Mar 2019 17:25:18 +0000 (17:25 +0000)]
re PR d/89016 (ICE in ArrayLiteralExp::toStringExp, at d/dmd/expression.c:3873)

    PR d/89016
d/dmd: Merge upstream dmd da26db819

Backports supplementary fix for ICE on importing deprecated modules.

Updates https://gcc.gnu.org/PR89016

Reviewed-on: https://github.com/dlang/dmd/pull/9436

From-SVN: r269560

5 years agoMark gdc.dg/pr89041.d as compile test
Rainer Orth [Sun, 10 Mar 2019 16:45:23 +0000 (16:45 +0000)]
Mark gdc.dg/pr89041.d as compile test

* gdc.dg/pr89041.d: Mark as compile test.

From-SVN: r269559

5 years agoCompile gcc.target/i386/indirect-thunk-extern-7.c with -fjump-tables
Rainer Orth [Sun, 10 Mar 2019 16:43:48 +0000 (16:43 +0000)]
Compile gcc.target/i386/indirect-thunk-extern-7.c with -fjump-tables

* gcc.target/i386/indirect-thunk-extern-7.c: Add -fjump-tables to
dg-options.

From-SVN: r269558

5 years agore PR d/88958 (ICE in walk_aliased_vdefs_1, at tree-ssa-alias.c:2887)
Iain Buclaw [Sun, 10 Mar 2019 16:29:48 +0000 (16:29 +0000)]
re PR d/88958 (ICE in walk_aliased_vdefs_1, at tree-ssa-alias.c:2887)

    PR d/88958
d/dmd: Merge upstream dmd 0fc786f49

Backport fix to disallow passing functions as parameters.

Fixes https://gcc.gnu.org/PR88958

Reviewed-on: https://github.com/dlang/dmd/pull/9437

From-SVN: r269557

5 years agoMake SRA less strict with memcpy performing MEM_REFs
Martin Jambor [Sun, 10 Mar 2019 16:20:06 +0000 (17:20 +0100)]
Make SRA less strict with memcpy performing MEM_REFs

2019-03-10  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/85762
PR tree-optimization/87008
PR tree-optimization/85459
* tree-sra.c (contains_vce_or_bfcref_p): New parameter, set the bool
it points to if there is a type changing MEM_REF.  Adjust all callers.
(build_accesses_from_assign): Disable total scalarization if
contains_vce_or_bfcref_p returns true through the new parameter, for
both rhs and lhs.

testsuite/
* g++.dg/tree-ssa/pr87008.C: New test.
* gcc.dg/guality/pr54970.c: Xfail tests querying a[0] everywhere.

From-SVN: r269556

5 years agore PR fortran/66089 (elemental dependency mishandling when class array are involved)
Thomas Koenig [Sun, 10 Mar 2019 14:21:34 +0000 (14:21 +0000)]
re PR fortran/66089 (elemental dependency mishandling when class array are involved)

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/66089
    * gfortran.dg/assumed_type_2.f90: Adapted tree dumps.
    * gfortran.dg/no_arg_check_2.f90: Likewise.

From-SVN: r269555

5 years agore PR c++/89648 (rejects-valid error starting with r268850)
Jakub Jelinek [Sun, 10 Mar 2019 13:02:48 +0000 (14:02 +0100)]
re PR c++/89648 (rejects-valid error starting with r268850)

PR c++/89648
* g++.dg/cpp0x/lambda/lambda-89648.C: New test.

From-SVN: r269554

5 years agore PR other/82704 (GCC fails to download prerequisites on busybox distro (unrecognize...
Tommy Nguyen [Sun, 10 Mar 2019 12:49:13 +0000 (12:49 +0000)]
re PR other/82704 (GCC fails to download prerequisites on busybox distro (unrecognized sha512sum --check))

2019-03-10  Tommy Nguyen  <remyabel@gmail.com>

PR contrib/82704
* download_prerequisites: Use -c instead of --check for sha512sum.

From-SVN: r269553

5 years agore PR fortran/66089 (elemental dependency mishandling when class array are involved)
Thomas Koenig [Sun, 10 Mar 2019 10:42:23 +0000 (10:42 +0000)]
re PR fortran/66089 (elemental dependency mishandling when class array are involved)

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/66089
    * trans-array.c (gfc_scalar_elemental_arg_saved_as_reference):
    Return false if a scalar tempoary is needed.
    (gfc_walk_variable_expr): Fix up class refs.

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

    PR fortran/66089
    * gfortran.dg/dependency_53.f90: New test.

From-SVN: r269549

5 years agore PR fortran/87734 (ICE in is_illegal_recursion check for character len= parameter)
Thomas Koenig [Sun, 10 Mar 2019 09:34:46 +0000 (09:34 +0000)]
re PR fortran/87734 (ICE in is_illegal_recursion check for character len= parameter)

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/87734
* symbol.c (gfc_add_procedure): Only throw an error if the
procedure has not been declared either PUBLIC or PRIVATE.

2019-03-10  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/87734
* gfortran.dg/public_private_module_10.f90: New test.

From-SVN: r269547