1. 21 Jun, 2019 14 commits
  2. 20 Jun, 2019 26 commits
    • re PR c++/79781 (ICE on valid C++ code with -std=c++14 (in assemble_integer, at varasm.c:2733)) · 7bfe2b4b
      	PR c++/79781
      	* g++.dg/ext/goto1.C: New test.
      
      From-SVN: r272527
      Marek Polacek committed
    • re PR fortran/77632 ([F08] Pointer initialisation does not quite work with arrays) · 2cf4aa79
      2019-06-20  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/77632
      	* /decl.c (variable_decl): Mark a variable that is a target in pointer
      	initialization when in PROGRAM, MODULE, or SUBMODULE scope with an
      	implicit save.
      
      2019-06-20  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/77632
      	* gfortran.dg/pr77632_1.f90: New test.
      
      From-SVN: r272526
      Steven G. Kargl committed
    • re PR c++/68265 (Arbitrary syntactic nonsense silently accepted after 'int… · c35f57c5
      re PR c++/68265 (Arbitrary syntactic nonsense silently accepted after 'int (*){}' until the next close brace)
      
      	PR c++/68265
      	* g++.dg/parse/error62.C: New test.
      
      From-SVN: r272525
      Marek Polacek committed
    • re PR fortran/86587 (Derived-type with attributes BIND(C) and PRIVATE raises an… · 966e7f73
      re PR fortran/86587 (Derived-type with attributes BIND(C) and PRIVATE raises an error but standard accepts it)
      
      2019-06-20  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/86587
      	* symbol.c (verify_bind_c_derived_type): Remove erroneous error
      	checking for BIND(C) and PRIVATE attributes.
      
      2019-06-20  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/86587
      	* gfortran.dg/pr86587.f90: New test.
      
      From-SVN: r272524
      Steven G. Kargl committed
    • alpha.md (@unaligned_store<mode>): Rename from unaligned_store<mode>. · 145f748f
      	* config/alpha/alpha.md (@unaligned_store<mode>):
      	Rename from unaligned_store<mode>.
      	(@reload_in<mode>_aligned): Rename from reload_in<mode>_aligned.
      	* config/alpha/sync.md (@load_locked_<mode>): Rename
      	from load_locked_<mode>.
      	(@store_conditional_<mode>): Rename from store_conditional_<mode>.
      	(@atomic_compare_and_swap<mode>_1): Rename
      	from atomic_compare_and_swap<mode>_1.
      	(@atomic_exchange<mode>_1): Rename from atomic_exchange<mode>_1.
      	* config/alpha/alpha.c (alpha_expand_mov_nobwx):
      	Use gen_reload_in_aligned and gen_unaligned_store.
      	(emit_load_locked): Remove.
      	(emit_store_conditional): Ditto.
      	(alpha_split_atomic_op): Use gen_load_locked and gen_store_conditional.
      	(alpha_split_compare_and_swap): Ditto.
      	(alpha_expand_compare_and_swap_12): Use gen_atomic_compare_and_swap_1.
      	(alpha_split_compare_and_swap_12): Use gen_load_locked
      	and gen_store_conditional.
      	(alpha_split_atomic_exchange): Ditto.
      	(alpha_expand_atomic_exchange_12): Use gen_atomic_exchange_1.
      	(alpha_split_atomic_exchange_12): Use gen_load_locked
      	and gen_store_conditional.
      
      From-SVN: r272523
      Uros Bizjak committed
    • libfortran/65921: Add forgotten PR number to ChangeLog · 6bd48717
      2019-06-14  Janne Blomqvist  <jb@gcc.gnu.org>
      
              PR fortran/65921
              * runtime/memory.c (SIZE_MAX):Remove macro definition.
              (xmallocarray): Use __builtin_mul_overflow.
      
      From-SVN: r272520
      Janne Blomqvist committed
    • [objective-c/c++, testsuite] Fix stubify tests for -fnext-runtime. · b7a0332c
      These tests were broken in the first place, and more broken following
      the change to drop pic symbol stubs unless the linker needs them.
      
      Fixed to work for x86 as well as powerpc and amended the options to
      force pic symbol stubs on.
      
      gcc/testsuite/
      
      2019-06-20  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* obj-c++.dg/stubify-1.mm: Adjust options and scan-asm checks.
      	* obj-c++.dg/stubify-2.mm: Likewise.
      	* objc.dg/stubify-1.m: Likewise.
      	* objc.dg/stubify-2.m: Likewise.
      
      From-SVN: r272518
      Iain Sandoe committed
    • [aarch64] Refactor common errata work-around specs · 91bed1a1
      With the addition of the AArch64 NetBSD support code we now have four
      ports all using and defining the same errata work-around headers.
      That's silly and long-term becomes a maintenance burden.
      
      This patch factors all that code into a single header to eliminate all
      the duplication.
      
      	* config/aarch64/aarch64-errata.h: New file.
      	* config/aarch64/aarch64-elf-raw.h (CA53_ERR_835769_SPEC): Delete.
      	(CA53_ERR_843419_SPEC): Delete.
      	(LINK_SPEC): Use AARCH64_ERRATA_LINK_SPEC instead of above.
      	* config/aarch64/aarch64-linux.h: Likewise.
      	* config/aarch64/aarch64-netbsd.h: Likewise.
      	* config/aarch64/aarch64-freebsd.h: Likewise.
      
      From-SVN: r272515
      Richard Earnshaw committed
    • rs6000.md (isa attribute): Add support for for a future processor. · 7ca50393
      2019-06-20  Michael Meissner  <meissner@linux.ibm.com>
      
      	* config/rs6000/rs6000.md (isa attribute): Add support for
      	for a future processor.
      
      From-SVN: r272513
      Michael Meissner committed
    • re PR c++/87512 (Error: the type ‘const auto’ of ‘constexpr’ variable is not literal) · 7772dbe2
      	PR c++/87512
      	* g++.dg/cpp1z/inline-var7.C: New test.
      
      From-SVN: r272512
      Marek Polacek committed
    • i386: Generate standard floating point scalar operation patterns · ac173024
      Standard floating point scalar operation patterns for combiner, which
      preserve the rest of the vector, look like
      
           (vec_merge:V2DF
             (vec_duplicate:V2DF (reg:DF 87))
             (reg/v:V2DF 85 [ x ])
             (const_int 1 [0x1])]))
      
      and
      
           (vec_merge:V2DF
             (vec_duplicate:V2DF
               (op:DF (vec_select:DF (reg/v:V2DF 85 [ x ])
                      (parallel [ (const_int 0 [0])]))
               (reg:DF 87))
             (reg/v:V2DF 85 [ x ])
             (const_int 1 [0x1])]))
      
      This patch adds and generates such standard floating point scalar
      operation patterns for +, -, *, /, > and <.
      
      Tested on x86-64.
      
      gcc/
      
      	PR target/54855
      	* config/i386/i386-expand.c (ix86_expand_vector_set): Generate
      	standard scalar operation pattern for V2DF.
      	* config/i386/sse.md (*<sse>_vm<plusminus_insn><mode>3): New.
      	(*<sse>_vm<multdiv_mnemonic><mode>3): Likewise.
      	(*ieee_<ieee_maxmin><mode>3): Likewise.
      	(vec_setv2df_0): Likewise.
      
      gcc/testsuite/
      
      	PR target/54855
      	* gcc.target/i386/pr54855-1.c: New test.
      	* gcc.target/i386/pr54855-2.c: Likewise.
      	* gcc.target/i386/pr54855-3.c: Likewise.
      	* gcc.target/i386/pr54855-4.c: Likewise.
      	* gcc.target/i386/pr54855-5.c: Likewise.
      	* gcc.target/i386/pr54855-6.c: Likewise.
      	* gcc.target/i386/pr54855-7.c: Likewise.
      	* gcc.target/i386/pr54855-8.c: Likewise.
      	* gcc.target/i386/pr54855-9.c: Likewise.
      	* gcc.target/i386/pr54855-10.c: Likewise.
      
      From-SVN: r272511
      H.J. Lu committed
    • tree-ssa-alias.c (aliasing_component_refs_p): Remove ref2_is_decl parameter; it… · d1a7d8de
      tree-ssa-alias.c (aliasing_component_refs_p): Remove ref2_is_decl parameter; it has no use in gimple memory model.
      
      	* tree-ssa-alias.c (aliasing_component_refs_p): Remove ref2_is_decl
      	parameter; it has no use in gimple memory model.
      	(indirect_ref_may_alias_decl_p): Update.
      
      	* gcc.c-torture/execute/alias-access-path-1.c: New testcase.
      
      From-SVN: r272510
      Jan Hubicka committed
    • Skip libstdc++ debug build in early bootstrap stages · 86f73527
      As mentioned in PR 90770, this is a patch that Debian have been carrying
      for some time. The additional unoptimized copies of libstdc++ libs that
      get built during each stage are never going to be used, so don't bother
      building them.
      
      For a profiled bootstrap this means we won't train the compiler on the
      unoptimized library code with assertions enabled, but that doesn't seem
      like a big problem, as the same code has already been compiled once for
      the main libstdc++ library.
      
      	* acinclude.m4 (GLIBCXX_ENABLE_DEBUG): Only do debug build for final
      	stage of bootstrap.
      	* configure: Regenerate.
      
      From-SVN: r272509
      Jonathan Wakely committed
    • Qualify calls to __never_valueless in <variant> · d306dee3
      	* include/std/variant (_Variant_storage, _Extra_visit_slot_needed):
      	Qualify calls to __never_valueless.
      
      From-SVN: r272508
      Jonathan Wakely committed
    • re PR c++/89873 (internal compiler error: unexpected expression of kind implicit_conv_expr) · 73b7f10a
      	PR c++/89873
      	* g++.dg/cpp1y/noexcept1.C: New test.
      
      From-SVN: r272507
      Marek Polacek committed
    • re PR fortran/90937 (ICE: in gfc_get_symbol_decl, at fortran/trans-decl.c:1538) · 877ef628
      2019-06-20  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/90937
      	* trans-types.c (get_formal_from_actual_arglist): Get symbol from
      	current namespace so it will be freed later.  If symbol is of type
      	character, get an empty character length.
      
      2019-06-20  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/90937
      	* gfortran.dg/external_procedure_4.f90: New test.
      
      From-SVN: r272506
      Thomas Koenig committed
    • [testsuite] Add missing dg-require-effective-target global_constructor · 1194e197
      Add missing dg-require-effective-target global_constructor.
      
      Tested on nvptx.
      
      2019-06-20  Tom de Vries  <tdevries@suse.de>
      
      	* gcc.dg/pr90866-2.c: Require global_constructor.
      
      From-SVN: r272505
      Tom de Vries committed
    • [testsuite] Add missing dg-require-effective-target nonlocal_goto · ebbab6f8
      Add missing dg-require-effective-target nonlocal_goto.
      
      Tested on nvptx.
      
      2019-06-20  Tom de Vries  <tdevries@suse.de>
      
      	* gcc.c-torture/compile/pr89280.c: Require nonlocal_goto.
      	* gcc.dg/pr88870.c: Same.
      	* gcc.dg/pr90082.c: Same.
      
      From-SVN: r272504
      Tom de Vries committed
    • [testsuite] Add missing dg-require-effective-target indirect_jumps · f75d87ff
      Add missing dg-require-effective-target indirect_jumps.
      
      Tested on nvptx.
      
      2019-06-20  Tom de Vries  <tdevries@suse.de>
      
      	* gcc.dg/pr89737.c: Require indirect_jumps.
      	* gcc.dg/torture/pr87693.c: Same.
      	* gcc.dg/torture/pr89135.c: Same.
      	* gcc.dg/torture/pr90071.c: Same.
      
      From-SVN: r272503
      Tom de Vries committed
    • [testsuite] Add missing dg-require-effective-target label_values · eb60dc25
      Add missing dg-require-effective-target label_values.
      
      Tested on nvptx.
      
      2019-06-20  Tom de Vries  <tdevries@suse.de>
      
      	* gcc.c-torture/compile/pr89280.c: Require label_values.
      	* gcc.dg/pr89737.c: Same.
      	* gcc.dg/pr90082.c: Same.
      	* gcc.dg/torture/pr89135.c: Same.
      	* gcc.dg/torture/pr89247.c: Same.
      	* gcc.dg/torture/pr90071.c: Same.
      
      From-SVN: r272502
      Tom de Vries committed
    • [testsuite] Add missing dg-require-effective-target alloca · a62a1606
      Add missing dg-require-effective-target alloca.
      
      Tested on nvptx.
      
      2019-06-20  Tom de Vries  <tdevries@suse.de>
      
      	* gcc.c-torture/compile/pr77754-1.c: Require alloca.
      	* gcc.c-torture/compile/pr77754-2.c: Same.
      	* gcc.c-torture/compile/pr77754-3.c: Same.
      	* gcc.c-torture/compile/pr77754-4.c: Same.
      	* gcc.c-torture/compile/pr77754-5.c: Same.
      	* gcc.c-torture/compile/pr77754-6.c: Same.
      	* gcc.c-torture/compile/pr87110.c: Same.
      	* gcc.c-torture/execute/pr86528.c: Same.
      	* gcc.dg/Walloca-larger-than-2.c: Same.
      	* gcc.dg/Walloca-larger-than.c: Same.
      	* gcc.dg/Warray-bounds-41.c: Same.
      	* gcc.dg/Wrestrict-17.c: Same.
      	* gcc.dg/Wstrict-overflow-27.c: Same.
      	* gcc.dg/Wstringop-truncation-3.c: Same.
      	* gcc.dg/pr78902.c: Same.
      	* gcc.dg/pr87099.c: Same.
      	* gcc.dg/pr87320.c: Same.
      	* gcc.dg/pr89045.c: Same.
      	* gcc.dg/strlenopt-62.c: Same.
      	* gcc.dg/tree-ssa/alias-37.c: Same.
      
      From-SVN: r272501
      Tom de Vries committed
    • Fix outdated reference to C++17 draft in the docs · 9f35dcd4
      	* doc/xml/manual/status_cxx2017.xml: Fix outdated reference to
      	C++17 working draft.
      
      From-SVN: r272500
      Jonathan Wakely committed
    • Improve tests for std::vector<bool> printer · 94872d7f
      The current tests wouldn't notice if the vector<bool> contents were
      printed in reverse, because it would read the same forwards and
      backwards. Change the content so the tests would fail if that happened.
      
      	* testsuite/libstdc++-prettyprinters/simple.cc: Use non-palindromic
      	vector<bool> for test.
      	* testsuite/libstdc++-prettyprinters/simple11.cc: Likewise.
      
      From-SVN: r272499
      Jonathan Wakely committed
    • Decrease hash-table-verification-limit from 100 to 10. · d84ea910
      2019-06-20  Martin Liska  <mliska@suse.cz>
      
      	* params.def (PARAM_HASH_TABLE_VERIFICATION_LIMIT): Decrease
      	to 10.
      
      From-SVN: r272498
      Martin Liska committed
    • tree-vect-stmts.c (enum scan_store_kind): New type. · 48b63a31
      	* tree-vect-stmts.c (enum scan_store_kind): New type.
      	(scan_store_can_perm_p): Change last argument from int * to
      	vec<enum scan_store_kind> *, record precisely which permutations
      	need whole vector left shift or that plus VEC_COND_EXPR.
      	(vectorizable_scan_store): Adjust caller, use whole vector left shift
      	and additional VEC_COND_EXPR only for those iterations that need it.
      
      From-SVN: r272497
      Jakub Jelinek committed