[PATCH v3] rs6000: Use direct move for char/short vector CTOR [PR96933]

2020-11-02 Thread Kewen.Lin via Gcc-patches
Hi David, Thanks for the review! > The patch looks fine to me, but I'll let Segher decide if it addresses > his requested changes. > > I'm trying to be stricter about the test cases. > > +++ b/gcc/testsuite/gcc.target/powerpc/pr96933-1.c > @@ -0,0 +1,14 @@ > +/* { dg-do compile { target { lp64

Re: [PATCH v3] pass: Run cleanup passes before SLP [PR96789]

2020-11-02 Thread Kewen.Lin via Gcc-patches
Hi Richard, Thanks again for your review! on 2020/11/2 下午6:23, Richard Sandiford wrote: > "Kewen.Lin" writes: >> diff --git a/gcc/function.c b/gcc/function.c >> index 2c8fa217f1f..3e92ee9c665 100644 >> --- a/gcc/function.c >> +++ b/gcc/function.c >> @@ -4841,6 +4841,8 @@ allocate_struct_function

[PATCH] handle conditionals in -Wstringop-overflow et al. (PR 92936)

2020-11-02 Thread Martin Sebor via Gcc-patches
The attached patch extends compute_objsize() to handle conditional expressions represented either as PHIs or MIN_EXPR and MAX_EXPR. To simplify the handling of the -Wstringop-overflow/-overread warnings the change factors this code out of tree-ssa-strlen.c and into inform_access() in builtins.c,

Re: PowerPC: Add __float128 conversions to/from Decimal

2020-11-02 Thread Joseph Myers
On Mon, 2 Nov 2020, Segher Boessenkool wrote: > > Also note that if you want to use printf as opposed to strfromf128 for > > IEEE binary128 you'll need to use __printfieee128 (the version that > > expects long double to be IEEE binary128) which was introduced in glibc > > 2.32, so that doesn't

Re: PowerPC: Update long double IEEE 128-bit tests.

2020-11-02 Thread Segher Boessenkool
Hi! On Thu, Oct 22, 2020 at 06:07:14PM -0400, Michael Meissner wrote: > This patch fixes 3 tests in the testsuite that fail if long double is set > to IEEE 128-bit. > * c-c++-common/dfp/convert-bfp-11.c: If long double is IEEE > 128-bit, skip the test. > --- a/gcc/testsuite/c-c++-com

Re: [PATCH] libstdc++: use lt_host_flags for libstdc++.la

2020-11-02 Thread Jonathan Yong via Gcc-patches
On 10/20/20 2:03 AM, Jonathan Yong wrote: On 9/16/20 1:16 PM, JonY wrote: For platforms like Mingw and Cygwin, cygwin refuses to generate the shared library without using -no-undefined. Attached patch makes sure the right flags are used, since libtool is already used to link libstdc++. Patch O

Re: [PATCH v2] libgcc: Expose the instruction pointer and stack pointer in SEH _Unwind_Backtrace

2020-11-02 Thread Jonathan Yong via Gcc-patches
On 9/8/20 12:21 PM, Martin Storsjö wrote: Previously, the SEH version of _Unwind_Backtrace did unwind the stack and call the provided callback function as intended, but there was little the caller could do within the callback to actually get any info about that particular level in the unwind. Se

Re: PowerPC: Map q built-ins to *l instead of *f128 if IEEE 128-bit long double.

2020-11-02 Thread Segher Boessenkool
Hi! On Thu, Oct 22, 2020 at 06:08:32PM -0400, Michael Meissner wrote: > If we map nanq to nanf128 when long double is IEEE, it seems to lose the > special signaling vs. non-signaling NAN support. Well, that is very confidence-inspiring. Please figure out what is actually going on? Why do the f1

Re: PowerPC: Add __float128 conversions to/from Decimal

2020-11-02 Thread Segher Boessenkool
Hi Joseph, On Thu, Oct 29, 2020 at 10:05:38PM +, Joseph Myers wrote: > On Thu, 29 Oct 2020, Segher Boessenkool wrote: > > > Doing these conversions accurately is nontrivial. Converting via strings > > > is the simple approach (i.e. the one that moves the complexity somewhere > > > else). T

Re: [PATCH] PowerPC: Don't assume all targets have GLIBC

2020-11-02 Thread Segher Boessenkool
On Fri, Oct 30, 2020 at 10:52:55PM -0400, Michael Meissner wrote: > On Fri, Oct 30, 2020 at 06:39:16PM -0500, Segher Boessenkool wrote: > > On Fri, Oct 30, 2020 at 06:50:30PM -0400, Michael Meissner wrote: > > > On Fri, Oct 30, 2020 at 03:54:06PM -0500, Segher Boessenkool wrote: > > > > But, time w

Re: [committed] patch to deal with insn scratches in global RA

2020-11-02 Thread Vladimir Makarov via Gcc-patches
On 2020-11-02 4:30 p.m., Vladimir Makarov via Gcc-patches wrote: On 2020-11-02 3:12 p.m., Christophe Lyon wrote: Hi, This patch causes ICEs on arm (eg arm-none-linux-gnueabi) gcc.c-torture/compile/sync-3.c   -O1  (internal compiler error) gcc.c-torture/compile/sync-3.c   -O2  (int

[committed] patch to fix arm sync-3.c failure after submitting patch to deal with scratches in IRA

2020-11-02 Thread Vladimir Makarov via Gcc-patches
After submitting the patch dealing with insn scratches in IRA, a report came that sync-3.c started to fail with x86_64-aarch64 cross-compiler.  The following patch fixes this problem.  The patch was successfully bootstrapped on x86-64. commit 885cbb4a0a677299de34d9e413818df5bb8272b1 Author: Vl

Re: V2 [PATCH] x86: Also require MMX for __builtin_ia32_maskmovq

2020-11-02 Thread H.J. Lu via Gcc-patches
On Mon, Nov 2, 2020 at 12:31 PM Uros Bizjak wrote: > > On Mon, Nov 2, 2020 at 9:29 PM Uros Bizjak wrote: > > > > On Mon, Nov 2, 2020 at 8:24 PM H.J. Lu wrote: > > > > > > MMX emulation with SEE is implemented at MMX intrinsic level, not at MMX > > > instruction level. _mm_maskmove_si64 intrinsi

Re: [committed] patch to deal with insn scratches in global RA

2020-11-02 Thread Vladimir Makarov via Gcc-patches
On 2020-11-02 3:12 p.m., Christophe Lyon wrote: Hi, This patch causes ICEs on arm (eg arm-none-linux-gnueabi) gcc.c-torture/compile/sync-3.c -O1 (internal compiler error) gcc.c-torture/compile/sync-3.c -O2 (internal compiler error) gcc.c-torture/compile/sync-3.c -O2 -fl

Re: [PATCH 2/2] [RS6000] REG_PARM_STACK_SPACE check V2

2020-11-02 Thread Segher Boessenkool
On Mon, Nov 02, 2020 at 08:19:08PM +1030, Alan Modra wrote: > On PowerPC we can tail call if the callee has less or equal > REG_PARM_STACK_SPACE than the caller, as demonstrated by the > testcase. So we should use > > /* If reg parm stack space increases, we cannot sibcall. */ > if (REG_PARM

Re: [PATCH] mixing of labels and code in C2X

2020-11-02 Thread Joseph Myers
On Sun, 1 Nov 2020, Uecker, Martin wrote: > @@ -5693,27 +5692,54 @@ c_parser_compound_statement_nostart (c_parser *parser) >     last_label = true; >     last_stmt = false; >     mark_valid_location_for_stdc_pragma (false); > -   c_parser_label (parser); > +   c_parser_label (p

Re: [PATCH 1/2] can_implement_as_sibling_call_p REG_PARM_STACK_SPACE check V2

2020-11-02 Thread Segher Boessenkool
Hi! On Mon, Nov 02, 2020 at 08:16:16PM +1030, Alan Modra wrote: > The no function change patch. > > This moves an #ifdef block of code from calls.c to > targetm.function_ok_for_sibcall. Only two targets, x86 and rs6000, > define REG_PARM_STACK_SPACE or OUTGOING_REG_PARM_STACK_SPACE macros > that

RE: [PATCH] rs6000, vector integer multiply/divide/modulo instructions

2020-11-02 Thread Carl Love via Gcc-patches
David: > > Hi, Carl > > I thought that vector.md was a transfer vector for the patterns and > instructions were defined in vsx.md. Why are the new insn patterns > defined in vector.md? I am a bit of a newbie here. I wasn't aware of any specific guide lines on the vector instructions. I put

[committed] fix order and typos in -Wstringop-overflow/-overread

2020-11-02 Thread Martin Sebor via Gcc-patches
The attached patch corrects a few minor typos in the description of the -Wstringop-overflow and -Wstringop-ovreread options. I've committed it in r11-4630. Martin commit 9e3c694afacf965293fe8b3b7b9a5022415e03c9 Author: Martin Sebor Date: Mon Nov 2 13:47:45 2020 -0700 Correct -Wstringop-o

Re: [PATCH] Add missing gnu-versioned-namespace symbols

2020-11-02 Thread François Dumont via Gcc-patches
On 02/11/20 3:17 pm, Jonathan Wakely wrote: On 01/11/20 20:48 +0100, François Dumont via Libstdc++ wrote: Several tests are failing because of those missing symbols. I understand why we need to export symbols relying in the versioned namespace but I don't understand why we need to do it for

Re: V2 [PATCH] x86: Also require MMX for __builtin_ia32_maskmovq

2020-11-02 Thread Uros Bizjak via Gcc-patches
On Mon, Nov 2, 2020 at 9:29 PM Uros Bizjak wrote: > > On Mon, Nov 2, 2020 at 8:24 PM H.J. Lu wrote: > > > > MMX emulation with SEE is implemented at MMX intrinsic level, not at MMX > > instruction level. _mm_maskmove_si64 intrinsic for "MASKMOVQ mm1, mm2" > > is emulated with __builtin_ia32_mask

Re: V2 [PATCH] x86: Also require MMX for __builtin_ia32_maskmovq

2020-11-02 Thread Uros Bizjak via Gcc-patches
On Mon, Nov 2, 2020 at 8:24 PM H.J. Lu wrote: > > MMX emulation with SEE is implemented at MMX intrinsic level, not at MMX > instruction level. _mm_maskmove_si64 intrinsic for "MASKMOVQ mm1, mm2" > is emulated with __builtin_ia32_maskmovdqu. Since SSE "MASKMOVQ mm1, mm2" > builtin function, __bu

Re: [PATCH] [PATCH] PR rtl-optimization/96791 Check precision of partial modes

2020-11-02 Thread Aaron Sawdey via Gcc-patches
Ping. So, this has sat for a while and it’s getting close to the end of stage1 now. I don’t see that we're any closer to a solution that allows us to use POImode without risking this ICE. I had to disable the use of VSX vector pair loads/stores in inline expansion of memcpy/memmove do avoid it.

Re: [committed] patch to deal with insn scratches in global RA

2020-11-02 Thread Christophe Lyon via Gcc-patches
On Fri, 30 Oct 2020 at 20:11, Vladimir Makarov via Gcc-patches wrote: > > The following patch implements taking insn scratch requirements into > account in global RA (IRA). Before the patch IRA simply ignored insn > scratches. Only LRA took the scratches into account and assigned hard > regist

Re: [PATCH][PR target/97532] Fix invalid address for special memory constraint.

2020-11-02 Thread Vladimir Makarov via Gcc-patches
On 2020-10-27 2:52 a.m., Hongtao Liu wrote: Hi: Sorry for Incomplete test for my last patch at https://gcc.gnu.org/pipermail/gcc-patches/2020-October/555948.html. This patch should fix invalid address introduced by special memory constraint. Bootstrap is ok, regression test is ok for

Re: [PATCH][PR target/97540] Don't extract memory from operand for normal memory constraint.

2020-11-02 Thread Vladimir Makarov via Gcc-patches
On 2020-10-27 2:53 a.m., Hongtao Liu wrote: Hi: For inline asm, there could be an operand like (not (mem:)), it's not a valid operand for normal memory constraint. Bootstrap is ok, regression test is ok for make check RUNTESTFLAGS="--target_board='unix{-m32,}'" gcc/ChangeLog PR

Re: [PATCH] Fix PR97205

2020-11-02 Thread Bernd Edlinger
On 11/2/20 3:07 PM, Richard Biener wrote: > On Mon, 2 Nov 2020, Bernd Edlinger wrote: > >> Hi, >> >> this makes sure that stack allocated SSA_NAMEs are >> at least MODE_ALIGNED. Also increase the MEM_ALIGN >> for the corresponding rtl objects. >> >> >> Tested on x86_64-pc-linux-gnu and arm-none-e

V2 [PATCH] x86: Also require MMX for __builtin_ia32_maskmovq

2020-11-02 Thread H.J. Lu via Gcc-patches
MMX emulation with SEE is implemented at MMX intrinsic level, not at MMX instruction level. _mm_maskmove_si64 intrinsic for "MASKMOVQ mm1, mm2" is emulated with __builtin_ia32_maskmovdqu. Since SSE "MASKMOVQ mm1, mm2" builtin function, __builtin_ia32_maskmovq, can't be emulated with XMM registers

[PATCH] c++: v2: Add __builtin_bit_cast to implement std::bit_cast [PR93121]

2020-11-02 Thread Jakub Jelinek via Gcc-patches
On Thu, Jul 30, 2020 at 10:16:46AM -0400, Jason Merrill via Gcc-patches wrote: > > The following patch adds __builtin_bit_cast builtin, similarly to > > clang or MSVC which implement std::bit_cast using such an builtin too. > > Great! Sorry for the long delay. The following patch implements what

Re: [PATCH] c++: Don't purge the satisfaction caches

2020-11-02 Thread Patrick Palka via Gcc-patches
On Mon, Nov 2, 2020 at 10:11 AM Jason Merrill wrote: > > On 11/2/20 9:03 AM, Patrick Palka wrote: > > On Tue, 27 Oct 2020, Patrick Palka wrote: > > > >> The adoption of P2104 means we can memoize the result of satisfaction > >> indefinitely and no longer have to clear the satisfaction caches on >

[PATCH] c++: Don't try to parse a function declaration as deduction guide [PR97663]

2020-11-02 Thread Jakub Jelinek via Gcc-patches
Hi! While these function declarations have NULL decl_specifiers->type, they have still type specifiers specified from which the default int in the return type is added, so we shouldn't try to parse those as deduction guides. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 20

[Patch] Fortran: Add !GCC$ attributes DEPRECATED

2020-11-02 Thread Tobias Burnus
This adds the Fortran equivalent to __attribute__((deprecated)), except that "deprecated(message)" is not supported and that only procedures + variables (and parameters) are supported and not types. The issue came up with OpenMP, cf. https://gcc.gnu.org/pipermail/gcc-patches/2020-October/557359.h

Re: [PATCH][AArch64] ACLE intrinsics: convert from BFloat16 to Float32

2020-11-02 Thread Richard Sandiford via Gcc-patches
Dennis Zhang writes: > Hi Richard, > > On 10/29/20 5:48 PM, Richard Sandiford wrote: >> Dennis Zhang writes: >>> diff --git a/gcc/config/aarch64/aarch64-simd-builtins.def >>> b/gcc/config/aarch64/aarch64-simd-builtins.def >>> index 5bc596dbffc..b68c3ca7f4b 100644 >>> --- a/gcc/config/aarch64/aar

Re: [PATCH][PR target/97540] Don't extract memory from operand for normal memory constraint.

2020-11-02 Thread Richard Sandiford via Gcc-patches
Hongtao Liu writes: > On Fri, Oct 30, 2020 at 1:00 AM Richard Sandiford > wrote: >> >> I guess my main objection is that we have a special memory constraint >> that isn't in fact matching a MEM (at least not directly). That seems >> odd and feels like it's going to come back to bite us. >> >> Fr

Re: [PATCH] libstdc++: Add c++2a

2020-11-02 Thread Thomas Rodgers via Gcc-patches
Testsed x86_64-pc-linux-gnu, committed to master. Jonathan Wakely writes: > On 02/11/20 08:10 -0800, Thomas Rodgers wrote: >>From: Thomas Rodgers >> >>IGNORE the previous patch. >> >>Changes implementation to use a private __mutex type as discussed on >>IRC. >> >>libstdc++/ChangeLog: >> l

c++: Fixup some vardecls and whitespace

2020-11-02 Thread Nathan Sidwell
Move some var decls to their initializers. Correct some whitespace. gcc/cp/ * decl.c (start_decl_1): Refactor declarations. Fixup some whitespace. (lookup_and_check_tag): Fixup some whitespace. pushing to trunk nathan -- Nathan Sidwell diff --git i/gcc/cp/decl

c++: refactor duplicate decls

2020-11-02 Thread Nathan Sidwell
A couple of paths in duplicate decls dealing with templates and builtins were overly complicated. Fixing thusly. gcc/cp/ * decl.c (duplicate_decls): Refactor some template & builtin handling. applying to trunk nathan -- Nathan Sidwell diff --git i/gcc/cp/decl.c w/gcc/c

c++: refactor duplicate decls

2020-11-02 Thread Nathan Sidwell via Gcc-patches
A couple of paths in duplicate decls dealing with templates and builtins were overly complicated. Fixing thusly. gcc/cp/ * decl.c (duplicate_decls): Refactor some template & builtin handling. applying to trunk nathan -- Nathan Sidwell : Facebook diff --git i/gcc/cp/de

Re: [PATCH] libstdc++: Add c++2a

2020-11-02 Thread Jonathan Wakely via Gcc-patches
On 02/11/20 08:10 -0800, Thomas Rodgers wrote: From: Thomas Rodgers IGNORE the previous patch. Changes implementation to use a private __mutex type as discussed on IRC. libstdc++/ChangeLog: libstdc++-v3/doc/doxygen/user.cfg.in (INPUT): Add new header. libstdc++-v3/include/Make

c++: Delete unused hash type

2020-11-02 Thread Nathan Sidwell
Since I redid block-scope extern decls, the need for a uid->decl hasher has gone away. Deleting thusly. gcc/cp/ * cp-tree.h (struct cxx_int_tree_map): Delete. (struct cxx_int_tree_map_hasher): Delete. * cp-gimplify.c (cxx_int_tree_map_hasher::equal): Delete.

Re: [PATCH][AArch64] ACLE intrinsics: convert from BFloat16 to Float32

2020-11-02 Thread Dennis Zhang via Gcc-patches
Hi Richard, On 10/29/20 5:48 PM, Richard Sandiford wrote: Dennis Zhang writes: diff --git a/gcc/config/aarch64/aarch64-simd-builtins.def b/gcc/config/aarch64/aarch64-simd-builtins.def index 5bc596dbffc..b68c3ca7f4b 100644 --- a/gcc/config/aarch64/aarch64-simd-builtins.def +++ b/gcc/config/aar

[patch] lto test: Add dg-require-effective-target lto on test using -flto

2020-11-02 Thread Olivier Hainque
Hello, This patch is a proposal to add a /* { dg-require-effective-target lto } */ directive to a "dg-do link" test using -flto, to prevent failure on targets missing LTO support such as VxWorks for it's "kernel" mode where modules are only partially linked. I have checked that the test still

Re: [PATCH] c++: Implement DR2303 [PR97453]

2020-11-02 Thread kamlesh kumar via Gcc-patches
>>Do you see a reason this wouldn't work? No, I do not see any.This is good. >>so it's probably simplest to go ahead with mine. Yes, thank you. On Mon, Nov 2, 2020 at 9:48 PM Jason Merrill wrote: > > On 11/2/20 10:10 AM, kamlesh kumar wrote: > > addressed jason comments. > > no regression due to

Re: [patch] Fixing ppc64 test failure after patch dealing with scratches in IRA

2020-11-02 Thread Segher Boessenkool
On Mon, Nov 02, 2020 at 10:28:44AM -0600, Segher Boessenkool wrote: > On Mon, Nov 02, 2020 at 11:18:00AM -0500, Vladimir Makarov wrote: > > On 2020-11-02 6:43 a.m., Segher Boessenkool wrote: > > >(Should "*" be changed so that it skips a whole constraint if it can, > > >instead of only a single cha

c++: Some additional tests

2020-11-02 Thread Nathan Sidwell
I created a few tests on the modules branch that are not actually module-related. Here they are. gcc/testsuite/ * g++.dg/concept/pack-1.C: New. * g++.dg/lookup.using53.C: Add an enum. * g++.dg/template/error25.c: Relax 'export' error check. pushing to trunk -- N

options: Tiny refactor

2020-11-02 Thread Nathan Sidwell
This changes more on the modules branch, but let's move the declaration to the initializer now. gcc/c-family/ * c-opts.c (c_common_post_options): Move var decl to its initialization point. pushing to trunk -- Nathan Sidwell diff --git i/gcc/c-family/c-opts.c w/gcc/c-fam

core: Synchronize tree-cst & wide-int caching expectations

2020-11-02 Thread Nathan Sidwell
I fell over an ICE where wide_int_to_type_1's expectations of pointer value caching didn't match that of cache_integer_cst's behaviour. I don't know why it only exhibited on the modules branch, but it seems pretty wrong. This patch matches up the behaviours and adds a comment about that.

core: id_equal should forward

2020-11-02 Thread Nathan Sidwell
I noticed the two id_equal functions directly called strcmp. This changes one of them to call the other with args swapped. gcc/ * tree.h (id_equal): Call the symetric predicate with swapped arguments. pushing to trunk -- Nathan Sidwell diff --git c/gcc/tree.h w/gcc/tre

core: debug-print whole call expr

2020-11-02 Thread Nathan Sidwell
In debugging some call-expr handling, I got confused because the debug printer elided NULL call operands. This changes the printer to display them as NULL. gcc/ * print-tree.c (print_node): Display all the operands of a call expr. pushing to trunk -- Nathan Sidwell diff

cpplib: Macro use location and comparison

2020-11-02 Thread Nathan Sidwell
Our macro use hook passes a location, but doesn't recieve it from the using location. This patch adds the extra location_t parameter and passes it though. A second cleanup is breaking out the macro comparison code from the redefinition warning. That;ll turn out useful for modules. Finally, the

Re: [patch] Fixing ppc64 test failure after patch dealing with scratches in IRA

2020-11-02 Thread Segher Boessenkool
On Mon, Nov 02, 2020 at 11:18:00AM -0500, Vladimir Makarov wrote: > On 2020-11-02 6:43 a.m., Segher Boessenkool wrote: > >(Should "*" be changed so that it skips a whole constraint if it can, > >instead of only a single char always?) > > > Yes, it should be changed.  I believe this is a leftover fr

Re: [patch] Fixing ppc64 test failure after patch dealing with scratches in IRA

2020-11-02 Thread Vladimir Makarov via Gcc-patches
On 2020-11-02 6:43 a.m., Segher Boessenkool wrote: Hi! On Sun, Nov 01, 2020 at 06:32:02PM -0500, Vladimir Makarov wrote: On 2020-10-30 7:36 p.m., Segher Boessenkool wrote: Thanks for the patch! But it has a problem: diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md index 67

Re: [PATCH] c++: Implement DR2303 [PR97453]

2020-11-02 Thread Jason Merrill via Gcc-patches
On 11/2/20 10:10 AM, kamlesh kumar wrote: addressed jason comments. no regression due to this, tested on x86_64 linux. On Tue, Oct 27, 2020 at 11:09 PM Jason Merrill wrote: On 10/22/20 1:31 PM, kamlesh kumar wrote: Attaching the patch file. >>Instead of building a hash table, would it wor

Ping Re: float.h: C2x NaN and Inf macros

2020-11-02 Thread Joseph Myers
Ping. This patch is pending review. -- Joseph S. Myers jos...@codesourcery.com

[PATCH] libstdc++: Add c++2a

2020-11-02 Thread Thomas Rodgers
From: Thomas Rodgers IGNORE the previous patch. Changes implementation to use a private __mutex type as discussed on IRC. libstdc++/ChangeLog: libstdc++-v3/doc/doxygen/user.cfg.in (INPUT): Add new header. libstdc++-v3/include/Makefile.am (std_headers): Add new header. li

[PATCH] libstdc++: Add c++2a

2020-11-02 Thread Thomas Rodgers
From: Thomas Rodgers Changes implementation to use a private __mutex type as discussed on IRC. libstdc++/ChangeLog: libstdc++-v3/doc/doxygen/user.cfg.in (INPUT): Add new header. libstdc++-v3/include/Makefile.am (std_headers): Add new header. libstdc++-v3/include/Makefile.

RE: [PATCH] aarch64: Fix PR97638

2020-11-02 Thread Sudakshina Das via Gcc-patches
Hi Richard > -Original Message- > From: Richard Sandiford > Sent: 02 November 2020 10:31 > To: Sudakshina Das > Cc: gcc-patches@gcc.gnu.org; Kyrylo Tkachov ; > Richard Earnshaw > Subject: Re: [PATCH] aarch64: Fix PR97638 > > Sudakshina Das writes: > > Hi > > > > Currently the testcase

Re: [PATCH] c++: Don't purge the satisfaction caches

2020-11-02 Thread Jason Merrill via Gcc-patches
On 11/2/20 9:03 AM, Patrick Palka wrote: On Tue, 27 Oct 2020, Patrick Palka wrote: The adoption of P2104 means we can memoize the result of satisfaction indefinitely and no longer have to clear the satisfaction caches on various events that would affect satisfaction. To that end, this patch re

Re: [PATCH] c++: Implement DR2303 [PR97453]

2020-11-02 Thread kamlesh kumar via Gcc-patches
addressed jason comments. no regression due to this, tested on x86_64 linux. On Tue, Oct 27, 2020 at 11:09 PM Jason Merrill wrote: > > On 10/22/20 1:31 PM, kamlesh kumar wrote: > > Attaching the patch file. > > > > >>Instead of building a hash table, would it work to handle ambiguity by > > >>c

Re: [patch] Fix build when source directory includes @ character

2020-11-02 Thread Richard Sandiford via Gcc-patches
FX via Gcc-patches writes: > Here is an updated patch, that quotes all three makeinfo special characters: > @ { } > Tested on a build with source directory /tmp/foo@bar{gee}qux > > OK to commit? > > diff --git a/gcc/Makefile.in b/gcc/Makefile.in > index 7b94497b6f2..978a08f7b04 100644 > --- a/gcc

[PATCH] Rewrite SLP induction vectorization

2020-11-02 Thread Richard Biener
This rewrites SLP induction vectorization to handle different inductions in the different SLP lanes. It also changes SLP build to represent the initial value (but not the cycle) so it can be enhanced to handle outer loop vectorization later. Note this FAILs gcc.dg/vect/costmodel/x86_64/costmodel-

Re: [PATCH 1/2] can_implement_as_sibling_call_p REG_PARM_STACK_SPACE check V2

2020-11-02 Thread Richard Sandiford via Gcc-patches
Eh, never mind the previous message, I managed to miss the follow-ups. Alan Modra writes: > On Sat, Oct 31, 2020 at 12:10:35AM +1030, Alan Modra wrote: >> Would it be better if I post the patches again, restructuring them as >> 1) completely no functional change just moving the existing condition

Re: Rename DECL_IS_BUILTIN to DECL_IS_UNDECLARED_BUILTIN

2020-11-02 Thread Nathan Sidwell
On 10/23/20 8:48 AM, Nathan Sidwell wrote: Patch affects C++, C, GO, common-core ping? In cleaning up C++'s handling of hidden decls, I renamed its DECL_BUILTIN_P, which checks for loc == BUILTINS_LOCATION to DECL_UNDECLARED_BUILTIN_P, because the location gets updated, if user source decla

Re: [PATCH] arm: Fix multiple inheritance thunks for thumb-1 with -mpure-code

2020-11-02 Thread Richard Earnshaw via Gcc-patches
On 02/11/2020 10:24, Christophe Lyon via Gcc-patches wrote: > Hi, > > On Fri, 30 Oct 2020 at 13:49, Richard Earnshaw > wrote: >> >> On 29/10/2020 19:18, Richard Earnshaw via Gcc-patches wrote: >>> On 28/10/2020 18:10, Christophe Lyon via Gcc-patches wrote: On Wed, 28 Oct 2020 at 18:44, Richa

Re: [PATCH] calls.c:can_implement_as_sibling_call_p REG_PARM_STACK_SPACE check

2020-11-02 Thread Richard Sandiford via Gcc-patches
Alan Modra writes: > On Fri, Oct 30, 2020 at 09:21:09AM +, Richard Sandiford wrote: >> Alan Modra via Gcc-patches writes: >> > This moves an #ifdef block of code from calls.c to >> > targetm.function_ok_for_sibcall. Only two targets, x86 and rs6000, >> > define REG_PARM_STACK_SPACE or OUTGOI

Re: [PATCH] Add missing gnu-versioned-namespace symbols

2020-11-02 Thread Jonathan Wakely via Gcc-patches
On 01/11/20 20:48 +0100, François Dumont via Libstdc++ wrote: Several tests are failing because of those missing symbols. I understand why we need to export symbols relying in the versioned namespace but I don't understand why we need to do it for _GLIBCXX_DEBUG symbols which are not version

Re: [PATCH 1/5] [PR target/96342] Change field "simdlen" into poly_uint64

2020-11-02 Thread Richard Sandiford via Gcc-patches
"yangyang (ET)" writes: > Hi, > > I have revised the patch based on your suggestions, and the following are > some points that I think is needed to be mentioned in the mail. > >> > @@ -502,17 +504,18 @@ simd_clone_adjust_return_type (struct >> cgraph_node *node) >> > veclen = node->simdclone

Re: [PATCH] Fix PR97205

2020-11-02 Thread Richard Biener
On Mon, 2 Nov 2020, Bernd Edlinger wrote: > Hi, > > this makes sure that stack allocated SSA_NAMEs are > at least MODE_ALIGNED. Also increase the MEM_ALIGN > for the corresponding rtl objects. > > > Tested on x86_64-pc-linux-gnu and arm-none-eabi. > > OK for trunk? @@ -1022,6 +1030,14 @@ ex

Re: [PATCH] c++: Don't purge the satisfaction caches

2020-11-02 Thread Patrick Palka via Gcc-patches
On Tue, 27 Oct 2020, Patrick Palka wrote: > The adoption of P2104 means we can memoize the result of satisfaction > indefinitely and no longer have to clear the satisfaction caches on > various events that would affect satisfaction. To that end, this patch > removes clear_satisfaction_cache and a

Re: [PATCH 6/9] [nvptx] Force vl32 if calling vector-partitionable routines -- test-cases

2020-11-02 Thread Thomas Schwinge
Hi Tom! On 2020-10-30T17:32:56+0100, Tom de Vries wrote: > On 10/30/20 5:16 PM, Thomas Schwinge wrote: >> OK to simplify and enhance the >> testcases as attached, "Simplify and enhance >> 'libgomp.oacc-c-c++-common/pr85486*.c' [PR85486]"? > > Yep, looks good. As posted, pushed "Simplify and enha

Re: PING^2 [PATCH v2] rs6000: Use direct move for char/short vector CTOR [PR96933]

2020-11-02 Thread David Edelsohn via Gcc-patches
On Mon, Nov 2, 2020 at 4:11 AM Kewen.Lin wrote: > >> Hi, > >> > >> As Segher's suggestion in the PR, for 128bit_direct_move, this new > >> version leverages vector pack insns instead of vector perms with > >> one control vector. The performance evaluation shows that it's on > >> par with the pre

Re: [Patch, Fortran] PR 92793 - fix column used for error diagnostic

2020-11-02 Thread Thomas Schwinge
Hi Tobias! On 2020-10-30T12:16:05+0100, Tobias Burnus wrote: > On 30.10.20 11:47, Thomas Schwinge wrote: Fixed by introducing a new function; now one only needs to make sure that no new code will re-introduce "lb->location":-) >> ... another*existing instance* of this problem. > ... >>

[patch] openmp test: Add dg-require-effective-target fopenmp to g++ test using -fopenmp

2020-11-02 Thread Olivier Hainque
Hello, This prevents failures of a test using -fopenmp on targets not advertising support for that feature (VxWorks in my case). I have also verified that the test still runs and passes on a native x86_64-linux configuration. Ok to commit ? Thanks in advance! With Kind Regards, Olivier 2020-

Re: libgomp testsuite: tell warning from error diagnostics, etc. [PR80219, PR85303]

2020-11-02 Thread Thomas Schwinge
Hi! On 2020-10-30T12:25:38+0100, Jakub Jelinek via Gcc-patches wrote: > On Fri, Oct 30, 2020 at 12:22:31PM +0100, Thomas Schwinge wrote: >> Turns out that GCC PR85303 "[testsuite, libgomp] dg-message not >> supported" is the very same problem as (the libgomp aspect of) GCC >> PR80219 "relative l

RE: [PATCH 1/5] [PR target/96342] Change field "simdlen" into poly_uint64

2020-11-02 Thread yangyang (ET)
Hi, I have revised the patch based on your suggestions, and the following are some points that I think is needed to be mentioned in the mail. > > @@ -502,17 +504,18 @@ simd_clone_adjust_return_type (struct > cgraph_node *node) > > veclen = node->simdclone->vecsize_int; > >else > >

[Patch] Fortran: OpenMP - fixes for omp atomic [PR97655] (was: Re: [Patch] Fortran: Update omp atomic for OpenMP 5)

2020-11-02 Thread Tobias Burnus
Intermangled OpenMP 5.0 and 5.1. OpenMP 5.1: - 'capture' is no longer an atomic-clause - can only be used with 'update' (which is implied if absent) (a) The patch (accidentally) accepted the OpenMP 5 syntax. → now rejects 'capture' + 'update' Additionally: (b) There was a copy and paste error

Re: [PATCH v2] libgcc: Expose the instruction pointer and stack pointer in SEH _Unwind_Backtrace

2020-11-02 Thread Kai Tietz via Gcc-patches
Hello, as noone seems to be able to review this patch, I will do so, even if this is no longer a task of mine. The patch itself is reasonable and seems to fix a pending issue we have on CFA support. I had already private discussion with Martin, and I would have loved to see a test-case illustrati

Re: [Patch] Fortran: OpenMP - fixes for omp atomic [PR97655] (was: Re: [Patch] Fortran: Update omp atomic for OpenMP 5)

2020-11-02 Thread Jakub Jelinek via Gcc-patches
On Mon, Nov 02, 2020 at 12:52:03PM +0100, Tobias Burnus wrote: > Fortran: OpenMP - fixes for omp atomic [PR97655] > > gcc/fortran/ChangeLog: > > PR fortran/97655 > * openmp.c (gfc_match_omp_atomic): Fix mem-order handling; > reject specifying update + capture together. > > gcc/

Re: [patch] Fixing ppc64 test failure after patch dealing with scratches in IRA

2020-11-02 Thread Segher Boessenkool
Hi! On Sun, Nov 01, 2020 at 06:32:02PM -0500, Vladimir Makarov wrote: > On 2020-10-30 7:36 p.m., Segher Boessenkool wrote: > >Thanks for the patch! But it has a problem: > > > >>diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md > >>index 67e4f2fd037..78de85ccbbb 100644 > >>--- a/gc

[PATCH] tree-optimization/97558 - compute vectype for SLP nested cycles

2020-11-02 Thread Richard Biener
This makes sure to compute the vector type for invariant SLP children of nested cycles. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-11-02 Richard Biener PR tree-optimization/97558 * tree-vect-loop.c (vectorizable_reduction): For nested SLP cycles

Re: [PATCH] Selectively trap if ranger and vr-values disagree on range builtins.

2020-11-02 Thread Aldy Hernandez via Gcc-patches
On 10/29/20 3:39 PM, Aldy Hernandez wrote: On 10/29/20 2:53 PM, Andrew MacLeod wrote: On 10/27/20 11:29 AM, Aldy Hernandez wrote: The UBSAN builtins degrade into PLUS/MINUS/MULT and call extract_range_from_binary_expr, which as the PR shows, can special case some symbolics which the ranger

Re: [patch] Fix build when source directory includes @ character

2020-11-02 Thread FX via Gcc-patches
Here is an updated patch, that quotes all three makeinfo special characters: @ { } Tested on a build with source directory /tmp/foo@bar{gee}qux OK to commit? at.diff Description: Binary data at.ChangeLog Description: Binary data

Re: [PATCH] aarch64: Fix PR97638

2020-11-02 Thread Richard Sandiford via Gcc-patches
Sudakshina Das writes: > Hi > > Currently the testcase in the patch was failing to produce > a 'bti c' at the beginning of the function. This was because > in aarch64_pac_insn_p, we were wrongly returning at the first > check. This patch fixes the return value. > > Bootstrap and regression tested

Re: [PATCH] arm: Fix multiple inheritance thunks for thumb-1 with -mpure-code

2020-11-02 Thread Christophe Lyon via Gcc-patches
Hi, On Fri, 30 Oct 2020 at 13:49, Richard Earnshaw wrote: > > On 29/10/2020 19:18, Richard Earnshaw via Gcc-patches wrote: > > On 28/10/2020 18:10, Christophe Lyon via Gcc-patches wrote: > >> On Wed, 28 Oct 2020 at 18:44, Richard Earnshaw > >> wrote: > >>> > >>> On 27/10/2020 15:42, Richard Earn

Re: [PATCH v3] pass: Run cleanup passes before SLP [PR96789]

2020-11-02 Thread Richard Sandiford via Gcc-patches
"Kewen.Lin" writes: > diff --git a/gcc/function.c b/gcc/function.c > index 2c8fa217f1f..3e92ee9c665 100644 > --- a/gcc/function.c > +++ b/gcc/function.c > @@ -4841,6 +4841,8 @@ allocate_struct_function (tree fndecl, bool abstract_p) > binding annotations among them. */ >cfun->debug_nonb

Re: [patch] Fix build when source directory includes @ character

2020-11-02 Thread Richard Sandiford via Gcc-patches
FX via Gcc-patches writes: > Hi, > > Attached is a fix for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57076 > Currently, we cannot build GCC when the source directory contains a @ > character (which is a problem for Homebrew, where we typically build in > directories such as /tmp/gcc@10/src:

[PATCH] tree-optimization/97650 - fix ICE in vect_get_and_check_slp_defs

2020-11-02 Thread Richard Biener
I was mistaken to treat vect_external_def as only applying to SSA_NAME defs, so check for that. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. 2020-11-02 Richard Biener PR tree-optimization/97650 * tree-vect-slp.c (vect_get_and_check_slp_defs): Check for

[PATCH] tree-optimization/97558 - avoid SLP analyzing irrelevant stmts

2020-11-02 Thread Richard Biener
This avoids analyzing reductions that are not relevant (thus dead) which eventually will lead into crashes because the participating stmts meta is not analyzed. For this to work the patch also properly removes reduction groups that are not uniformly recognized as patterns. Bootstrapped and tested

Re: [PATCH, OpenMP 5.0] Implement structure element mapping changes in 5.0

2020-11-02 Thread Chung-Lin Tang
Thank you Jakub, I'll need some time to look at this. Thanks. Chung-Lin On 2020/10/30 10:05 PM, Jakub Jelinek wrote: On Mon, Oct 26, 2020 at 09:10:08AM +0100, Jakub Jelinek via Gcc-patches wrote: Yes, it is a QoI and it is important not to regress about that. Furthermore, the more we diverge f

[PATCH 2/2] [RS6000] REG_PARM_STACK_SPACE check V2

2020-11-02 Thread Alan Modra via Gcc-patches
On PowerPC we can tail call if the callee has less or equal REG_PARM_STACK_SPACE than the caller, as demonstrated by the testcase. So we should use /* If reg parm stack space increases, we cannot sibcall. */ if (REG_PARM_STACK_SPACE (decl ? decl : fntype) > INCOMING_REG_PARM_STACK_SPAC

[PATCH 1/2] can_implement_as_sibling_call_p REG_PARM_STACK_SPACE check V2

2020-11-02 Thread Alan Modra via Gcc-patches
On Sat, Oct 31, 2020 at 12:10:35AM +1030, Alan Modra wrote: > Would it be better if I post the patches again, restructuring them as > 1) completely no functional change just moving the existing condition >to the powerpc and i386 target hooks, and > 2) twiddling the powerpc target hook? The no

[PATCH] aarch64: Fix PR97638

2020-11-02 Thread Sudakshina Das via Gcc-patches
Hi Currently the testcase in the patch was failing to produce a 'bti c' at the beginning of the function. This was because in aarch64_pac_insn_p, we were wrongly returning at the first check. This patch fixes the return value. Bootstrap and regression tested on aarch64-none-linux-gnu. Is this ok

[PATCH] Fix PR97205

2020-11-02 Thread Bernd Edlinger
Hi, this makes sure that stack allocated SSA_NAMEs are at least MODE_ALIGNED. Also increase the MEM_ALIGN for the corresponding rtl objects. Tested on x86_64-pc-linux-gnu and arm-none-eabi. OK for trunk? Thanks Bernd. From e8f80c0ed18c49e8b8ad4145401a2c1afa50af60 Mon Sep 17 00:00:00 2001 Fro

PING^4 [PATCH 1/4] unroll: Add middle-end unroll factor estimation

2020-11-02 Thread Kewen.Lin via Gcc-patches
Hi, Gentle ping^4 this: https://gcc.gnu.org/pipermail/gcc-patches/2020-May/546698.html BR, Kewen on 2020/10/13 下午3:06, Kewen.Lin via Gcc-patches wrote: > Hi, > > Gentle ping this: > > https://gcc.gnu.org/pipermail/gcc-patches/2020-May/546698.html > > BR, > Kewen > > on 2020/9/15 下午3:44, Kew

[committed] RISC-V: Check multiletter extension has more than 1 letter

2020-11-02 Thread Kito Cheng
gcc/ChangeLog: * common/config/riscv/riscv-common.c (riscv_subset_list::parse_multiletter_ext): Checking multiletter extension has more than 1 letter. gcc/testsuite/ChangeLog * gcc.target/riscv/arch-7.c: New. * gcc.target/riscv/attribute-10.c: Update test

PING^2 [PATCH v2] rs6000: Use direct move for char/short vector CTOR [PR96933]

2020-11-02 Thread Kewen.Lin via Gcc-patches
Hi, Gentle ping for the patch: https://gcc.gnu.org/pipermail/gcc-patches/2020-September/553555.html BR, Kewen on 2020/10/13 下午2:59, Kewen.Lin via Gcc-patches wrote: > Hi, > > I'd like to gentle ping this patch: > > https://gcc.gnu.org/pipermail/gcc-patches/2020-September/553555.html > > BR

Re: [PATCH v2] RISC-V: Add configure option: --with-multilib-config to flexible config multi-lib settings.

2020-11-02 Thread Kito Cheng via Gcc-patches
Committed with following changes: - Rename --with-multilib-config to --with-multilib-generator. - Check --with-multilib-generator and --with-multilib-list can't be used at same time. - Fix doc. On Wed, Oct 28, 2020 at 3:01 AM Jim Wilson wrote: > > On Mon, Oct 19, 2020 at 2:35 AM Kito Cheng wrot

[PATCH 6/x] arm: Add vstN_lane_bf16 + vstNq_lane_bf16 intrisics

2020-11-02 Thread Andrea Corallo via Gcc-patches
Hi all, last patch for this the serie adding vst2_lane_bf16, vst2q_lane_bf16, vst3_lane_bf16, vst3q_lane_bf16, vst4_lane_bf16, vst4q_lane_bf16 related neon intrinsics. Please see refer to: ACLE ISA Re

[PATCH 5/x] arm: Add vldN_lane_bf16 + vldNq_lane_bf16 intrisics

2020-11-02 Thread Andrea Corallo via Gcc-patches
Hi all, 5th patch of the serie here adding vld2_lane_bf16, vld2q_lane_bf16, vld3_lane_bf16, vld3q_lane_bf16, vld4_lane_bf16, vld4q_lane_bf16 related neon intrinsics. Please see refer to: ACLE ISA Regt

[PATCH 4/x] arm: Add vst1_bf16 + vst1q_bf16 intrinsics

2020-11-02 Thread Andrea Corallo via Gcc-patches
Hi all, Forth patch of the serie here adding vst1_bf16, vst1q_bf16 bfloat16 related neon intrinsics. Please see refer to: ACLE ISA Regtested and bootstrapped. Thanks! Andrea gcc/ChangeLog 2020-1

  1   2   >