]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
5 years ago2019-05-30 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Thu, 30 May 2019 17:49:31 +0000 (17:49 +0000)] 
2019-05-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

    * gfc-internals.texi (Translating to GENERIC): New chapter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271786 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[aarch64]: add support for fabd in sve
rsandifo [Thu, 30 May 2019 17:36:52 +0000 (17:36 +0000)] 
[aarch64]: add support for fabd in sve

This patch adds support in SVE to combine:
- fsub and fabs into fabd

fsub    z0.s, z0.s, z1.s
fabs    z0.s, p1/m, z0.s
---
fabd    z0.s, p1/m, z0.s, z1.s

2019-05-30  Sylvia Taylor  <sylvia.taylor@arm.com>

gcc/
* config/aarch64/aarch64-sve.md (*fabd<mode>3): New.

gcc/testsuite/
* gcc.target/aarch64/sve/fabd_1.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271785 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago compiler: intrinsify sync/atomic functions
ian [Thu, 30 May 2019 17:26:46 +0000 (17:26 +0000)] 
compiler: intrinsify sync/atomic functions

    Let the Go frontend recognize sync/atomic functions and turn them
    into intrinsics.

    Also make sure not to intrinsify calls in go or defer statements.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271784 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR c++/90598
jakub [Thu, 30 May 2019 17:23:32 +0000 (17:23 +0000)] 
PR c++/90598
* tree.c (lvalue_kind): Return clk_none for expressions with
with VOID_TYPE_P.

* g++.dg/cpp0x/pr90598.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271783 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoUpdate libstdc++ documentation for Support and Diagnostics clauses
redi [Thu, 30 May 2019 15:47:32 +0000 (15:47 +0000)] 
Update libstdc++ documentation for Support and Diagnostics clauses

* doc/xml/manual/diagnostics.xml: Update list of headers that define
exception classes.
* doc/xml/manual/support.xml: Rewrite advice around NULL. Rewrite
section about new/delete overloads. Improve section on verbose
terminate handler.
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271782 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-30 Bill Schmidt <wschmidt@linux.ibm.com>
wschmidt [Thu, 30 May 2019 15:17:40 +0000 (15:17 +0000)] 
2019-05-30  Bill Schmidt  <wschmidt@linux.ibm.com>
    Michael Meissner  <meissner@linux.ibm.com>

* rs6000-cpus.def (OTHER_FUSION_MASKS): New #define.
(ISA_3_0_MASKS_SERVER): Mask off OTHER_FUSION_MASKS.
(ISA_3_0_MASKS_IEEE): Remove OPTION_MASK_DIRECT_MOVE.
(ISA_FUTURE_MASKS_SERVER): Add OPTION_MASK_PREFIXED_ADDR.
(OTHER_FUTURE_MASKS): Likewise.
(POWERPC_MASKS): Likewise.
* rs6000.c (rs6000_option_override_internal): Error if -mpcrel is
specified without -mprefixed-addr or -mcpu=future.  Error if
-mprefixed-addr is specified without -mcpu=future.
(rs6000_opt_masks): Add entry for prefixed-addr.
* rs6000.opt (mprefixed-addr): New option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271781 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[PATCH][GCC][AARCH64] Fix libstdc++ build failure after r271735
samtebbs [Thu, 30 May 2019 12:26:14 +0000 (12:26 +0000)] 
[PATCH][GCC][AARCH64] Fix libstdc++ build failure after r271735

gcc/ChangeLog
* aarch64/aarch64.c (aarch64_post_cfi_startproc): Add
cfun->is_thunk check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271780 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * lang.opt (ftail-call-workaround): Fix a typo.
mpolacek [Thu, 30 May 2019 11:44:40 +0000 (11:44 +0000)] 
* lang.opt (ftail-call-workaround): Fix a typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271777 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoUpdate C++20 status table
redi [Thu, 30 May 2019 10:31:54 +0000 (10:31 +0000)] 
Update C++20 status table

The status of P1353R0 was "Partial" because we don't define the
__cpp_lib_three_way_comparison macro, but that's because we don't
support the feature. So the paper can be marked as done.

* doc/xml/manual/status_cxx2020.xml: Add feature-test macro for
P0811R3. Change status of P1353R0.
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271774 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoUpdate documentation of implementation-defined library features
redi [Thu, 30 May 2019 10:14:06 +0000 (10:14 +0000)] 
Update documentation of implementation-defined library features

* doc/xml/manual/status_cxx2011.xml: Use <variablelist> for
documentation of implementation-defined types for [thread.req.native].
* doc/xml/manual/status_cxx2017.xml: Update documentation of
implementation-defined strings for [variant.bad.access]. Fix typo in
documentation of implementation-defined support for [fs.conform.9945].
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271773 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * tree-predcom.c (is_inv_store_elimination_chain): Fix a typo - lenght
jakub [Thu, 30 May 2019 09:33:20 +0000 (09:33 +0000)] 
* tree-predcom.c (is_inv_store_elimination_chain): Fix a typo - lenght
to length.

* lang.opt (ftail-call-workaround=): Fix a typo - lenghts to lengths.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271770 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoGeneralize getconf _NPROCESSORS_ONLN
ro [Thu, 30 May 2019 09:06:48 +0000 (09:06 +0000)] 
Generalize getconf _NPROCESSORS_ONLN

libgomp:
* configure.ac: Call AX_COUNT_CPUS.
Substitute CPU_COUNT.
* testsuite/Makefile.am (check-am): Use CPU_COUNT as processor
count fallback.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* Makefile.in, testsuite/Makefile.in: Regenerate.

config:
* ax_count_cpus.m4: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271769 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agotestsuite,x86 - require native TLS for two tests that use it.
iains [Thu, 30 May 2019 08:43:19 +0000 (08:43 +0000)] 
testsuite,x86 - require native TLS for two tests that use it.

gcc/testsuite/

2019-05-30  Iain Sandoe  <iain@sandoe.co.uk>

* gcc.target/i386/pr86257.c: Require native TLS support.
* gcc.target/i386/stack-prot-sym.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271768 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agogdbinit: add a new command and fix one
marxin [Thu, 30 May 2019 07:50:39 +0000 (07:50 +0000)] 
gdbinit: add a new command and fix one

2019-05-30  Martin Liska  <mliska@suse.cz>

* gdbinit.in: Fix 'ptc' command.  Add trt
that prints TREE_TYPE($).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271763 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago/cp
paolo [Thu, 30 May 2019 07:09:41 +0000 (07:09 +0000)] 
/cp
2019-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (grokdeclarator): Use declarator->id_loc in five
error_at calls.

/testsuite
2019-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/alias-decl-18.C: Test location too.
* g++.dg/cpp0x/udlit-nofunc-neg.C: Likewise.
* g++.dg/parse/crash59.C: Likewise.
* g++.dg/parse/error38.C: Likewise.
* g++.dg/parse/error39.C: Likewise.
* g++.dg/template/crash31.C: Likewise.
* g++.dg/template/operator8.C: Likewise.
* g++.dg/template/operator9.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271762 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR go/90669
ian [Thu, 30 May 2019 00:57:11 +0000 (00:57 +0000)] 
PR go/90669
    compiler: remove range-based 'for' loop

    Fix for GCC PR/90669: remove range-based 'for' loop to preserve
    buildability with g++ version 4.X.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271761 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoDaily bump.
