1. 12 Dec, 2018 26 commits
    • re PR fortran/88463 (Rejects conforming source, OpenMP Parallel region… · 7a289b7d
      re PR fortran/88463 (Rejects conforming source, OpenMP Parallel region Default(None) reference to module parameter array, separate source)
      
      	PR fortran/88463
      	* trans-openmp.c (gfc_omp_predetermined_sharing): Handle TREE_READONLY
      	VAR_DECLs with DECL_EXTERNAL like those with TREE_STATIC.
      
      	* testsuite/libgomp.fortran/pr88463-1.f90: New test.
      	* testsuite/libgomp.fortran/pr88463-2.f90: New test.
      
      From-SVN: r267069
      Jakub Jelinek committed
    • os/signal: increase deliver time for signal testcase · 44cacba3
          
          This increases the time to wait for signals to be delivered in the
          TestAtomicStop testcase. When running gccgo tests on ppc64 or ppc64le,
          there are intermittent failures in this test because the wait time is
          too small.
          
          Updates golang/go#29046
          
          Reviewed-on: https://go-review.googlesource.com/c/153879
      
      From-SVN: r267068
      Ian Lance Taylor committed
    • omp-builtins.def (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START, [...]): Fix up… · a6ef2ac9
      omp-builtins.def (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START, [...]): Fix up function types - remove one argument.
      
      	* omp-builtins.def (BUILT_IN_GOMP_LOOP_NONMONOTONIC_RUNTIME_START,
      	BUILT_IN_GOMP_LOOP_MAYBE_NONMONOTONIC_RUNTIME_START,
      	BUILT_IN_GOMP_LOOP_ULL_NONMONOTONIC_RUNTIME_START,
      	BUILT_IN_GOMP_LOOP_ULL_MAYBE_NONMONOTONIC_RUNTIME_START,
      	BUILT_IN_GOMP_PARALLEL_LOOP_NONMONOTONIC_RUNTIME,
      	BUILT_IN_GOMP_PARALLEL_LOOP_MAYBE_NONMONOTONIC_RUNTIME): Fix up
      	function types - remove one argument.
      
      	* testsuite/libgomp.c-c++-common/for-16.c: New test.
      
      From-SVN: r267067
      Jakub Jelinek committed
    • decl.c (grokdeclarator): Fix location of error message about static data member definition. · 77a24286
      /cp
      2018-12-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* decl.c (grokdeclarator): Fix location of error message about
      	static data member definition.
      
      /testsuite
      2018-12-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/other/static5.C: New.
      
      From-SVN: r267066
      Paolo Carlini committed
    • extend.texi (attribute copy): Fix typos. · 293267bc
      gcc/ChangeLog:
      
      	* doc/extend.texi (attribute copy): Fix typos.
      
      From-SVN: r267065
      Martin Sebor committed
    • extend.texi (Function Attributes): Clarify C++ aspects. · 348846ff
      
      gcc/ChangeLog:
      
      	* doc/extend.texi (Function Attributes): Clarify C++ aspects.
      	(Variable Attributes): Same.
      	(Type Attributes): Same.
      
      From-SVN: r267064
      Martin Sebor committed
    • Fix independent-cloneids-1.c testcase (PR88318) · c46eb979
      The testcase uses REs like {(?n)\m_*bar[.$_]constprop[.$_]0:} to find
      what functions are defined.  But, this also matches lines like
      .L.bar.constprop.0:(which are used on powerpc64-linux).
      The "(?n)" doesn't do anything here either.  We should use "^" here
      instead of just "\m".
      
      
      	PR testsuite/88318
      	* gcc.dg/independent-cloneids-1.c: Use ^ not \m.
      
      From-SVN: r267063
      Segher Boessenkool committed
    • Add support for SUBTARGET_OVERRIDE_OPTIONS on aarch64 · 6881e3c1
      	* config/aarch64/aarch64.c (aarch64_override_options): Once arch,
      	cpu and tune were validated, insert SUBTARGET_OVERRIDE_OPTIONS if
      	defined.
      
      From-SVN: r267060
      Olivier Hainque committed
    • Use REGNUM macros in the definitions of aarch64 PROBE_STACK regs · 8921ccbb
      	* config/aarch64/aarch64.c (PROBE_STACK_FIRST_REG) : Redefine as
      	R9_REGNUM instead of 9.
      	(PROBE_STACK_SECOND_REG): Redefine as R10_REGNUM instead of 10.
      
      From-SVN: r267059
      Olivier Hainque committed
    • Fix PR number in my last commit · 7bd0ca11
      From-SVN: r267058
      Richard Earnshaw committed
    • Overload std::distance and std::advance for path::iterator · 9e160526
      Although filesystem::path::iterator is only a bidirectional iterator,
      the underlying sequence has random access iterators (specifically, raw
      pointers). This means std::distance and std::advance can be implemented
      more efficiently than the generic versions which apply ++ and --
      repeatedly.
      
      	PR libstdc++/71044 (partial)
      	* include/bits/fs_path.h (__path_iter_distance, __path_iter_advance):
      	New friend functions to implement std::distance and std::advance more
      	efficiently.
      	(distance, advance): Add overloads for path::iterator.
      	* testsuite/27_io/filesystem/path/itr/components.cc: Test new
      	overload.
      
      From-SVN: r267057
      Jonathan Wakely committed
    • PR libstdc++/80762 avoid ambiguous __constructible_from<void, void> · 6b7c0b55
      Ensure we don't try to instantiate __is_constructible_from<void, void>,
      because there are two partial specializations that are equally good
      matches.
      
      	PR libstdc++/80762
      	* include/bits/fs_path.h (path::_Path): Use remove_cv_t and is_void.
      	* include/experimental/bits/fs_path.h (path::_Path): Likewise.
      	* testsuite/27_io/filesystem/path/construct/80762.cc: New test.
      	* testsuite/experimental/filesystem/path/construct/80762.cc: New test.
      
      From-SVN: r267056
      Jonathan Wakely committed
    • require profiling support for gcc.dg/lto/20100430-1_0.c test · 5da5fefe
      This test currently fails unexpectedly if GCC is configured with
      --disable-gcov, because it requires -fprofile-arcs. This patch
      fixes the issue by requiring profiling support in order to run
      this test.
      
      Tested with two compilers, one built with --disable-gcov, resulting
      in the test reporting an UNSUPPORTED result; and one built with gcov
      support, resulting in 2 PASS tests.
      
      gcc/testsuite/ChangeLog:
      
              * gcc.dg/lto/20100430-1_0.c: Add dg-require-profiling requirement.
      
      From-SVN: r267055
      Joel Brobecker committed
    • [libbacktrace] Add allocfail.sh test-case · d665cd9b
      Add test-case that forces alloc.c functions to fail, and check whether fail
      handling is robust.
      
      This is the test-case for "[libbacktrace] Fix segfault upon allocation
      failure".  Without that patch, this test-case fails like this:
      ...
      allocfail.sh: line 71: 26041 Segmentation fault      (core dumped) \
        ./allocfail $i > /dev/null 2>&1
      Unallowed fail found: 13
      FAIL allocfail.sh (exit status: 1)
      ...
      
      This is a seperate patch because the test-case is nontrivial.
      
      Bootstrapped and reg-tested on x86_64.
      
      2018-12-12  Tom de Vries  <tdevries@suse.de>
      
      	* Makefile.am (TESTS): Add allocfail.sh.
      	(check_PROGRAMS): Add allocfail.
      	* Makefile.in: Regenerate.
      	* instrumented_alloc.c: New file.  Redefine malloc and realloc.
      	Include alloc.c.
      	* allocfail.c: New file.
      	* allocfail.sh: New file.
      
      From-SVN: r267054
      Tom de Vries committed
    • re PR target/86806 (SPARC port needs updating for CVE-2017-5753) · bf4eca2e
      	PR target/86806
      	* config/sparc/sparc.md (unspecv): Add UNSPECV_SPECULATION_BARRIER.
      	(speculation_barrier): New instruction for V9.
      
      From-SVN: r267053
      Eric Botcazou committed
    • Don't mark stack pointer as clobbered in asm · 9c47a019
      * config/linux/ia64/futex.h (sys_futex0): Don't mark r12 as
      clobbered.
      
      From-SVN: r267052
      Andreas Schwab committed
    • libgcc: rs6000: tramp.S: fix placement of .cfi_endproc for __trampoline_setup · 5a2580b6
      Currently, .cfi_endproc and FUNC_END(__trampoline_setup) are placed
      inside the #else branch of an "#if defined (__VXWORKS__) ...", so
      non-pic vxworks does not get proper CFI nor a .size directive for
      __trampoline_setup. I assume there's no magic reason for that (which
      would warrant a comment), so move them outside.
      
      From-SVN: r267051
      Rasmus Villemoes committed
    • rs6000 - add missed hunk · 0c1342df
      This add the hunk
      	(macho_call_template): Remove.
      
      missed from r267049
      
      From-SVN: r267050
      Iain Sandoe committed
    • rs6000 - Fix PR target/88343 · be611c9c
      The PR is about unnecessary saves of the pic base register, it shows on m32 Linux and m32/m64 Darwin.
      
      The fix is to check that we are in a pic mode and that the picbase has actually been used.
      As a bonus, some #ifdef’d TARGET_MACHO code is no longer required.
      
      2018-12-12 Segher Boessenkool  <segher@kernel.crashing.org>
      	   Iain Sandoe  <iain@sandoe.co.uk>
      
      	PR target/88343
      	* config/rs6000/rs6000.c (save_reg_p): Do not save the picbase reg
      	unless it has been used.
      	(first_reg_to_save): Remove dead code.
      
      
      Co-Authored-By: Iain Sandoe <iain@sandoe.co.uk>
      
      From-SVN: r267049
      Segher Boessenkool committed
    • rs6000, update Darwin call handling to latest scheme. · aa3a2eca
      This patch mormalises Darwin's call handling to match the scheme
      recently introduced and gives it target-specific call expanders.
      
      2018-12-12  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* config/rs6000/rs6000-protos.h (rs6000_call_darwin): New.
      	(rs6000_sibcall_darwin): New. (macho_call_template): Remove.
      	* config/rs6000/rs6000.c (get_prev_label): Forward declaration. 
      	(rs6000_call_template_1): Handle Darwin.
      	(macho_call_template): Remove.
      	(rs6000_call_sysv): Remove handling for Darwin.
      	(rs6000_call_darwin_1, rs6000_call_darwin): New
      	(rs6000_sibcall_darwin): New.
      	* config/rs6000/rs6000.md (define_expand “call”): Handle Darwin
      	with its own expander. (define_expand “call_value”): Likewise.
      	(define_expand “sibcall”): Likewise.
      	(define_expand “sibcall_value”): Likewise.
      	(call_nonlocal_sysv): Remove Darwin special-casing.
      	(call_value_nonlocal_sysv): Likewise.
      
      From-SVN: r267048
      Iain Sandoe committed
    • re PR c++/88446 (__builtin_is_constant_evaluated rejects some converted constant expressions.) · 13de99bc
      	PR c++/88446
      	* cp-tree.h (maybe_constant_value): Add manifestly_const_eval
      	argument.
      	* constexpr.c (struct constexpr_call): Rename pretend_const_required
      	member to manifestly_const_eval.
      	(struct constexpr_ctx): Likewise.
      	(constexpr_call_hasher::equal): Adjust users.
      	(cxx_eval_builtin_function_call): Likewise.  Formatting fix.
      	(cxx_eval_call_expression): Adjust users.
      	(cxx_eval_outermost_constant_expr, maybe_constant_init_1,
      	maybe_constant_init): Rename pretend_const_required argument to
      	manifestly_const_eval, adjust function comments.
      	(maybe_constant_value): Add manifestly_const_eval argument.  If true,
      	don't cache and call cxx_eval_outermost_constant_expr with true as
      	manifestly_const_eval.
      	* decl.c (compute_array_index_type_loc): Call maybe_constant_value
      	with true as manifestly_const_eval.
      
      	* g++.dg/cpp2a/is-constant-evaluated3.C: New test.
      
      From-SVN: r267047
      Jakub Jelinek committed
    • rs6000, darwin - fix bootstrap. · 66e30545
      Recent changes to the lowerings for call handling in rs6000
      have broken bootstrap for powerpc-darwin.  This patch modifies
      the calls to handle Darwin asa subset, a subsequent patch will
      split Darwin out.
      
      2018-12-12  Iain Sandoe  <iain@sandoe.co.uk>
      
      	* config/rs6000/darwin.md (call_indirect_nonlocal_darwin64): Remove.
      	(call_nonlocal_darwin64): Remove.
      	(call_value_indirect_nonlocal_darwin64): Remove.
      	(call_value_nonlocal_darwin64): Remove.
      	* config/rs6000/rs6000.c (rs6000_call_template_1): Handle Darwin with
      	the same asm output as AIX/ELFv2.  (rs6000_call_sysv): Preserve the
      	CALL_LONG flag when needed for Darwin.
      	* config/rs6000/rs6000.md (define expand “call”): Expand Darwin as
      	per sysv.
      	(define_expand “call_value”): Likewise.
      	(define_expand “sibcall”): Likewise.
      	(define_expand “sibcall_value”): Likewise.
      	(call_indirect_nonlocal_sysv): Mark the clobber mode P.
      	(call_nonlocal_sysv): Likewise.
      	(call_nonlocal_sysv_secure): Likewise.
      	(call_value_indirect_nonlocal_sysv): Likewise.
      	(call_value_nonlocal_sysv): Likewise.
      	(call_value_nonlocal_sysv_secure): Likewise.
      	(call_local64): Mark the clobber DI.
      	(call_value_local64): Likewise.
      
      From-SVN: r267046
      Iain Sandoe committed
    • P0595R2 - is_constant_evaluated · 0d7924f2
      	P0595R2 - is_constant_evaluated
      	* include/bits/c++config (_GLIBCXX_HAVE_BUILTIN_IS_CONSTANT_EVALUATED):
      	Define if __builtin_is_constant_evaluated is available.
      	* include/std/type_traits (std::is_constant_evaluated): New constexpr
      	inline function.
      	* testsuite/20_util/is_constant_evaluated/1.cc: New test.
      	* testsuite/20_util/is_constant_evaluated/noexcept.cc: New test.
      
      From-SVN: r267045
      Jakub Jelinek committed
    • re PR c++/88449 (__builtin_is_constant_evaluated misbehaves due to constexpr call caching) · cce3ae91
      	PR c++/88449
      	* constexpr.c (struct constexpr_call): Add pretend_const_required
      	member.
      	(constexpr_call_hasher::equal): Return false if pretend_const_required
      	members differ.
      	(cxx_eval_call_expression): Adjust new_call initialization.  Hash in
      	ctx->pretend_const_required.
      
      	* g++.dg/cpp2a/is-constant-evaluated1.C: Change from dg-do compile
      	to dg-do run.
      	(e): Adjust comment with correct expected value.
      	(main): Expect e == 1.
      	* g++.dg/cpp2a/is-constant-evaluated2.C: New test.
      
      From-SVN: r267044
      Jakub Jelinek committed
    • re PR fortran/88155 (ICE in gfc_format_decoder, at fortran/error.c:947) · 2f00fb3d
      2018-12-11  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/88155
      	* primary.c (gfc_match_structure_constructor):  Set the locus of
      	an expression to avoid a NULL pointer dereference.
      
      2018-12-11  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/88155
      	* gfortran.dg/pr70870_1.f90: Update testcase to use -std=gnu.
      	* gfortran.dg/pr88155.f90: New test.
      
      From-SVN: r267041
      Steven G. Kargl committed
    • Daily bump. · 85c223fa
      From-SVN: r267040
      GCC Administrator committed
  2. 11 Dec, 2018 14 commits