[PATCH] phiopt: Fix up two_value_replacement BOOLEAN_TYPE handling for Ada [PR98188]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
Hi! For Ada with LTO, boolean_{false,true}_node can be 1-bit precision boolean, while TREE_TYPE (lhs) can be 8-bit precision boolean and thus we can end up with wide_int mismatches. The following patch fixes it by using TYPE_{MIN,MAX}_VALUE instead. Bootstrapped/regtested on x86_64-linux and

Re: [PATCH] fold-const: Fix up native_encode_initializer missing field handling [PR98193]

2020-12-08 Thread Richard Biener
On Wed, 9 Dec 2020, Jakub Jelinek wrote: > Hi! > > When native_encode_initializer is called with non-NULL mask (i.e. ATM > bit_cast only), it checks if the current index in the CONSTRUCTOR (if any) > is the next initializable FIELD_DECL, and if not, decrements cnt and > performs the iteration

[PATCH] fold-const: Fix up native_encode_initializer missing field handling [PR98193]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
Hi! When native_encode_initializer is called with non-NULL mask (i.e. ATM bit_cast only), it checks if the current index in the CONSTRUCTOR (if any) is the next initializable FIELD_DECL, and if not, decrements cnt and performs the iteration with that FIELD_DECL as field and val of zero (so that

Re: [PATCH] IBM Z: Build autovec-*-signaling-eq.c tests with exceptions

2020-12-08 Thread Andreas Krebbel via Gcc-patches
On 12/3/20 2:22 AM, Ilya Leoshkevich wrote: > According to > https://gcc.gnu.org/pipermail/gcc/2020-November/234344.html, GCC is > allowed to perform optimizations that remove floating point traps, > since they do not affect the modeled control flow. This interferes with > two signaling

Re: [PATCH] c++: Fix printing of decltype(nullptr) [PR97517]

2020-12-08 Thread Jason Merrill via Gcc-patches
On 12/8/20 5:53 PM, Marek Polacek wrote: The C++ printer doesn't handle NULLPTR_TYPE, so we issue the ugly "'nullptr_type' not supported by...". Since NULLPTR_TYPE is decltype(nullptr), it seemed reasonable to handle it where we handle DECLTYPE_TYPE, that is, in the simple-type-specifier

[pushed] c++: Avoid [[nodiscard]] warning in requires-expr [PR98019]

2020-12-08 Thread Jason Merrill via Gcc-patches
If we aren't really evaluating the expression, it doesn't matter that the return value is discarded. Tested x86_64-pc-linux-gnu, applying to trunk. gcc/cp/ChangeLog: PR c++/98019 * cvt.c (maybe_warn_nodiscard): Check c_inhibit_evaluation_warnings. gcc/testsuite/ChangeLog:

Re: [PATCH] c++: Don't require accessible dtors for some forms of new [PR59238]

2020-12-08 Thread Jason Merrill via Gcc-patches
On 12/8/20 5:57 PM, Jakub Jelinek wrote: On Tue, Dec 08, 2020 at 05:34:13PM -0500, Jason Merrill wrote: On 12/8/20 4:23 AM, Jakub Jelinek wrote: The earlier cases in build_new_1 already use | tf_no_cleanup, these are cases where the type isn't type_build_ctor_call nor explicit_value_init_p. It

Re: [r11-5391 Regression] FAIL: gcc.target/i386/avx512vl-vxorpd-2.c execution test on Linux/x86_64

2020-12-08 Thread Hongtao Liu via Gcc-patches
On Tue, Dec 8, 2020 at 6:23 PM Jakub Jelinek wrote: > > On Mon, Nov 30, 2020 at 06:16:06PM +0800, Hongtao Liu via Gcc-patches wrote: > > Add no strict aliasing to function CALC, since there are > > > > "long long tmp = (*(long long *) [i]) ^ (*(long long *) [i]);" > > in function CALC. > > > > >

Re: [PATCH v4 1/2] asan: specify alignment for LASANPC labels

2020-12-08 Thread Ilya Leoshkevich via Gcc-patches
On Thu, 2020-07-09 at 14:07 +0200, Ilya Leoshkevich wrote: > On Wed, 2020-07-01 at 21:48 +0200, Ilya Leoshkevich wrote: > > On Wed, 2020-07-01 at 11:57 -0600, Jeff Law wrote: > > > On Wed, 2020-07-01 at 14:29 +0200, Ilya Leoshkevich via Gcc- > > > patches > > > wrote: > > > > gcc/ChangeLog: > > >

[committed] testsuite: Fix up testcase for ia32 [PR98191]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
Hi! This new test fails on i686-linux, due to -Wpsabi warnings. Fixed the usual way, tested on x86_64-linux -m32,-m64,-m32/-mno-sse, committed to trunk as obvious. 2020-12-09 Jakub Jelinek PR tree-optimization/98191 * gcc.dg/torture/pr98191.c: Add dg-additional-options with

Re: [PATCH v5] Practical Improvement to libgcc Complex Divide

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Tue, Dec 08, 2020 at 10:32:33PM +, Patrick McGehearty via Gcc-patches wrote: > 2020-12-08 Patrick McGehearty > > * gcc/c-family/c-cppbuiltin.c - Add supporting macros for new complex divide. > * libgcc2.c (__divsc3, __divdc3, __divxc3, __divtc3): Improve complex divide. > *

[PATCH] Correct -fdump-go-spec's handling of incomplete types

2020-12-08 Thread Nikhil Benesch via Gcc-patches
This patch corrects -fdump-go-spec's handling of incomplete types. To my knowledge the issue fixed here has not been previously reported. It was exposed by an in-progress port of gccgo to FreeBSD. Given the following C code struct s_fwd v_fwd; struct s_fwd { }; -fdump-go-spec

Re: [PATCH] c++: Don't require accessible dtors for some forms of new [PR59238]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Tue, Dec 08, 2020 at 05:34:13PM -0500, Jason Merrill wrote: > On 12/8/20 4:23 AM, Jakub Jelinek wrote: > > The earlier cases in build_new_1 already use | tf_no_cleanup, these are > > cases where the type isn't type_build_ctor_call nor explicit_value_init_p. > > It is true that often one can't

[PATCH] c++: Fix printing of decltype(nullptr) [PR97517]

2020-12-08 Thread Marek Polacek via Gcc-patches
The C++ printer doesn't handle NULLPTR_TYPE, so we issue the ugly "'nullptr_type' not supported by...". Since NULLPTR_TYPE is decltype(nullptr), it seemed reasonable to handle it where we handle DECLTYPE_TYPE, that is, in the simple-type-specifier handler. Bootstrapped/regtested on

Re: [PATCH] c++: Don't require accessible dtors for some forms of new [PR59238]

2020-12-08 Thread Jason Merrill via Gcc-patches
On 12/8/20 4:23 AM, Jakub Jelinek wrote: Hi! The earlier cases in build_new_1 already use | tf_no_cleanup, these are cases where the type isn't type_build_ctor_call nor explicit_value_init_p. It is true that often one can't delete these (unless e.g. the dtor would be private or protected and

[PATCH v5] Practical Improvement to libgcc Complex Divide

2020-12-08 Thread Patrick McGehearty via Gcc-patches
Summary of Purpose The following patch to libgcc/libgcc2.c __divdc3 provides an opportunity to gain important improvements to the quality of answers for the default complex divide routine (half, float, double, extended, long double precisions) when dealing with very large or very small exponents.

Re: [PATCH] Practical Improvement to libgcc Complex Divide

2020-12-08 Thread Patrick McGehearty via Gcc-patches
It took some work, but I think I've responded to all the issues raised here. Patch V5 coming right after this mail. On 11/16/2020 8:34 PM, Joseph Myers wrote: On Tue, 8 Sep 2020, Patrick McGehearty via Gcc-patches wrote: This project started with an investigation related to

libgo patch committed: Update to Go 1.15.6 release

2020-12-08 Thread Ian Lance Taylor via Gcc-patches
This patch updates libgo to the Go 1.15.6 release. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian 7a75590577dd3da6ab5091097cc9b80f02615360 diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 619f1c001f0..dc2682d95d1 100644 ---

Re: [PATCH] c++: ICE with -fsanitize=vptr and constexpr dynamic_cast [PR98103]

2020-12-08 Thread Jason Merrill via Gcc-patches
On 12/4/20 10:40 PM, Marek Polacek wrote: On Wed, Dec 02, 2020 at 09:01:48PM -0500, Jason Merrill wrote: On 12/2/20 6:18 PM, Marek Polacek wrote: -fsanitize=vptr initializes all vtable pointers to null so that it can catch invalid calls; see cp_ubsan_maybe_initialize_vtbl_ptrs. That means

[PATCH, rs6000] Update "size" attribute for Power10

2020-12-08 Thread Pat Haugen via Gcc-patches
Update size attribute for Power10. This patch was broken out from my larger patch to update various attributes for Power10, in order to make the review process hopefully easier. This patch only updates the size attribute for various new instructions. There were no changes requested to this

Re: [PATCH] correct -Wmismatched-new-delete (PR 98160, 98166)

2020-12-08 Thread Martin Sebor via Gcc-patches
On 12/8/20 1:46 PM, Martin Sebor wrote: PR 98160 reports an ICE in pretty printer code called from the newly added -Wmismatched-new-delete.  The ICE is just a simple oversight, but much more interesting is the warning issued for the test case. It highlights an issue I didn't consider in the

RE: [PATCH v2 13/16]Arm: Add support for auto-vectorization using HF mode.

2020-12-08 Thread Tamar Christina via Gcc-patches
ping > -Original Message- > From: Gcc-patches On Behalf Of Tamar > Christina > Sent: Friday, September 25, 2020 3:31 PM > To: gcc-patches@gcc.gnu.org > Cc: Richard Earnshaw ; nd ; > Ramana Radhakrishnan > Subject: [PATCH v2 13/16]Arm: Add support for auto-vectorization using HF > mode.

Re: [pushed] c++: Fix defaulted <=> fallback to < and == [PR96299]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Tue, Dec 08, 2020 at 03:05:09PM -0500, Jason Merrill via Gcc-patches wrote: > I thought I had implemented P1186R3, but apparently I didn't read it closely > enough to understand the point of the paper, namely that for a defaulted > operator<=>, if a member type doesn't have a viable

[PATCH] correct -Wmismatched-new-delete (PR 98160, 98166)

2020-12-08 Thread Martin Sebor via Gcc-patches
PR 98160 reports an ICE in pretty printer code called from the newly added -Wmismatched-new-delete. The ICE is just a simple oversight, but much more interesting is the warning issued for the test case. It highlights an issue I didn't consider in the initial implementation: that inlining one of

[PATCH][pushed] contrib: modernize filter-clang-warnings.py

2020-12-08 Thread Martin Liška
contrib/ChangeLog: * filter-clang-warnings.py: Modernize and filter 2 more patterns. --- contrib/filter-clang-warnings.py | 41 +++- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/contrib/filter-clang-warnings.py

c++: Originating and instantiating module

2020-12-08 Thread Nathan Sidwell
With modules streamed entities have two new properties -- the module that declares them and the module that instantiates them. Here 'instantiate' applies to more than just templates -- for instance an implicit member fn. These may well be the same module. This adds the calls to places that

[pushed] c++: Fix defaulted <=> fallback to < and == [PR96299]

2020-12-08 Thread Jason Merrill via Gcc-patches
I thought I had implemented P1186R3, but apparently I didn't read it closely enough to understand the point of the paper, namely that for a defaulted operator<=>, if a member type doesn't have a viable operator<=>, we will use its operator< and operator== if the defaulted operator has an specific

[pushed] c++: Distinguish ambiguity from no valid candidate

2020-12-08 Thread Jason Merrill via Gcc-patches
Several recent C++ features are specified to try overload resolution, and if no viable candidate is found, do something else. But our error return doesn't distinguish between that situation and finding multiple viable candidates that end up being ambiguous. We're already trying to separately

Re: How to traverse all the local variables that declared in the current routine?

2020-12-08 Thread Qing Zhao via Gcc-patches
> On Dec 8, 2020, at 1:40 AM, Richard Biener wrote: > > On Mon, Dec 7, 2020 at 5:20 PM Qing Zhao > wrote: >> >> >> >> On Dec 7, 2020, at 1:12 AM, Richard Biener >> wrote: >> >> On Fri, Dec 4, 2020 at 5:19 PM Qing Zhao wrote: >> >> >> >> >> On Dec 4,

Re: [PATCH] Avoid atomic for guard acquire when that is expensive

2020-12-08 Thread Jason Merrill via Gcc-patches
On 12/7/20 11:17 AM, Bernd Edlinger wrote: On 12/7/20 4:04 PM, Jason Merrill wrote: On 12/5/20 7:37 AM, Bernd Edlinger wrote: On 12/2/20 7:57 PM, Jason Merrill wrote: On 12/1/20 1:28 PM, Bernd Edlinger wrote: +  tree type = targetm.cxx.guard_mask_bit () +  ? TREE_TYPE

[r11-5839 Regression] FAIL: gcc.target/i386/pr78102.c scan-assembler-times pcmpeqq 3 on Linux/x86_64

2020-12-08 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, 3a6e3ad38a17a03ee0139b49a0946e7b9ded1eb1 is the first bad commit commit 3a6e3ad38a17a03ee0139b49a0946e7b9ded1eb1 Author: Prathamesh Kulkarni Date: Tue Dec 8 14:30:04 2020 +0530 gimple-isel: Fold x CMP y ? -1 : 0 to x CMP y [PR97872] caused FAIL:

Re: [PATCH] Remove misleading debug line entries

2020-12-08 Thread Bernd Edlinger
On 12/8/20 11:35 AM, Richard Biener wrote: > > + { > + /* Remove a nonbind marker when the outer scope of the > + inline function is completely removed. */ > + if (gimple_debug_nonbind_marker_p (stmt) > + && BLOCK_ABSTRACT_ORIGIN (b)) > +

c++: template and clone fns for modules

2020-12-08 Thread Nathan Sidwell
We need to expose build_cdtor_clones, it fortunately has the desired API -- gosh, how did that happen? :) The template machinery will need to cache path-of-instantiation information, so add two more fields to the tinst_level struct. I also had to adjust the match_mergeable_specialization API

Re: [PATCH 0/6] Add missing calls to `onlyjump_p'

2020-12-08 Thread Maciej W. Rozycki
On Thu, 3 Dec 2020, Jeff Law wrote: > > Note that I have included unrelated though contextually connected 6/6 as > > an RFC to verify whether this potential anomaly I have spotted has been > > intentional. I'll be happy to drop it if that is the case. The remaining > > changes are I believe

Raw tree accessors

2020-12-08 Thread Nathan Sidwell
Unchanged from the original posting Here are the couple of raw accessors I make use of in the module streaming. gcc/ * tree.h (DECL_ALIGN_RAW): New. (DECL_ALIGN): Use it. (DECL_WARN_IF_NOT_ALIGN_RAW): New. (DECL_WARN_IF_NOT_ALIGN): Use it.

Re: [PATCH 0/6] Add missing calls to `onlyjump_p'

2020-12-08 Thread Maciej W. Rozycki
On Thu, 3 Dec 2020, Maciej W. Rozycki wrote: > These changes have been successfully bootstrapped and regression-tested > with the `powerpc64le-linux-gnu' and `x86_64-linux-gnu' native systems; > verification with the `vax-netbsdelf' target using `powerpc64le-linux-gnu' > host has been

Go patch committed: Use correct location for iota errors

2020-12-08 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend uses the correct location for errors involving iota in a constant expression. We also check for a valid array length when reducing len or cap of an array to a constant value. This is for https://golang.org/issue/8183. Bootstrapped and ran Go testsuite on

libgcc patch committed: Block signals when release split-stack memory

2020-12-08 Thread Ian Lance Taylor via Gcc-patches
This patch to libgcc blocks signals when releasing split-stack memory due to a thread exiting. Without this, if a signal arrives, the signal handler may try to split the stack itself, which won't work as the data structures won't be in a stable state. We just leave signals blocked while

Re: [Patch] OpenMP: C/C++ parse 'omp allocate'

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Mon, Nov 23, 2020 at 03:50:33PM +0100, Tobias Burnus wrote: > Given that (at least for C/C++) there is some initial support for > OpenMP 5.0's allocators, it is likely that users will try it. Sadly at least the current implementation doesn't offer much benefits; I meant to add e.g. HBM support

Re: [PATCH] nvptx: Cache stacks block for OpenMP kernel launch

2020-12-08 Thread Alexander Monakov via Gcc-patches
On Tue, 8 Dec 2020, Julian Brown wrote: > Ping? This has addressed my concerns, thanks. Alexander > On Fri, 13 Nov 2020 20:54:54 + > Julian Brown wrote: > > > Hi Alexander, > > > > Thanks for the review! Comments below. > > > > On Tue, 10 Nov 2020 00:32:36 +0300 > > Alexander Monakov

c++: Named module global initializers

2020-12-08 Thread Nathan Sidwell
C++ 20 modules adds some new rules about when the global initializers of imported modules run. They must run no later than before any initializers in the importer that appear after the import. To provide this, each named module emits an idempotent global initializer that calls the global

Re: Nested declare target support

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Fri, Nov 20, 2020 at 04:41:15PM +, Kwok Cheung Yeung wrote: > Hello > > > New OpenMP 5.0 features that won't be available in GCC 9, are planned for > > GCC 10 > > or later versions as time permits: > > > ... > > - nested declare target support > > You said in an email two years ago that

Re: [PATCH] openmp: Implicit 'declare target' for C++ static initializers

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Thu, Nov 19, 2020 at 06:07:28PM +, Kwok Cheung Yeung wrote: > Even without this patch, G++ currently accepts something like Sorry for the delay. > int foo() { return 1; } > int x = foo(); > #pragma omp declare target to(x) > > but will not generate the device-side initializer for x, even

Re: [PATCH] if-to-switch: fix matching of negative conditions

2020-12-08 Thread Richard Biener via Gcc-patches
On December 8, 2020 2:35:35 PM GMT+01:00, "Martin Liška" wrote: >We must be careful which edge we follow for conditions >of a negative form (index != 2). > >Patch can bootstrap on x86_64-linux-gnu and survives regression tests. > >Ready to be installed? Ok. Richard. >Thanks, >Martin >

Re: [PATCH, powerpc] testsuite update tests for powerpc power10 target codegen.

2020-12-08 Thread will schmidt via Gcc-patches
On Tue, 2020-12-08 at 20:20 +1030, Alan Modra wrote: > On Mon, Dec 07, 2020 at 05:49:05PM -0600, will schmidt via Gcc- > patches wrote: > > [PATCH, powerpc] testsuite update tests for powerpc power10 target > > codegen. > > Appears to duplicate work I did earlier, >

Re: [PATCH 00/31] VAX: Bring the port up to date (yes, MODE_CC conversion is included)

2020-12-08 Thread Martin Husemann
On Tue, Dec 08, 2020 at 02:38:59PM +, Maciej W. Rozycki wrote: > Here's the full list of math functions that the `configure' script in > libgfortran reports as missing: > > checking for acosl... no > checking for acoshf... no [..] > Except for the Bessel functions these are a part of ISO C;

Re: [PATCH 00/31] VAX: Bring the port up to date (yes, MODE_CC conversion is included)

2020-12-08 Thread Maciej W. Rozycki
On Thu, 26 Nov 2020, Martin Husemann wrote: > > The VAX/NetBSD port however does use hardware FP in their libm as far as > > I can tell, so I guess it would be reasonable for libgfortran to do so as > > well. I haven't checked how correct their implementation actually is, but > > barring

Re: c++: Add module includes

2020-12-08 Thread Nathan Sidwell
On 12/8/20 8:01 AM, Nathan Sidwell wrote: This adds MODULE_VERSION to the makefile, so it's generated from the date of the module.cc file in development.  Also adds the include files to module.cc It broke :( c++: Fix MODULE_VERSION breakage Adding includes to module.cc triggered the kind

c++: Mangling for modules

2020-12-08 Thread Nathan Sidwell
This is the mangling changes for modules. These were developed in collaboration with clang, which also implemements the same ABI (or plans to, I do not think the global init is in clang). The global init mangling is captured in https://github.com/itanium-cxx-abi/cxx-abi/issues/99

[PATCH][GCC] arm: Add support for Cortex-A78C

2020-12-08 Thread Przemyslaw Wirkus via Gcc-patches
This patch adds support for -mcpu=cortex-a78c command line option. For more information about this processor, see [0]: [0] https://developer.arm.com/ip-products/processors/cortex-a/cortex-a78c OK from master ? gcc/ChangeLog: * config/arm/arm-cpus.in: Add Cortex-A78C core. *

[PATCH][GCC] aarch64: Add support for Cortex-A78C

2020-12-08 Thread Przemyslaw Wirkus via Gcc-patches
This patch adds support for -mcpu=cortex-a78c command line option. For more information about this processor, see [0]: [0] https://developer.arm.com/ip-products/processors/cortex-a/cortex-a78c OK for master ? gcc/ChangeLog: * config/aarch64/aarch64-cores.def (AARCH64_CORE): Add

RE: [PATCH 1/5] arm: Auto-vectorization for MVE: vand

2020-12-08 Thread Kyrylo Tkachov via Gcc-patches
> -Original Message- > From: Christophe Lyon > Sent: 08 December 2020 13:59 > To: Kyrylo Tkachov > Cc: gcc-patches@gcc.gnu.org > Subject: Re: [PATCH 1/5] arm: Auto-vectorization for MVE: vand > > On Tue, 8 Dec 2020 at 14:19, Kyrylo Tkachov > wrote: > > > > Hi Christophe > > > > >

Re: [PATCH 1/5] arm: Auto-vectorization for MVE: vand

2020-12-08 Thread Christophe Lyon via Gcc-patches
On Tue, 8 Dec 2020 at 14:19, Kyrylo Tkachov wrote: > > Hi Christophe > > > -Original Message- > > From: Gcc-patches On Behalf Of > > Christophe Lyon via Gcc-patches > > Sent: 08 December 2020 13:06 > > To: gcc-patches@gcc.gnu.org > > Subject: [PATCH 1/5] arm: Auto-vectorization for MVE:

RFC: ARM MVE and Neon auto-vectorization

2020-12-08 Thread Christophe Lyon via Gcc-patches
Hi, I've been working for a while on enabling auto-vectorization for ARM MVE, and I find it a bit awkward to keep things common with Neon as much as possible. I've just sent a few patches for logical operators (vand/vorr/veor/vbic), and I have a few more WIP patches where I struggle to avoid

[committed] libstdc++: Adjust whitespace in documentation

2020-12-08 Thread Jonathan Wakely via Gcc-patches
libstdc++-v3/ChangeLog: * doc/xml/manual/appendix_contributing.xml: Use consistent indentation. * doc/html/manual/source_code_style.html: Regenerate. Committed to trunk. commit edbbf7363cff62fc7ff536b5fa64e39f5a4d6496 Author: Jonathan Wakely Date: Tue Dec 8 13:35:07

[PATCH] if-to-switch: fix matching of negative conditions

2020-12-08 Thread Martin Liška
We must be careful which edge we follow for conditions of a negative form (index != 2). Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be installed? Thanks, Martin gcc/ChangeLog: PR tree-optimization/98182 * gimple-if-to-switch.cc

RE: [PATCH 1/5] arm: Auto-vectorization for MVE: vand

2020-12-08 Thread Kyrylo Tkachov via Gcc-patches
Hi Christophe > -Original Message- > From: Gcc-patches On Behalf Of > Christophe Lyon via Gcc-patches > Sent: 08 December 2020 13:06 > To: gcc-patches@gcc.gnu.org > Subject: [PATCH 1/5] arm: Auto-vectorization for MVE: vand > > This patch enables MVE vandq instructions for

Re: [wwwdocs] Document libstdc++ changes in GCC 11

2020-12-08 Thread Jonathan Wakely via Gcc-patches
On 08/12/20 13:07 +, Jonathan Wakely wrote: Also add porting-to notes about tr1::bind. And the traditional follow-up patch with markup fixes. Pushed to wwwdocs. commit 38b28b4e95d8331d28e70a0272618135d5f69c79 Author: Jonathan Wakely Date: Tue Dec 8 13:15:13 2020 + Fix markup

Re: [PATCH] gcc: handle double quotes in symbol name during stabstrings generation

2020-12-08 Thread CHIGOT, CLEMENT via Gcc-patches
Hi Ian, Any news about this bug ? It's not urgent even if it's breaking gcc builds with Go language, but I just want to know if you need any inputs/help from me. Thanks, Clément From: CHIGOT, CLEMENT Sent: Wednesday, December 2, 2020 5:14 PM To: Ian Lance

[wwwdocs] Document libstdc++ changes in GCC 11

2020-12-08 Thread Jonathan Wakely via Gcc-patches
Also add porting-to notes about tr1::bind. Pushed to wwwdocs. commit 927e80dc01f505a625f1fcc4e1ca38aeb9f88e67 Author: Jonathan Wakely Date: Tue Dec 8 13:05:42 2020 + Document libstdc++ changes in GCC 11 Also add porting-to notes about tr1::bind. diff --git

c++: module directive FSM

2020-12-08 Thread Nathan Sidwell
As mentioned in the preprocessor patches, there's a new kind of preprocessor directive for modules, and it interacts with the compiler-proper, as that has to stream in header-unit macro information (when the directive is an import that names a header-unit). This is that machinery. It's an FSM

[PATCH 2/5] arm: Auto-vectorization for MVE: vorr

2020-12-08 Thread Christophe Lyon via Gcc-patches
This patch enables MVE vorrq instructions for auto-vectorization. MVE vorrq insns in mve.md are modified to use ior instead of unspec expression to support ior3. The ior3 expander is added to vec-common.md 2020-12-03 Christophe Lyon gcc/ * config/arm/iterators.md (supf):

[PATCH 5/5] arm: Auto-vectorization for MVE: vmvn

2020-12-08 Thread Christophe Lyon via Gcc-patches
This patch enables MVE vmvnq instructions for auto-vectorization. MVE vmvnq insns in mve.md are modified to use 'not' instead of unspec expression to support one_cmpl2. The one_cmpl2 expander is added to vec-common.md. 2020-12-03 Christophe Lyon gcc/ *

[PATCH 4/5] arm: Auto-vectorization for MVE: vbic

2020-12-08 Thread Christophe Lyon via Gcc-patches
This patch enables MVE vbic instructions for auto-vectorization. MVE vbicq insns in mve.md are modified to use 'and not' instead of unspec expression. 2020-12-03 Christophe Lyon gcc/ * config/arm/iterators.md (supf): Remove VBICQ_S and VBICQ_U. (VBICQ): Remove.

[PATCH 1/5] arm: Auto-vectorization for MVE: vand

2020-12-08 Thread Christophe Lyon via Gcc-patches
This patch enables MVE vandq instructions for auto-vectorization. MVE vandq insns in mve.md are modified to use 'and' instead of unspec expression to support and3. The and3 expander is added to vec-common.md 2020-12-03 Christophe Lyon gcc/ * config/arm/iterators.md (supf):

[PATCH 3/5] arm: Auto-vectorization for MVE: veor

2020-12-08 Thread Christophe Lyon via Gcc-patches
This patch enables MVE veorq instructions for auto-vectorization. MVE veorq insns in mve.md are modified to use xor instead of unspec expression to support xor3. The xor3 expander is added to vec-common.md 2020-12-04 Christophe Lyon gcc/ * config/arm/iterators.md (supf):

c++: Add module includes

2020-12-08 Thread Nathan Sidwell
This adds MODULE_VERSION to the makefile, so it's generated from the date of the module.cc file in development. Also adds the include files to module.cc gcc/cp/ * Make-lang.in (MODULE_VERSION): Define. * module.cc: Add includes. pushing to trunk -- Nathan Sidwell

V3 [PATCH 1/2] Switch to a new section if the SECTION_RETAIN bit doesn't match

2020-12-08 Thread H.J. Lu via Gcc-patches
When definitions marked with used attribute and unmarked definitions are placed in the section with the same name, switch to a new section if the SECTION_RETAIN bit doesn't match. gcc/ PR target/98146 * output.h (switch_to_section): Add a tree argument, default to

V3 [PATCH 2/2] Warn used and not used symbols in section with the same name

2020-12-08 Thread H.J. Lu via Gcc-patches
When SECTION_RETAIN is used, issue a warning when a symbol without used attribute and a symbol with used attribute are placed in the section with the same name, like int __attribute__((used,section(".data.foo"))) foo2 = 2; int __attribute__((section(".data.foo"))) foo1 = 1; since assembler will

V3 [PATCH 0/2] Switch to a new section if the SECTION_RETAIN bit doesn't match

2020-12-08 Thread H.J. Lu via Gcc-patches
When SECTION_RETAIN is used, definitions marked with used attribute and unmarked definitions are placed in a section with the same name. Instead of issue an error: [hjl@gnu-cfl-2 gcc]$ /usr/gcc-11.0.0-x32/bin/gcc -S c.c -fdiagnostics-plain-output c.c:2:49: error: ‘foo1’ causes a section type

[COMMITTED] testsuite: i386: Require avx512vpopcntdq in two tests

2020-12-08 Thread Rainer Orth
Two recent AVX512 tests FAIL on Solaris/x86 with /bin/as: FAIL: gcc.target/i386/avx512vpopcntdq-pr97770-2.c (test for excess errors) Excess errors: Assembler: avx512vpopcntdq-pr97770-2.c "/var/tmp//ccM4Gt1a.s", line 171 : Illegal mnemonic Near line: "vpopcntd(%eax),

[COMMITTED] testsuite: i386: Require ifunc support in gcc.target/i386/pr98100.c

2020-12-08 Thread Rainer Orth
The new gcc.target/i386/pr98100.c test FAILs on Solaris/x86: FAIL: gcc.target/i386/pr98100.c (test for excess errors) Excess errors: /vol/gcc/src/hg/master/local/gcc/testsuite/gcc.target/i386/pr98100.c:6:1: error: the call requires 'ifunc', which is not supported by this target Fixed as

Re: [Patch] Fortran: Add 'omp scan' support of OpenMP 5.0

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Tue, Dec 08, 2020 at 01:13:07PM +0100, Tobias Burnus wrote: > + if (list == OMP_LIST_REDUCTION) > + has_inscan = true; This looks weird, I would have expected if (list == OMP_LIST_REDUCTION_INSCAN) > @@ -6151,6 +6203,28 @@ gfc_resolve_omp_do_blocks (gfc_code *code,

[Patch] Fortran: Add 'omp scan' support of OpenMP 5.0

2020-12-08 Thread Tobias Burnus
In a previous patch, the 'inscan' reduction-clause modifier was added. This patch add the associated 'omp scan' for two reasons: First, to make it actually usable and, secondly, to avoid some corner cases where 'inscan' slips through without the required 'sorry' (as it can happen with the

[PATCH] tree-optimization/98192 - fix double free in SLP

2020-12-08 Thread Richard Biener
This makes sure to clear the vector pointer on release. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-12-08 Richard Biener PR tree-optimization/98192 * tree-vect-slp.c (vect_build_slp_instance): Get scalar_stmts by reference. ---

[PATCH] testsuite/95900 - fix gcc.dg/vect/bb-slp-pr95866.c target requirement

2020-12-08 Thread Richard Biener
We require a vector-by-scalar shift, there's no appropriate target selector so use SSE2 for now. Tested on x86_64-linux, pushed. 2020-12-08 Richard Biener PR testsuite/95900 * gcc.dg/vect/bb-slp-pr95866.c: Require sse2 for the BIT_FIELD_REF match. ---

Re: [PATCH][GCC10] arm: Fix unwanted fall-through in arm.c

2020-12-08 Thread Andrea Corallo via Gcc-patches
Kyrylo Tkachov writes: >> -Original Message- >> From: Andrea Corallo >> Sent: 02 December 2020 16:06 >> To: gcc-patches@gcc.gnu.org >> Cc: Kyrylo Tkachov ; Richard Earnshaw >> ; nd >> Subject: [PATCH][GCC10] arm: Fix unwanted fall-through in arm.c >> >> Hi all, >> >> this is to fix

RE: [PATCH][GCC10] arm: Fix unwanted fall-through in arm.c

2020-12-08 Thread Kyrylo Tkachov via Gcc-patches
> -Original Message- > From: Andrea Corallo > Sent: 02 December 2020 16:06 > To: gcc-patches@gcc.gnu.org > Cc: Kyrylo Tkachov ; Richard Earnshaw > ; nd > Subject: [PATCH][GCC10] arm: Fix unwanted fall-through in arm.c > > Hi all, > > this is to fix in GCC 10 the incomplete backport

Re: [PATCH] arm: Improve documentation for effective target 'arm_softfloat'

2020-12-08 Thread Andrea Corallo via Gcc-patches
Andrea Corallo via Gcc-patches writes: > Hi all, > > I'd like to submit the following patch to better specify the meaning > of the 'arm_softfloat' effective target. > > As I've recently discovered we can have cases where '-mfloat-abi=hard' > is used and the compiler correctly defines

Re: [PATCH V2] arm: [testsuite] fix lob tests for -mfloat-abi=hard

2020-12-08 Thread Andrea Corallo via Gcc-patches
Andrea Corallo via Gcc-patches writes: > Hi all, > > second version of this patch here fixing lob[2-5].c tests for hard float > abi targets implementing Kyrill's suggestions. > > Okay for trunk? > > Andrea Ping

Re: [PATCH][GCC10] arm: Fix unwanted fall-through in arm.c

2020-12-08 Thread Andrea Corallo via Gcc-patches
Andrea Corallo via Gcc-patches writes: > Andrea Corallo via Gcc-patches writes: > >> Hi all, >> >> this is to fix in GCC 10 the incomplete backport done by 1aabb312f of >> what at the time I fixed on master with dd019ef07. >> >> Regtested and bootstraped on arm-linux-gnueabihf. >> >> I guess

[ARM][PR66791] Replace builtins for vclt and vcgt intrinsics in arm_neon.h

2020-12-08 Thread Prathamesh Kulkarni via Gcc-patches
Hi, This patch replaces calls to __builtin_neon_vcgt* by < and > in vclt and vcgt intrinsics respectively, and removes entry to vcgt from arm_neon_builtins.def. OK to commit ? Thanks, Prathamesh vclt-2.diff Description: Binary data

Re: [PATCH] Remove misleading debug line entries

2020-12-08 Thread Richard Biener
On Mon, 7 Dec 2020, Bernd Edlinger wrote: > On 12/7/20 11:50 AM, Richard Biener wrote: > > The ipa-param-manipulation.c hunk is OK, please commit separately. > > > > done. > > > The tree-inline.c and cfgexpand.c changes are OK as well, for the > > tree-ssa-live.c change see below > > > > > >

Re: [r11-5391 Regression] FAIL: gcc.target/i386/avx512vl-vxorpd-2.c execution test on Linux/x86_64

2020-12-08 Thread Jakub Jelinek via Gcc-patches
On Mon, Nov 30, 2020 at 06:16:06PM +0800, Hongtao Liu via Gcc-patches wrote: > Add no strict aliasing to function CALC, since there are > > "long long tmp = (*(long long *) [i]) ^ (*(long long *) [i]);" > in function CALC. > > > modified gcc/testsuite/gcc.target/i386/avx512dq-vandnpd-2.c >

Re: [PATCH] i386: Fix up X87_ENABLE_{FLOAT, ARITH} in conditions [PR94440]

2020-12-08 Thread Uros Bizjak via Gcc-patches
On Tue, Dec 8, 2020 at 10:36 AM Jakub Jelinek wrote: > > Hi! > > The documentation says > For a named pattern, the condition may not depend on the data in > the insn being matched, but only the target-machine-type flags. > The i386 backend violates that by using flag_excess_precision

Re: [PR66791][ARM] Replace __builtin_neon_vneg* by - for vneg intrinsics

2020-12-08 Thread Prathamesh Kulkarni via Gcc-patches
On Thu, 3 Dec 2020 at 16:23, Prathamesh Kulkarni wrote: > > Hi, > This patch replaces calls to __builtin_neon_vneg* builtins by - > operator, for vneg intrinsics in arm_neon.h. > Cross-tested on arm*-*-*. > OK to commit ? This patch removes call to entry for vneg from arm_neon_builtins.def.

[committed] openmp: -fopenmp-simd fixes [PR98187]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
Hi! This patch fixes two bugs in the -fopenmp-simd support. One is that in C++ #pragma omp parallel master would actually create OMP_PARALLEL in the IL, which is a big no-no for -fopenmp-simd, we should be creating only the constructs -fopenmp-simd handles (mainly OMP_SIMD, OMP_LOOP which is

Re: [PATCH, powerpc] testsuite update tests for powerpc power10 target codegen.

2020-12-08 Thread Alan Modra via Gcc-patches
On Mon, Dec 07, 2020 at 05:49:05PM -0600, will schmidt via Gcc-patches wrote: > [PATCH, powerpc] testsuite update tests for powerpc power10 target codegen. Appears to duplicate work I did earlier, https://gcc.gnu.org/pipermail/gcc-patches/2020-October/557587.html Except I omitted

Re: [PR66791][ARM] Replace __builtin_neon_vcreate* for vcreate intrinsics

2020-12-08 Thread Prathamesh Kulkarni via Gcc-patches
On Fri, 4 Dec 2020 at 16:26, Prathamesh Kulkarni wrote: > > On Thu, 3 Dec 2020 at 16:50, Kyrylo Tkachov wrote: > > > > Hi Prathamesh, > > > > > -Original Message- > > > From: Prathamesh Kulkarni > > > Sent: 03 December 2020 10:50 > > > To: gcc Patches ; Kyrylo Tkachov > > > > > >

[PATCH] tree-optimization/97559 - fix sinking in irreducible regions

2020-12-08 Thread Richard Biener
This fixes sinking of loads when irreducible regions are involved and the heuristics to find stores on the path along the sink breaks down since that uses dominator queries. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-12-08 Richard Biener PR

[PATCH] tree-optimization/98191 - fix BIT_INSERT_EXPR sequence vectorization

2020-12-08 Thread Richard Biener
This adds a missing check. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-12-08 Richard Biener PR tree-optimization/98191 * tree-vect-slp.c (vect_slp_check_for_constructors): Do not follow a non-SSA def chain. * gcc.dg/torture/pr98191.c:

[PATCH] i386: Fix up X87_ENABLE_{FLOAT, ARITH} in conditions [PR94440]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
Hi! The documentation says For a named pattern, the condition may not depend on the data in the insn being matched, but only the target-machine-type flags. The i386 backend violates that by using flag_excess_precision and flag_unsafe_math_optimizations in the conditions too, which is

[PATCH] c++: Don't require accessible dtors for some forms of new [PR59238]

2020-12-08 Thread Jakub Jelinek via Gcc-patches
Hi! The earlier cases in build_new_1 already use | tf_no_cleanup, these are cases where the type isn't type_build_ctor_call nor explicit_value_init_p. It is true that often one can't delete these (unless e.g. the dtor would be private or protected and deletion done in some method), but diagnosing

Re: Help with PR97872

2020-12-08 Thread Prathamesh Kulkarni via Gcc-patches
On Mon, 7 Dec 2020 at 17:37, Hongtao Liu wrote: > > On Mon, Dec 7, 2020 at 7:11 PM Prathamesh Kulkarni > wrote: > > > > On Mon, 7 Dec 2020 at 16:15, Hongtao Liu wrote: > > > > > > On Mon, Dec 7, 2020 at 5:47 PM Richard Biener wrote: > > > > > > > > On Mon, 7 Dec 2020, Prathamesh Kulkarni

[PATCH] tree-optimization/98180 - fix BIT_INSERT_EXPR sequence vectorization

2020-12-08 Thread Richard Biener
This adds a missing check for the first inserted value. Bootstrapped / tested on x86_64-unknown-linux-gnu, pushed. 2020-12-08 Richard Biener PR tree-optimization/98180 * tree-vect-slp.c (vect_slp_check_for_constructors): Check the first inserted value has a def. ---