gccadmin [Thu, 30 May 2019 00:16:17 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271760 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoPR libstdc++/85494 fix failing test
redi [Wed, 29 May 2019 22:00:57 +0000 (22:00 +0000)] 
PR libstdc++/85494 fix failing test

This test now fails on mingw-w64 because it's no longer always true that
the mt19937 engine is used when _GLIBCXX_USE_DEV_RANDOM is not defined.

Add tests for all the known tokens to ensure that at least one is
accepted.

* testsuite/26_numerics/random/random_device/cons/token.cc: Fix test
that fails on mingw-w64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271756 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoPR libstdc++/88881 fix filesystem::symlink_status for Windows
redi [Wed, 29 May 2019 22:00:53 +0000 (22:00 +0000)] 
PR libstdc++/88881 fix filesystem::symlink_status for Windows

The fix for PR 88881 only added a workaround to filesystem::status, but
filesystem::symlink_status is also affected by the _wstat bug and needs
the same workaround.

The recent change to optimize path::parent_path() means that the
workaround can be simplified to just use parent_path().

PR libstdc++/88881
* src/c++17/fs_ops.cc [_GLIBCXX_FILESYSTEM_IS_WINDOWS]
(status(const path&, error_code&)): Use parent_path() to remove
trailing slash.
(symlink_status(const path&, error_code&)): Duplicate workaround for
bug in _wstat for paths with trailing slash.
* testsuite/27_io/filesystem/operations/remove_all.cc: Check path
with trailing slash.
* testsuite/27_io/filesystem/operations/status.cc: Likewise.
* testsuite/27_io/filesystem/operations/symlink_status.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271755 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoOptimize filesystem::path::parent_path()
redi [Wed, 29 May 2019 22:00:45 +0000 (22:00 +0000)] 
Optimize filesystem::path::parent_path()

Parsing a complete string is more efficient than appending each
component one-by-one.

* src/c++17/fs_path.cc (path::parent_path()): Create whole path at
once instead of building it iteratively.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271754 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[gcc]
wschmidt [Wed, 29 May 2019 21:50:09 +0000 (21:50 +0000)] 
[gcc]

2019-05-29  Bill Schmidt  <wschmidt@linux.ibm.com>
    Alan Modra  <amodra@gmail.com>

* config/rs6000/rs6000.c (rs6000_call_template_1): Handle pcrel
calls here...
(rs6000_indirect_call_template_1): ...and here.
(rs6000_pltseq_template): Handle plt_pcrel34.  Rework tocsave,
plt16_ha, plt16_lo, mtctr indirect calls.  Use
rs6000_pltseq_enum.
(rs6000_decl_ok_for_sibcall): New function.
(rs6000_function_ok_for_sibcall): Refactor.
(rs6000_longcall_ref): Use UNSPEC_PLT_PCREL when pcrel.
(rs6000_call_aix): Don't emit toc restore rtl for indirect calls
when pcrel.  Reorganize.
(rs6000_sibcall_aix): Don't add r2 to function usage when pcrel.
* rs6000.h (rs6000_pltseq_enum): New enum.
* rs6000.md (UNSPEC_PLT_PCREL): New unspec.
(*pltseq_tocsave): Use rs6000_pltseq_enum.
(*pltseq_plt16_ha): Likewise.
(*pltseq_plt16_lo): Likewise.
(*pltseq_mtctr): Likewise.
(*pltseq_plt_pcrel): New insn.
(*call_local_aix): Handle @notoc calls.
(*call_value_local_aix): Likewise.
(*call_nonlocal_aix): Adjust lengths for pcrel calls.
(*call_value_nonlocal_aix): Likewise.
(*call_indirect_pcrel): New insn.
(*call_value_indirect_pcrel): Likewise.

[gcc/testsuite]

2019-05-29  Bill Schmidt  <wschmidt@linux.ibm.com>

* gcc.target/powerpc/notoc-direct-1.c: New.
* gcc.target/powerpc/pcrel-sibcall-1.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271753 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR c++/90598
jakub [Wed, 29 May 2019 21:33:18 +0000 (21:33 +0000)] 
PR c++/90598
* tree.c (lvalue_kind): Return clk_none for expressions with
with VOID_TYPE_P.

* g++.dg/cpp0x/pr90598.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271752 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Wed, 29 May 2019 20:30:45 +0000 (20:30 +0000)] 
2019-05-29  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/90539
* gfortran.h (gfc_has_dimen_vector_ref): Add prototype.
* trans.h (gfc_conv_subref_array_arg): Add argument check_contiguous.
(gfc_conv_is_contiguous_expr): Add prototype.
* frontend-passes.c (has_dimen_vector_ref): Remove prototype,
rename to
(gfc_has_dimen_vector_ref): New function name.
(matmul_temp_args): Use gfc_has_dimen_vector_ref.
(inline_matmul_assign): Likewise.
* trans-array.c (gfc_conv_array_parameter): Also check for absence
of a vector subscript before calling gfc_conv_subref_array_arg.
Pass additional argument to gfc_conv_subref_array_arg.
* trans-expr.c (gfc_conv_subref_array_arg): Add argument
check_contiguous. If that is true, check if the argument
is contiguous and do not repack in that case.
* trans-intrinsic.c (gfc_conv_intrinsic_is_contiguous): Split
away most of the work into, and call
(gfc_conv_intrinsic_is_coniguous_expr): New function.

2019-05-29  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/90539
* gfortran.dg/internal_pack_21.f90: Adjust scan patterns.
* gfortran.dg/internal_pack_22.f90: New test.
* gfortran.dg/internal_pack_23.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271751 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * tree-ssa/alias-access-spath-1.c: new testcase.
hubicka [Wed, 29 May 2019 19:51:24 +0000 (19:51 +0000)] 
* tree-ssa/alias-access-spath-1.c: new testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271750 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config/i386/sse.md (*save_multiple<mode>): Rename from
uros [Wed, 29 May 2019 18:51:41 +0000 (18:51 +0000)] 
* config/i386/sse.md (*save_multiple<mode>): Rename from
save_multiple<mode>.
(*restore_multiple<mode>): Rename from restore_multiple<mode>.
(*restore_multiple_and_return<mode>): Rename from
restore_multiple_and_return<mode>.
(*restore_multiple_leave_return<mode>): Rename from
restore_multiple_leave_return<mode>.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271749 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config.gcc (rx-*-linux*): New target.
law [Wed, 29 May 2019 18:36:06 +0000 (18:36 +0000)] 
* config.gcc (rx-*-linux*): New target.
* config/rx/elf.opt: New file.
* config/rx/linux.h: Likewise.
* config/rx/t-linux: Likewise.
* config/rx/rx.c (TARGET_SAVE_ACC_REGISTER): If not defined,
make it zero.
* config/rx/rx.h (ASM_APP_ON): Allow to be overridden.
(ASM_APP_OFF): Likewise.
* config/rx/rx.opt: Drop -msim and -mas100-syntax, they were
moved elsewhere.

* config.host (rx-*-linux*): Add new case.
* config/rx/t-rx (HOST_LIBGCC2_CFLAGS): Force DFmode to SFmode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271748 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * tree-ssa-alias.c (same_type_for_tbaa): Return ture if main
hubicka [Wed, 29 May 2019 18:13:51 +0000 (18:13 +0000)] 
* tree-ssa-alias.c (same_type_for_tbaa): Return ture if main
variants are pointer equivalent.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271747 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago/cp
paolo [Wed, 29 May 2019 17:30:36 +0000 (17:30 +0000)] 
/cp
2019-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/89875
* parser.c (cp_parser_sizeof_operand): When the type-id production
did not work out commit to the tentative parse.

/testsuite
2019-05-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/89875
* g++.dg/cpp0x/decltype-pr66548.C: Remove xfail.
* g++.dg/template/sizeof-template-argument.C: Adjust expected error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271746 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoAvoid -Wunused-parameter warnings from testsuite utility
redi [Wed, 29 May 2019 14:45:50 +0000 (14:45 +0000)] 
Avoid -Wunused-parameter warnings from testsuite utility

* testsuite/util/testsuite_api.h: Remove names of unused parameters.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271741 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoPR libstdc++/85494 use rdseed and rand_s in std::random_device
redi [Wed, 29 May 2019 14:45:35 +0000 (14:45 +0000)] 
PR libstdc++/85494 use rdseed and rand_s in std::random_device

Add support for additional sources of randomness to std::random_device,
to allow using RDSEED for Intel CPUs and rand_s for Windows. When
supported these can be selected using the tokens "rdseed" and "rand_s".
For *-w64-mingw32 targets the "default" token will now use rand_s, and
for other i?86-*-* and x86_64-*-* targets it will try to use "rdseed"
first, then "rdrand", and finally "/dev/urandom".

To simplify the declaration of std::random_device in <bits/random.h> the
constructors now unconditionally call _M_init instead of _M_init_pretr1,
and the function call operator now unconditionally calls _M_getval. The
library code now decides whether _M_init and _M_getval should use a real
source of randomness or the mt19937 engine.

Existing code compiled against old libstdc++ headers will still call
_M_init_pretr1 and _M_getval_pretr1, but those functions now forward to
_M_init and _M_getval if a real source of randomness is available. This
means existing code compiled for mingw-w64 will start to use rand_s just
by linking to a new libstdc++.dll.

* acinclude.m4 (GLIBCXX_CHECK_X86_RDSEED): Define macro to check if
the assembler supports rdseed.
* config.h.in: Regenerate.
* configure: Regenerate.
* configure.ac: Use GLIBCXX_CHECK_X86_RDSEED.
* config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_CRT_RAND_S): Define.
* doc/html/*: Regenerate.
* doc/xml/manual/status_cxx2011.xml: Document new tokens.
* include/bits/random.h (random_device::random_device()): Always call
_M_init rather than _M_init_pretr1.
(random_device::random_device(const string&)): Likewise.
(random_device::operator()()): Always call _M_getval().
(random_device::_M_file): Replace first member of union with an
anonymous struct, with _M_file as its first member.
* src/c++11/random.cc [_GLIBCXX_X86_RDRAND] (USE_RDRAND): Define.
[_GLIBCXX_X86_RDSEED] (USE_RDSEED): Define.
(USE_MT19937): Define if none of the above are defined.
(USE_POSIX_FILE_IO): Define.
(_M_strtoul): Remove.
[USE_RDSEED] (__x86_rdseed): Define new function.
[_GLIBCXX_USE_CRT_RAND_S] (__winxp_rand_s): Define new function.
(random_device::_M_init(const string&)): Initialize new union members.
Add support for "rdseed" and "rand_s" tokens. Decide what the
"default" token does according to which USE_* macros are defined.
[USE_POSIX_FILE_IO]: Store a file descriptor.
[USE_MT19937]: Forward to _M_init_pretr1 instead.
(random_device::_M_init_pretr1(const string&)) [USE_MT19937]: Inline
code from _M_strtoul.
[!USE_MT19937]: Call _M_init, transforming the old default token or
numeric tokens to "default".
(random_device::_M_fini()) [USE_POSIX_FILE_IO]: Use close not fclose.
(random_device::_M_getval()): Use new union members to obtain a
random number from the stored function pointer or file descriptor.
[USE_MT19937]: Obtain a value from the mt19937 engine.
(random_device::_M_getval_pretr1()): Call _M_getval().
(random_device::_M_getentropy()) [USE_POSIX_FILE_IO]: Use _M_fd
instead of fileno.
[!USE_MT19937] (mersenne_twister): Do not instantiate when not needed.
* testsuite/26_numerics/random/random_device/85494.cc: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271740 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoThis patch implements the [u]avgM3_floor and [u]avgM3_ceil optabs for SVE2.
alejandro [Wed, 29 May 2019 14:12:02 +0000 (14:12 +0000)] 
This patch implements the [u]avgM3_floor and [u]avgM3_ceil optabs for SVE2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271739 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR fortran/90329
jakub [Wed, 29 May 2019 14:08:57 +0000 (14:08 +0000)] 
PR fortran/90329
* lang.opt (fbroken-callers): Remove.
(ftail-call-workaround, ftail-call-workaround=): New options.
* gfortran.h (struct gfc_namespace): Add implicit_interface_calls.
* interface.c (gfc_procedure_use): Set implicit_interface_calls
for calls to implicit interface procedures.
* trans-decl.c (create_function_arglist): Use flag_tail_call_workaround
instead of flag_broken_callers.  If it is not 2, also require
sym->ns->implicit_interface_calls.
* invoke.texi (fbroken-callers): Remove documentation.
(ftail-call-workaround, ftail-call-workaround=): Document.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271738 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR bootstrap/90543
jakub [Wed, 29 May 2019 09:33:02 +0000 (09:33 +0000)] 
PR bootstrap/90543
* optc-save-gen.awk: In cl_optimization_print, use correct condition
for var_opt_string printing.  In cl_optimization_print_diff, print
(null) instead of invoking undefined behavior if one of the
var_opt_string pointers is NULL and use && instead of first || in the
guarding condition.  For var_target_other options, handle const char *
target variables similarly to const char * optimize node variables.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271736 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[PATCH 3/3][GCC][AARCH64] Add support for pointer authentication B key
samtebbs [Wed, 29 May 2019 09:22:17 +0000 (09:22 +0000)] 
[PATCH 3/3][GCC][AARCH64] Add support for pointer authentication B key

gcc/
2019-05-29  Sam Tebbs  <sam.tebbs@arm.com>

* config/aarch64/aarch64-builtins.c (aarch64_builtins): Add
AARCH64_PAUTH_BUILTIN_AUTIB1716 and AARCH64_PAUTH_BUILTIN_PACIB1716.
* config/aarch64/aarch64-builtins.c (aarch64_init_pauth_hint_builtins):
Add autib1716 and pacib1716 initialisation.
* config/aarch64/aarch64-builtins.c (aarch64_expand_builtin): Add checks
for autib1716 and pacib1716.
* config/aarch64/aarch64-protos.h (aarch64_key_type,
aarch64_post_cfi_startproc): Define.
* config/aarch64/aarch64-protos.h (aarch64_ra_sign_key): Define extern.
* config/aarch64/aarch64.c (aarch64_handle_standard_branch_protection,
aarch64_handle_pac_ret_protection): Set default sign key to A.
* config/aarch64/aarch64.c (aarch64_expand_epilogue,
aarch64_expand_prologue): Add check for b-key.
* config/aarch64/aarch64.c (aarch64_ra_sign_key,
aarch64_post_cfi_startproc, aarch64_handle_pac_ret_b_key): Define.
* config/aarch64/aarch64.h (TARGET_ASM_POST_CFI_STARTPROC): Define.
* config/aarch64/aarch64.c (aarch64_pac_ret_subtypes): Add "b-key".
* config/aarch64/aarch64.md (unspec): Add UNSPEC_AUTIA1716,
UNSPEC_AUTIB1716, UNSPEC_AUTIASP, UNSPEC_AUTIBSP, UNSPEC_PACIA1716,
UNSPEC_PACIB1716, UNSPEC_PACIASP, UNSPEC_PACIBSP.
* config/aarch64/aarch64.md (do_return): Add check for b-key.
* config/aarch64/aarch64.md (<pauth_mnem_prefix>sp): Replace
pauth_hint_num_a with pauth_hint_num.
* config/aarch64/aarch64.md (<pauth_mnem_prefix>1716): Replace
pauth_hint_num_a with pauth_hint_num.
* config/aarch64/aarch64.opt (msign-return-address=): Deprecate.
* config/aarch64/iterators.md (PAUTH_LR_SP): Add UNSPEC_AUTIASP,
UNSPEC_AUTIBSP, UNSPEC_PACIASP, UNSPEC_PACIBSP.
* config/aarch64/iterators.md (PAUTH_17_16): Add UNSPEC_AUTIA1716,
UNSPEC_AUTIB1716, UNSPEC_PACIA1716, UNSPEC_PACIB1716.
* config/aarch64/iterators.md (pauth_mnem_prefix): Add UNSPEC_AUTIA1716,
UNSPEC_AUTIB1716, UNSPEC_PACIA1716, UNSPEC_PACIB1716, UNSPEC_AUTIASP,
UNSPEC_AUTIBSP, UNSPEC_PACIASP, UNSPEC_PACIBSP.
* config/aarch64/iterators.md (pauth_hint_num_a): Replace
UNSPEC_PACI1716 and UNSPEC_AUTI1716 with UNSPEC_PACIA1716 and
UNSPEC_AUTIA1716 respectively.
* config/aarch64/iterators.md (pauth_hint_num_a): Rename to pauth_hint_num
and add UNSPEC_PACIBSP, UNSPEC_AUTIBSP, UNSPEC_PACIB1716, UNSPEC_AUTIB1716.
* doc/invoke.texi (-mbranch-protection): Add b-key type.
* config/aarch64/aarch64-bti-insert.c (aarch64_pac_insn_p): Rename
UNSPEC_PACISP to UNSPEC_PACIASP and UNSPEC_PACIBSP.

gcc/testsuite
2019-05-29  Sam Tebbs  <sam.tebbs@arm.com>

* gcc.target/aarch64/return_address_sign_b_1.c: New file.
* gcc.target/aarch64/return_address_sign_b_2.c: New file.
* gcc.target/aarch64/return_address_sign_b_3.c: New file.
* gcc.target/aarch64/return_address_sign_b_exception.c: New file.
* gcc.target/aarch64/return_address_sign_ab_exception.c: New file.
* gcc.target/aarch64/return_address_sign_builtin.c: New file

libgcc/
2019-05-29  Sam Tebbs  <sam.tebbs@arm.com>

* config/aarch64/aarch64-unwind.h (aarch64_cie_signed_with_b_key): New
function.
* config/aarch64/aarch64-unwind.h (aarch64_post_extract_frame_addr,
aarch64_post_frob_eh_handler_addr): Add check for b-key.
* config/aarch64/aarch64-unwind-h (aarch64_post_extract_frame_addr,
aarch64_post_frob_eh_handler_addr, aarch64_post_frob_update_context):
Rename RA_A_SIGNED_BIT to RA_SIGNED_BIT.
* unwind-dw2-fde.c (get_cie_encoding): Add check for 'B' in augmentation
string.
* unwind-dw2.c (extract_cie_info): Add check for 'B' in augmentation
string.
(RA_A_SIGNED_BIT): Rename to RA_SIGNED_BIT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271735 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gimplify.c (struct gimplify_omp_ctx): Add clauses member.
jakub [Wed, 29 May 2019 07:51:43 +0000 (07:51 +0000)] 
* gimplify.c (struct gimplify_omp_ctx): Add clauses member.
(gimplify_scan_omp_clauses): Initialize ctx->clauses.
(gimplify_adjust_omp_clauses_1): Transform lastprivate conditional
explicit clause on combined parallel into implicit shared clause.
(gimplify_adjust_omp_clauses): Move lastprivate conditional clause
and firstprivate if the decl has one too from combined parallel to
the worksharing construct.
gcc/testsuite/
* c-c++-common/gomp/lastprivate-conditional-2.c (foo): Don't expect
sorry on lastprivate conditional on parallel for.
* c-c++-common/gomp/lastprivate-conditional-3.c (foo): Add tests for
lastprivate conditional warnings on parallel for constructs.
* c-c++-common/gomp/lastprivate-conditional-4.c: New test.
libgomp/
* testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: Rename
to ...
* testsuite/libgomp.c-c++-common/lastprivate-conditional-4.c: ... this.
* testsuite/libgomp.c-c++-common/lastprivate-conditional-5.c: New test.
* testsuite/libgomp.c-c++-common/lastprivate-conditional-6.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271733 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR c/90628
jakub [Wed, 29 May 2019 07:48:37 +0000 (07:48 +0000)] 
PR c/90628
* c-common.c (check_builtin_function_arguments)
<case BUILTIN_*_OVERFLOW>: Diagnose pointer to const qualified integer
as last argument.

* c-c++-common/builtin-arith-overflow-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271732 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago P1091R3 - Extending structured bindings to be more like var decls
jakub [Wed, 29 May 2019 07:45:49 +0000 (07:45 +0000)] 
P1091R3 - Extending structured bindings to be more like var decls
P1381R1 - Reference capture of structured bindings
* decl.c (cp_maybe_mangle_decomp): Handle TREE_STATIC decls even at
function scope.
(cp_finish_decomp): Copy over various decl properties from decl to
v[i] in the tuple case.
(grokdeclarator): Allow static, thread_local and __thread for C++2a
and use pedwarn instead of error for older standard revisions.
Make other structured binding diagnostic messages more i18n friendly.

* g++.dg/cpp1z/decomp3.C (test): For static, expect only warning
instead of error and only for c++17_down.  Add a thread_local test.
(z2): Add a __thread test.
* g++.dg/cpp2a/decomp1.C: New test.
* g++.dg/cpp2a/decomp1-aux.cc: New file.
* g++.dg/cpp2a/decomp2.C: New test.
* g++.dg/cpp2a/decomp3.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271731 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago P1091R3 - Extending structured bindings to be more like var decls
jakub [Wed, 29 May 2019 07:44:50 +0000 (07:44 +0000)] 
P1091R3 - Extending structured bindings to be more like var decls
P1381R1 - Reference capture of structured bindings
* decl.c (cp_maybe_mangle_decomp): Handle TREE_STATIC decls even at
function scope.
(cp_finish_decomp): Copy over various decl properties from decl to
v[i] in the tuple case.
(grokdeclarator): Allow static, thread_local and __thread for C++2a
and use pedwarn instead of error for older standard revisions.
Make other structured binding diagnostic messages more i18n friendly.

* g++.dg/cpp1z/decomp3.C (test): For static, expect only warning
instead of error and only for c++17_down.  Add a thread_local test.
(z2): Add a __thread test.
* g++.dg/cpp2a/decomp1.C: New test.
* g++.dg/cpp2a/decomp1-aux.cc: New file.
* g++.dg/cpp2a/decomp2.C: New test.
* g++.dg/cpp2a/decomp3.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271730 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoRemove duplicite dg-compile (PR testsuite/90657).
marxin [Wed, 29 May 2019 06:09:02 +0000 (06:09 +0000)] 
Remove duplicite dg-compile (PR testsuite/90657).

2019-05-29  Martin Liska  <mliska@suse.cz>

PR testsuite/90657
* gcc.dg/ipa/pr90555.c: Remove duplicite dg-compile.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271729 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[gcc]
wschmidt [Wed, 29 May 2019 03:37:29 +0000 (03:37 +0000)] 
[gcc]

2019-05-28  Bill Schmidt  <wschmidt@linux.ibm.com>
    Michael Meissner  <meissner@linux.ibm.com>

* config/rs6000/rs6000-cpus.def (OTHER_FUTURES_MASK): New #define.

[gcc/testsuite]

2019-05-28  Bill Schmidt  <wschmidt@linux.ibm.com>

* gcc.target/powerpc/localentry-detect-1.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271728 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-28 Michael Meissner <meissner@linux.ibm.com>
wschmidt [Wed, 29 May 2019 02:10:59 +0000 (02:10 +0000)] 
2019-05-28  Michael Meissner  <meissner@linux.ibm.com>

* rtl.h (LABEL_REF_P): New #define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271727 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoDaily bump.
gccadmin [Wed, 29 May 2019 00:16:17 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271726 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config/pa/pa.c (hppa_profile_hook): Remove offset adjustment.
danglin [Tue, 28 May 2019 23:24:23 +0000 (23:24 +0000)] 
* config/pa/pa.c (hppa_profile_hook): Remove offset adjustment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271720 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoPR libstdc++/90634 reduce allocations in filesystem::path construction
redi [Tue, 28 May 2019 19:39:48 +0000 (19:39 +0000)] 
PR libstdc++/90634 reduce allocations in filesystem::path construction

PR libstdc++/90634
* include/experimental/bits/fs_path.h (path::path(path&&)): Only call
_M_split_cmpts() for a path with multiple components.
(path::_S_is_dir_sep()): Add missing 'static' keyword to function.
* src/filesystem/path.cc (path::_M_split_cmpts()): Count number of
components and reserve space in vector. Return early when there is
only one component.
* testsuite/27_io/filesystem/path/construct/90634.cc: New test.
* testsuite/experimental/filesystem/path/construct/90634.cc: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271717 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoFix C++14-only code in testsuite utility
redi [Tue, 28 May 2019 19:39:41 +0000 (19:39 +0000)] 
Fix C++14-only code in testsuite utility

* testsuite/util/testsuite_fs.h (compare_paths): Use three-argument
form of std::equals for C++11 compatibility.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271716 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoRemove pre-Solaris 11/SPARC unwinding support
ro [Tue, 28 May 2019 17:27:51 +0000 (17:27 +0000)] 
Remove pre-Solaris 11/SPARC unwinding support

* config/sparc/sol2-unwind.h [__arch64__] (sparc64_is_sighandler):
Remove Solaris 9 and 10 support.
(sparc_is_sighandler): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271715 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[C++ PATCH] template specializations
nathan [Tue, 28 May 2019 17:04:12 +0000 (17:04 +0000)] 
[C++ PATCH] template specializations

https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01844.html
* decl.c (duplicate_decls): Assert a template newdecl has no
specializations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271713 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR c++/90548 - ICE with generic lambda and empty pack.
mpolacek [Tue, 28 May 2019 14:00:29 +0000 (14:00 +0000)] 
PR c++/90548 - ICE with generic lambda and empty pack.
* pt.c (tsubst_copy_and_build): Handle pack expansion properly.

* g++.dg/cpp1y/lambda-generic-90548.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271705 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoCurrent vectoriser doesn't support masked loads for SLP. We should add that, to
alejandro [Tue, 28 May 2019 13:48:44 +0000 (13:48 +0000)] 
Current vectoriser doesn't support masked loads for SLP. We should add that, to
allow things like:

void
f (int *restrict x, int *restrict y, int *restrict z, int n)
{
  for (int i = 0; i < n; i += 2)
    {
      x[i] = y[i] ? z[i] : 1;
      x[i + 1] = y[i + 1] ? z[i + 1] : 2;
    }
}

to be vectorized using contiguous loads rather than LD2 and ST2.

This patch was motivated by SVE, but it is completely generic and should apply
to any architecture with masked loads.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271704 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoRemove obsolete comment about use_thunk
ro [Tue, 28 May 2019 13:37:15 +0000 (13:37 +0000)] 
Remove obsolete comment about use_thunk

* config/alpha/alpha.c [TARGET_ABI_OSF] (alpha_output_mi_thunk_osf):
Remove obsolete use_thunk reference.
* config/i386/i386.c (x86_output_mi_thunk): Likewise.
* config/ia64/ia64.c (ia64_output_mi_thunk): Likewise.
* config/nios2/nios2.c (nios2_asm_output_mi_thunk): Likewise.
* config/or1k/or1k.c (or1k_output_mi_thunk): Likewise.
* config/rs6000/rs6000.c (rs6000_output_mi_thunk): Likewise.
* config/sh/sh.c (sh_output_mi_thunk): Likewise.
* config/sparc/sparc.c (sparc_output_mi_thunk): Likewise.
* config/tilegx/tilegx.c (tilegx_output_mi_thunk): Likewise.
* config/tilepro/tilepro.c (tilepro_asm_output_mi_thunk): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271703 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[PATCH] Commonize anon-name generation
nathan [Tue, 28 May 2019 13:31:16 +0000 (13:31 +0000)] 
[PATCH] Commonize anon-name generation

https://gcc.gnu.org/ml/gcc-patches/2019-05/msg01699.html
* tree.h (IDENTIFIER_ANON_P): New.
(anon_aggrname_format, anon_aggname_p): Don't declare.
(make_anon_name): Declare.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Use IDENTIFIER_ANON_P.
(hash_tree): Likewise.
* tree-streamer-out.c (write_ts_decl_minimal_tree): Likewise.
* tree.c (anon_aggrname_p, anon_aggrname_format): Delete.
(anon_cnt, make_anon_name): New.

  gcc/cp/
* cp-tree.h (make_anon_name): Drop declaration.
(TYPE_UNNAMED_P): Use IDENTIFIER_ANON_P.
* cp-lang.c (cxx_dwarf_name): Likewise.
* class.c (find_flexarrays): Likewise.
* decl.c (name_unnamed_type, xref_tag_1): Likewise.
* error.c (dump_aggr_type): Likewise.
* pt.c (push_template_decl_real): Likewise.
* name-lookup.c (consider_binding_level): Likewise.
(anon_cnt, make_anon_name): Delete.

gcc/d/
* types.cc (fixup_anonymous_offset): Use IDENTIFIER_ANON_P.
(layout_aggregate_members): Use make_anon_name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271702 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * testsuite/gcc.target/sh/pr50749-qihisi-predec-3.c: Disable
law [Tue, 28 May 2019 13:16:17 +0000 (13:16 +0000)] 
* testsuite/gcc.target/sh/pr50749-qihisi-predec-3.c: Disable
loop distribution.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271701 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoSupport again multiple --help options (PR other/90315).
marxin [Tue, 28 May 2019 12:05:50 +0000 (12:05 +0000)] 
Support again multiple --help options (PR other/90315).

2019-05-28  Martin Liska  <mliska@suse.cz>

PR other/90315
* opts-global.c (decode_options): Print help for all
help_option_arguments.
* opts.c (print_help): Add new argument.
(common_handle_option): Remember all values into
help_option_arguments.
* opts.h (print_help): Add new argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271700 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agors6000: Improve p9-dimode* testcases
segher [Tue, 28 May 2019 11:45:48 +0000 (11:45 +0000)] 
rs6000: Improve p9-dimode* testcases

This removes the unnecessary restriction to 32-bit (all three ways).
It also scans for mtvsr*, not just mtvsrd.  Finally, it uses the "wa"
constraints instead of "wi" in the inline asm statements.

gcc/testsuite/
* gcc.target/powerpc/p9-dimode1.c: Don't restrict to -m64.  Check for
all mtvsr*, not just mtvsrd.  Use "wa" instead of "wi" constraints.
* gcc.target/powerpc/p9-dimode2.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271696 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoHandle loop fields in IPA ICF (PR ipa/90555).
marxin [Tue, 28 May 2019 11:42:46 +0000 (11:42 +0000)] 
Handle loop fields in IPA ICF (PR ipa/90555).

2019-05-28  Martin Liska  <mliska@suse.cz>

PR ipa/90555
* ipa-icf-gimple.c (func_checker::compare_loops): New function.
* ipa-icf-gimple.h (func_checker::compare_loops): Likewise.
(func_checker::compare_bb): Call compare_loops.
2019-05-28  Martin Liska  <mliska@suse.cz>

PR ipa/90555
* gcc.dg/ipa/pr90555.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271695 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/utils.c (handle_stack_protect_attribute): Move around.
ebotcazou [Tue, 28 May 2019 08:51:35 +0000 (08:51 +0000)] 
* gcc-interface/utils.c (handle_stack_protect_attribute): Move around.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271694 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * doc/gnat_rm/implementation_defined_pragmas.rst (Machine_Attribute):
ebotcazou [Tue, 28 May 2019 08:47:33 +0000 (08:47 +0000)] 
* doc/gnat_rm/implementation_defined_pragmas.rst (Machine_Attribute):
Document additional optional parameters.
* sem_prag.adb (Analyze_Pragma) <Pragma_Machine_Attribute>: Accept
more than one optional parameter.
* gcc-interface/decl.c (prepend_one_attribute_pragma): Alphabetize
the list of supported pragmas.  Simplify the handling of parameters
and add support for more than one optional parameter.
* gcc-interface/utils.c (attr_cold_hot_exclusions): New constant.
(gnat_internal_attribute_table): Add entry for no_icf, noipa, flatten,
used, cold, hot, target and target_clones.
(begin_subprog_body): Do not create the RTL for the subprogram here.
(handle_noicf_attribute): New static function.
(handle_noipa_attribute): Likewise.
(handle_flatten_attribute): Likewise.
(handle_used_attribute): Likewise.
(handle_cold_attribute): Likewise.
(handle_hot_attribute): Likewise.
(handle_target_attribute): Likewise.
(handle_target_clones_attribute): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271693 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (lvalue_required_for_attribute_p): Return 0
ebotcazou [Tue, 28 May 2019 08:25:32 +0000 (08:25 +0000)] 
* gcc-interface/trans.c (lvalue_required_for_attribute_p): Return 0
for 'Size too.
(Identifier_to_gnu): Use the actual subtype for a reference to a
packed array in a return statement.
(Attribute_to_gnu) <Attr_Size>: Do not strip VIEW_CONVERT_EXPRs from
the prefix in every case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271691 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (gnat_to_gnu): Remove superfluous tests on
ebotcazou [Tue, 28 May 2019 08:13:37 +0000 (08:13 +0000)] 
* gcc-interface/trans.c (gnat_to_gnu): Remove superfluous tests on
Backend_Overflow_Checks_On_Target and rework comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271689 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (walk_nesting_tree): New static function.
ebotcazou [Tue, 28 May 2019 08:00:21 +0000 (08:00 +0000)] 
* gcc-interface/trans.c (walk_nesting_tree): New static function.
(finalize_nrv): Use it to walk the entire nesting tree.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271685 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Remove
ebotcazou [Tue, 28 May 2019 07:42:53 +0000 (07:42 +0000)] 
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Subtype>: Remove
obsolete test on Is_For_Access_Subtype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271683 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/decl.c (components_to_record): Set a name on the type
ebotcazou [Tue, 28 May 2019 07:36:02 +0000 (07:36 +0000)] 
* gcc-interface/decl.c (components_to_record): Set a name on the type
created for the REP part, if any.
* gcc-interface/utils.c (finish_record_type): Only take the maximum
when merging sizes for a variant part at offset 0.
(merge_sizes): Rename has_rep parameter into max.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271681 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/utils.c (gnat_internal_attribute_table): Add support
ebotcazou [Tue, 28 May 2019 07:23:54 +0000 (07:23 +0000)] 
* gcc-interface/utils.c (gnat_internal_attribute_table): Add support
for stack_protect attribute.
(handle_stack_protect_attribute): New static function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271680 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/decl.c (intrin_arglists_compatible_p): Do not return
ebotcazou [Tue, 28 May 2019 07:21:07 +0000 (07:21 +0000)] 
* gcc-interface/decl.c (intrin_arglists_compatible_p): Do not return
false if the internal builtin uses a variable list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271679 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoAdd GCC support to ENQCMD.
liuhongt [Tue, 28 May 2019 02:45:34 +0000 (02:45 +0000)] 
Add GCC support to ENQCMD.

gcc/ChangeLog

2019-01-23  Xuepeng Guo  <xuepeng.guo@intel.com>

* common/config/i386/i386-common.c
(OPTION_MASK_ISA_ENQCMD_SET,
OPTION_MASK_ISA_ENQCMD_UNSET): New macros.
(ix86_handle_option): Handle -menqcmd.
* config.gcc (enqcmdintrin.h): New header file.
* config/i386/cpuid.h (bit_ENQCMD): New bit.
* config/i386/driver-i386.c (host_detect_local_cpu): Handle
-menqcmd.
* config/i386/i386-builtin-types.def ((INT, PVOID, PCVOID)): New
function type.
* config/i386/i386-builtin.def (__builtin_ia32_enqcmd,
__builtin_ia32_enqcmds): New builtins.
* config/i386/i386-c.c (__ENQCMD__): New macro.
* config/i386/i386-option.c (ix86_target_string): Add
-menqcmd.
(ix86_valid_target_attribute_inner_p): Likewise.
* config/i386/i386-expand.c
(ix86_expand_builtin): Expand IX86_BUILTIN_ENQCMD and
IX86_BUILTIN_ENQCMDS.
* config/i386/i386.h (TARGET_ENQCMD): New.
* config/i386/i386.md (UNSPECV_ENQCMD, UNSPECV_ENQCMDS): New.
(@enqcmd<enqcmd_sfx>_<mode>): New insn pattern.
(movdir64b_<mode>): Parameterize to enable share expansion code
with ENQCMD in function ix86_expand_builtin.
* config/i386/i386.opt: Add -menqcmd.
* config/i386/immintrin.h: Include enqcmdintrin.h.
* config/i386/enqcmdintrin.h: New intrinsic file.
* doc/invoke.texi: Add -menqcmd.

gcc/testsuite/ChangeLog

2019-01-23  Xuepeng Guo  <xuepeng.guo@intel.com>

* gcc.target/i386/enqcmd.c: New test.
* gcc.target/i386/enqcmds.c: Likewise.
* g++.dg/other/i386-2.C: Add -menqcmd.
* g++.dg/other/i386-3.C: Likewise.
* gcc.target/i386/sse-12.c: Likewise.
* gcc.target/i386/sse-13.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.
* gcc.target/i386/sse-23.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271678 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoDaily bump.
gccadmin [Tue, 28 May 2019 00:16:20 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271677 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gimplify.c (gimplify_scan_omp_clauses): Allow lastprivate conditional
jakub [Mon, 27 May 2019 21:33:37 +0000 (21:33 +0000)] 
* gimplify.c (gimplify_scan_omp_clauses): Allow lastprivate conditional
on sections construct.
* omp-low.c (lower_lastprivate_conditional_clauses): Handle sections
construct.
(lower_omp_sections): Handle lastprivate conditional.
(lower_omp_1) <case GIMPLE_ASSIGN>: Handle sections construct with
lastprivate_conditional_map.
* omp-expand.c (expand_omp_sections): Handle lastprivate conditional.
libgomp/
* testsuite/libgomp.c-c++-common/lastprivate_conditional_4.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271673 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * omp-low.c (lower_omp_1) <case GIMPLE_ASSIGN>: Look through ordered,
jakub [Mon, 27 May 2019 21:31:40 +0000 (21:31 +0000)] 
* omp-low.c (lower_omp_1) <case GIMPLE_ASSIGN>: Look through ordered,
critical, taskgroup and section regions when looking for a region
with non-NULL lastprivate_conditional_map.

* testsuite/libgomp.c-c++-common/lastprivate-conditional-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271672 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR libgomp/90641
jakub [Mon, 27 May 2019 21:27:00 +0000 (21:27 +0000)] 
PR libgomp/90641
* work.c (gomp_init_work_share): Instead of aligning final ordered
value to multiples of long long alignment, align to that the
first part (ordered team ids) and if inline_ordered_team_ids
is not on a long long alignment boundary within the structure,
use __alignof__ (long long) - 1 pad size always.
* loop.c (GOMP_loop_start): Fix *mem computation if
inline_ordered_team_ids is not aligned on long long alignment boundary
within the structure.
* loop-ull.c (GOMP_loop_ull_start): Likewise.
* sections.c (GOMP_sections2_start): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271671 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agodarwin, x86, testsuite - Match codegen
iains [Mon, 27 May 2019 20:06:22 +0000 (20:06 +0000)] 
darwin, x86, testsuite - Match codegen

For this test, we can match the codegen expected in the scan-asms
by avoiding the extra indirection that's mandated by the ABI for
common access and by using -mdynamic-no-pic for the 32b case.

gcc/testsuite/

2019-05-27  Iain Sandoe  <iain@sandoe.co.uk>

* gcc.target/i386/pr22076.c: Adjust options to
match codegen expected by the scan-asms.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271670 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * Makefile.am (check-go-tool): Only chmod check-go-dir if it
ian [Mon, 27 May 2019 19:21:22 +0000 (19:21 +0000)] 
* Makefile.am (check-go-tool): Only chmod check-go-dir if it
exists.
* Makefile.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271669 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agors6000: Fix sanitizer build (PR90639)
segher [Mon, 27 May 2019 19:12:19 +0000 (19:12 +0000)] 
rs6000: Fix sanitizer build (PR90639)

The assembler code needs to say it uses AltiVec instructions.

libsanitizer/
PR target/90639
* tsan/tsan_rtl_ppc64.S: Add ".machine altivec".

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271668 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config/i386/i386.c (ix86_gen_add3): Remove indirect function.
uros [Mon, 27 May 2019 18:33:23 +0000 (18:33 +0000)] 
* config/i386/i386.c (ix86_gen_add3): Remove indirect function.
(*ix86_gen_sub3): Ditto.
(*ix86_gen_sub3_carry): Ditto.
(*ix86_gen_one_cmpl2): Ditto.
(*ix86_gen_andsp): Ditto.
(ix86_init_large_pic_reg): Use gen_add2_insn instead of ix86_gen_add3.
(gen_and2_insn): New static function.
(ix86_expand_prologue): Use gen_and2_insn instead of ix86_gen_andsp.
Use gen_add3_insn instead of ix86_gen_add3.
(ix86_expand_split_stack_prologue): Use gen_add2_insn
instead of ix86_gen_add3.
(legitimize_tls_address): Use gen_add2_insn instead of ix86_gen_add3.
Use gen_sub3_insn instead of ix86_gen_sub3.
* config/i386-expand.c (ix86_split_long_move): Use gen_add2_insn
instead of ix86_gen_add3.
(ix86_expand_strlensi_unroll_1): Use gen_add2_insn instead of
ix86_gen_add3.  Use gen_sub3_insn instead of ix86_gen_sub3.
(construct_plt_address): Use gen_add2_insn instead of ix86_gen_add3.
* config/i386/i386-options.c (ix86_option_override_internal):
Do not initialize ix86_gen_add3, ix86_gen_sub3, ix86_gen_sub3_carry,
ix86_gen_one_cmpl2 and ix86_gen_andsp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271667 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * dwarf2out.c (resolve_args_picking_1): Deal with DW_OP_GNU_addr_index
ebotcazou [Mon, 27 May 2019 16:08:19 +0000 (16:08 +0000)] 
* dwarf2out.c (resolve_args_picking_1): Deal with DW_OP_GNU_addr_index
and DW_OP_GNU_const_index opcodes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271664 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config/i386/i386.h (STACK_SIZE_MODE): Define.
uros [Mon, 27 May 2019 14:37:02 +0000 (14:37 +0000)] 
* config/i386/i386.h (STACK_SIZE_MODE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271663 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago[testsuite,aarch64,arm] PR88440: Fix testcases
clyon [Mon, 27 May 2019 13:37:57 +0000 (13:37 +0000)] 
[testsuite,aarch64,arm] PR88440: Fix testcases

2019-05-27  Christophe Lyon  <christophe.lyon@linaro.org>

PR tree-optimization/88440
gcc/testsuite/
* gcc.target/aarch64/sve/index_offset_1.c: Add -fno-tree-loop-distribute-patterns.
* gcc.target/aarch64/sve/single_1.c: Likewise.
* gcc.target/aarch64/sve/single_2.c: Likewise.
* gcc.target/aarch64/sve/single_3.c: Likewise.
* gcc.target/aarch64/sve/single_4.c: Likewise.
* gcc.target/aarch64/sve/vec_init_1.c: Likewise.
* gcc.target/aarch64/vect-fmovd-zero.c: Likewise.
* gcc.target/aarch64/vect-fmovf-zero.c: Likewise.
* gcc.target/arm/ivopts.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271662 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2019 13:18:12 +0000 (13:18 +0000)] 
2019-05-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/90637
* tree-ssa-sink.c (statement_sink_location): Honor the
computed sink location for single-uses.

* gcc.dg/gomp/pr90637.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271661 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (Call_to_gnu): Do not initialize the temporary
ebotcazou [Mon, 27 May 2019 11:43:17 +0000 (11:43 +0000)] 
* gcc-interface/trans.c (Call_to_gnu): Do not initialize the temporary
created out of addressability concerns if it's for the _Init parameter
of an initialization procedure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271659 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/ada-builtin-types.def: New file.
ebotcazou [Mon, 27 May 2019 11:34:35 +0000 (11:34 +0000)] 
* gcc-interface/ada-builtin-types.def: New file.
* gcc-interface/ada-builtins.def: Likewise.
* gcc-interface/ada-tree.h (BUILT_IN_LIKELY): New macro.
(BUILT_IN_UNLIKELY): Likewise.
* gcc-interface/trans.c (independent_iterations_p): Initialize the
auto-vector to 16 elements.
(Call_to_gnu): Remove local variable and change the vector of actual
parameters to an auto-vector.  Do not convert actual parameters to
the argument type for front-end built-in functions.  Add support for
front-end built-in functions.
(build_noreturn_cond): Use internal instead of built-in function.
* gcc-interface/utils.c (c_builtin_type): Include ada-builtin-types.def
(install_builtin_function_types): Likewise.
(install_builtin_functions): Include ada-builtins.def first.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271658 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/utils.c (maybe_pad_type): Issue the warning for the
ebotcazou [Mon, 27 May 2019 11:12:28 +0000 (11:12 +0000)] 
* gcc-interface/utils.c (maybe_pad_type): Issue the warning for the
specific case of component types preferably.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271655 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (Identifier_to_gnu): Minor tweaks.
ebotcazou [Mon, 27 May 2019 11:04:48 +0000 (11:04 +0000)] 
* gcc-interface/trans.c (Identifier_to_gnu): Minor tweaks.
(gnat_to_gnu): Do not convert the result if it is a reference to an
unconstrained array used as the prefix of an attribute reference that
requires an lvalue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271653 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2019 10:52:14 +0000 (10:52 +0000)] 
2019-05-27  Richard Biener  <rguenther@suse.de>

PR middle-end/90610
* match.pd (vec_perm): Avoid clobbering op0 when not generating
a bit-insert.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271652 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (Gigi_Types_Compatible): New predicate.
ebotcazou [Mon, 27 May 2019 10:44:55 +0000 (10:44 +0000)] 
* gcc-interface/trans.c (Gigi_Types_Compatible): New predicate.
(Identifier_to_gnu): Use it to assert that the type of the identifier
and that of its entity are compatible for gigi.  Rename a couple of
local variables and separate the processing of the result type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271650 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (Call_to_gnu): Use the unpadded type when
ebotcazou [Mon, 27 May 2019 10:16:04 +0000 (10:16 +0000)] 
* gcc-interface/trans.c (Call_to_gnu): Use the unpadded type when
putting back an intermediate conversion the type of the actuals.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271647 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * gcc-interface/trans.c (gnat_to_gnu) <Shift operations>: Convert the
ebotcazou [Mon, 27 May 2019 09:14:30 +0000 (09:14 +0000)] 
* gcc-interface/trans.c (gnat_to_gnu) <Shift operations>: Convert the
count to the unsigned version of its base type before proceeding.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271646 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-27 Richard Biener <rguenther@suse.de>
rguenth [Mon, 27 May 2019 07:39:14 +0000 (07:39 +0000)] 
2019-05-27  Richard Biener  <rguenther@suse.de>

PR testsuite/90615
* gcc.dg/vect/costmodel/ppc/costmodel-vect-31b.c: Add
-fno-tree-loop-distribute-patterns.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-33.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76a.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76b.c: Likewise.
* gcc.dg/vect/costmodel/ppc/costmodel-vect-76c.c: Likewise.
* gcc.target/powerpc/vsx-vectorize-1.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271645 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoDaily bump.
gccadmin [Mon, 27 May 2019 00:16:19 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271644 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR go/90635
ian [Mon, 27 May 2019 00:14:02 +0000 (00:14 +0000)] 
PR go/90635
    libgo: correct typo in USE_LIBFFI AM_CONDITIONAL

    Only affects the case of passing --without-libffi to configure.

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

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271640 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago PR go/90614
ian [Mon, 27 May 2019 00:10:34 +0000 (00:10 +0000)] 
PR go/90614
    syscall: avoid unused parameter error if WIFCONTINUED not defined

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

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271638 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config/i386/i386.md (@leave_<mode>): New expander.
uros [Sun, 26 May 2019 22:48:24 +0000 (22:48 +0000)] 
* config/i386/i386.md (@leave_<mode>): New expander.
(*leave): Rename from leave.
(*leave_rex64): Rename from leave_rex64.
(@monitorx_<mode>): Rename from monitorx_<mode>.
(@clzero_<mode>): Rename from clzero_<mode>.
* config/i386/sse.md (@sse3_monitor_<mode>): Rename from
sse3_monitor_<mode>.
* config/i386/i386.c (*ix86_gen_leave): Remove indirect function.
(*ix86_gen_monitor): Ditto.
(*ix86_gen_monitorx): Ditto.
(*ix86_gen_clzero): Ditto.
(*ix86_gen_one_cmpl2): Ditto.
(ix86_emit_leave): Use gen_leave instead of ix86_gen_leave.
* config/i386/i386-expand.c (ix86_expand_builtin)
<case IX86_BUILTIN_MONITOR>: Use gen_sse3_monitor
instead of ix86_gen_monitor.
<case IX86_BUILTIN_MONITORX>: Use gen_monitorx
instead of ix86_gen_monitorx.
<case IX86_BUILTIN_CLZERO>: Use gen_clzero
instead of ix86_gen_clzero.
* config/i386/i386-options.c (ix86_option_override_internal):
Do not initialize ix86_gen_leave, ix86_gen_monitor,
ix86_gen_monitorx, ix86_gen_clzero and ix86_gen_one_cmpl2.

* config/i386/i386.md (@tls_global_dynamic_64_<mode>):
Rename from tls_global_dynamic_64_<mode>.
(@tls_local_dynamic_base_64_<mode>): Rename from
tls_local_dynamic_base_64_<mode>.
* config/i386/i386.c (*ix86_gen_tls_global_dynamic_64):
Remove indirect function.
(*ix86_gen_tls_local_dynamic_base_64): Ditto.
(legitimize_tls_address): Use gen_tls_global_dynamic_64 function
instead of ix86_gen_tls_global_dynamic_64.
Use gen_tls_local_dynamic_base_64 instead of
ix86_gen_tls_local_dynamic_base_64.
* config/i386/i386-options.c (ix86_option_override_internal):
Do not initialize ix86_gen_tls_global_dynamic_64 and
ix86_gen_tls_local_dynamic_base_64.

* config/i386/i386.md (@pro_epilogue_adjust_stack_add_<mode>)
Rename from pro_epilogue_adjust_stack_<mode>_add.
(@pro_epilogue_adjust_stack_sub_<mode>)
Rename from pro_epilogue_adjust_stack_<mode>_sub.
(@allocate_stack_worker_probe_<mode>):
Rename from allocate_stack_worker_probe_<mode>.
(allocate_stack): Use gen_allocate_stack_worker_probe.
(probe_stack): Use gen_probe_stack_1.
(@probe_stack_1_<mode>): Rename from probe_stack_<mode>.
(@adjust_stack_and_probe_<mode>): Rename from
adjust_stack_and_probe<mode>.
(@probe_stack_range_<mode>): Rename from probe_stack_range<mode>.
(stack_protect_set): Use gen_stack_protect_set_1.
(@stack_protect_set_1_<mode>): Rename from stack_protect_set_<mode>.
(stack_protect_test): Use gen_stack_protect_test_1.
(@stack_protect_test_1_<mode>): Rename from stack_protect_test_<mode>.
* config/i386/i386.c (*ix86_gen_allocate_stack_worker):
Remove indirect function.
(*ix86_gen_adjust_stack_and_probe): Ditto.
(*ix86_gen_probe_stack_range): Ditto.
(pro_epilogue_adjust_stack): Use gen_pro_epilogue_adjust_stack_add
instead of gen_pro_epilogue_adjust_stack_{si,di}_add.
(ix86_adjust_stack_and_probe_stack_clash): Use
gen_adjust_stack_and_probe instead of ix86_gen_adjust_stack_and_probe.
(ix86_adjust_stack_and_probe): Ditto.
(ix86_emit_probe_stack_range): Use gen_probe_stack_range instead
of ix86_gen_probe_stack_range.
(ix86_expand_prologue):  Use gen_pro_epilogue_adjust_stack_sub
instead of gen_pro_epilogue_adjust_stack_{si,di}_sub.
* config/i386/x86-tune-sched.c (ix86_macro_fusion_pair_p):
Include insn-opinit.h.  Use code_for_stack_protect_test_1 instead of
CODE_FOR_stack_protect_test_{si,di}.
* config/i386/i386-options.c (ix86_option_override_internal):
Do not initialize ix86_gen_allocate_stack_worker,
ix86_gen_adjust_stack_and_probe and ix86_gen_probe_stack_range.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271636 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * doc/xml/manual/appendix_contributing.xml: Update pointer to
gerald [Sun, 26 May 2019 19:46:09 +0000 (19:46 +0000)] 
* doc/xml/manual/appendix_contributing.xml: Update pointer to
C++ standard at ansi.org.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271635 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agodarwin, x86, testsuite - Amend three PIE tests,
iains [Sun, 26 May 2019 19:35:14 +0000 (19:35 +0000)] 
darwin, x86, testsuite - Amend three PIE tests,

Darwin requires PIC code in order to support PIE, amend the test scan-asms
to match this.

2019-05-26  Iain Sandoe  <iain@sandoe.co.uk>

* gcc.target/i386/pr39013-1.c: Adjust scan-asms for PIE to
account for PIC code on Darwin.
* gcc.target/i386/pr39013-2.c: Likewise.
* gcc.target/i386/pr64317.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271634 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * doc/invoke.texi (Link Options): Many editorial changes around
gerald [Sun, 26 May 2019 17:33:52 +0000 (17:33 +0000)] 
* doc/invoke.texi (Link Options): Many editorial changes around
-flinker-output.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271633 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago * config/pa/linux-unwind.h (pa32_fallback_frame_state): Add cast.
danglin [Sun, 26 May 2019 15:16:50 +0000 (15:16 +0000)] 
* config/pa/linux-unwind.h (pa32_fallback_frame_state): Add cast.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271631 138bc75d-0d04-0410-961f-82ee72b054a4

5 years ago2019-05-26 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 26 May 2019 14:02:51 +0000 (14:02 +0000)] 
2019-05-26  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/90539
* trans-types.c (get_formal_from_actual_arglist): Set rank
and lower bound for assumed size arguments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271630 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoAdded ChangeLog entry for last commit.
ro [Sun, 26 May 2019 09:23:52 +0000 (09:23 +0000)] 
Added ChangeLog entry for last commit.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271629 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoRemove Solaris 10-only note about -mvect8-ret-in-mem
ro [Sun, 26 May 2019 09:21:40 +0000 (09:21 +0000)] 
Remove Solaris 10-only note about -mvect8-ret-in-mem

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271628 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agoDaily bump.
gccadmin [Sun, 26 May 2019 00:16:15 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271627 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agodarwin, x86, testsuite - Amend popcnt match string for Darwin.
iains [Sat, 25 May 2019 19:46:53 +0000 (19:46 +0000)] 
darwin, x86, testsuite - Amend popcnt match string for Darwin.

Darwin uses a different spelling for popcnt (popcnt instead of popcntw).
Check for this in the test.

2019-05-25  Iain Sandoe  <iain@sandoe.co.uk>

* gcc.target/i386/pr59874-3.c: Use the spelling of popcnt
expected for Darwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271623 138bc75d-0d04-0410-961f-82ee72b054a4

5 years agodarwin, x86, testsuite - Check for an expected error on Darwin.
iains [Sat, 25 May 2019 19:42:05 +0000 (19:42 +0000)] 
darwin, x86, testsuite - Check for an expected error on Darwin.

The test requests an alignment which exceeds the maximum object
file aligment for Darwin, rather than skipping it - test that we
see the expected error.

2019-05-25  Iain Sandoe  <iain@sandoe.co.uk>

* gcc.target/i386/pr89261.c: Test that the alignment required
by the test correctly produces the expected error on Darwin.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@271622 138bc75d-0d04-0410-961f-82ee72b054a4