Re: [PATCH] c++/88601 - [C/C++] __builtin_shufflevector support

2021-05-24 Thread Richard Biener
On Fri, 21 May 2021, Jason Merrill wrote: > On 5/21/21 8:33 AM, Richard Biener wrote: > > This adds support for the clang __builtin_shufflevector extension to > > the C and C++ frontends. The builtin is lowered to VEC_PERM_EXPR. > > Because VEC_PERM_EXPR does not support different sized vector in

[PATCH] Fix selftest for targets where short and int are the same size.

2021-05-24 Thread Aldy Hernandez via Gcc-patches
avr-elf seems to use HImode for both integer_type_node and signed_char_type_node, which is causing the check for different sized VARYING ranges to fail. I've fixed this by using a char which I think should always be smaller than an int. Is there a preferred way of fixing this? Perhaps build_non

Re: GCC 9.4 Status Report (2021-05-19), branch frozen for release

2021-05-24 Thread Richard Biener
On Fri, 21 May 2021, Jason Merrill wrote: > Sorry, just pushed 3 patches before I noticed this. They're safe but not > critical, should I back them out? They look safe indeed, so let's keep them in. Richard. > On Wed, May 19, 2021 at 4:06 AM Richard Biener wrote: > > > > > Status > > ==

Re: [PATCH][i386] Split not+broadcast+pand to broadcast+pandn.

2021-05-24 Thread Hongtao Liu via Gcc-patches
On Tue, May 25, 2021 at 2:29 PM Andrew Pinski wrote: > > On Mon, May 24, 2021 at 11:23 PM Hongtao Liu wrote: > > > > On Tue, May 25, 2021 at 2:11 PM Andrew Pinski wrote: > > > > > > On Mon, May 24, 2021 at 11:03 PM Hongtao Liu via Gcc-patches > > > wrote: > > > > > > > > Hi: > > > > This patc

Re: [PATCH] [i386] Fix _mm256_zeroupper to notify LRA that vzeroupper will kill sse registers. [PR target/82735]

2021-05-24 Thread Hongtao Liu via Gcc-patches
On Tue, May 25, 2021 at 2:04 PM Hongtao Liu wrote: > > On Tue, May 18, 2021 at 11:18 PM Richard Sandiford > wrote: > > > > Hongtao Liu via Gcc-patches writes: > > > On Mon, May 17, 2021 at 5:56 PM Richard Sandiford > > > wrote: > > >> It looks like the rtx “used” flag is unused for INSNs, so we

Re: [PATCH][i386] Split not+broadcast+pand to broadcast+pandn.

2021-05-24 Thread Andrew Pinski via Gcc-patches
On Mon, May 24, 2021 at 11:23 PM Hongtao Liu wrote: > > On Tue, May 25, 2021 at 2:11 PM Andrew Pinski wrote: > > > > On Mon, May 24, 2021 at 11:03 PM Hongtao Liu via Gcc-patches > > wrote: > > > > > > Hi: > > > This patch is about to do transformation like below. > > > Bootstrapped and regte

Re: [PATCH][i386] Split not+broadcast+pand to broadcast+pandn.

2021-05-24 Thread Hongtao Liu via Gcc-patches
On Tue, May 25, 2021 at 2:11 PM Andrew Pinski wrote: > > On Mon, May 24, 2021 at 11:03 PM Hongtao Liu via Gcc-patches > wrote: > > > > Hi: > > This patch is about to do transformation like below. > > Bootstrapped and regtested on x86_64-linux-gnu{-m32,}. > > Ok for trunk? > > > > from > >

Re: [PATCH] C-SKY: Add insn "ldbs".

2021-05-24 Thread Cooper Qu via Gcc-patches
Hi Geng Qi, Could you add a test case for this patch? On 4/30/21 9:00 PM, Geng Qi wrote: gcc/ChangeLog: config/csky/csky.md (cskyv2_sextend_ldbs): New insn. --- gcc/config/csky/csky.md | 10 ++ 1 file changed, 10 insertions(+) diff --git a/gcc/config/csky/csky.md b/gcc/con

Re: [PATCH][i386] Split not+broadcast+pand to broadcast+pandn.

2021-05-24 Thread Andrew Pinski via Gcc-patches
On Mon, May 24, 2021 at 11:03 PM Hongtao Liu via Gcc-patches wrote: > > Hi: > This patch is about to do transformation like below. > Bootstrapped and regtested on x86_64-linux-gnu{-m32,}. > Ok for trunk? > > from > notl%edi > vpbroadcastd%edi, %xmm0 > vpand

Re: [PATCH 4/4] C-SKY: Separate FRAME_POINTER_REGNUM into FRAME_POINTER_REGNUM and HARD_FRAME_POINTER_REGNUM.

2021-05-24 Thread Cooper Qu via Gcc-patches
These four patches has been merged. On 5/24/21 8:22 PM, Geng Qi wrote: gcc/ChangeLog: * config/csky/csky.h (FRAME_POINTER_REGNUM): Use HARD_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM instead of the signle definition. The signle definition may not work well at

Re: [PATCH] [i386] Fix _mm256_zeroupper to notify LRA that vzeroupper will kill sse registers. [PR target/82735]

2021-05-24 Thread Hongtao Liu via Gcc-patches
On Tue, May 18, 2021 at 11:18 PM Richard Sandiford wrote: > > Hongtao Liu via Gcc-patches writes: > > On Mon, May 17, 2021 at 5:56 PM Richard Sandiford > > wrote: > >> It looks like the rtx “used” flag is unused for INSNs, so we could > >> use that as a CALL_INSN flag that indicates a fake call.

[PATCH][i386] Split not+broadcast+pand to broadcast+pandn.

2021-05-24 Thread Hongtao Liu via Gcc-patches
Hi: This patch is about to do transformation like below. Bootstrapped and regtested on x86_64-linux-gnu{-m32,}. Ok for trunk? from notl%edi vpbroadcastd%edi, %xmm0 vpand %xmm1, %xmm0, %xmm0 to vpbroadcastd%edi, %xmm0 vpandn %xmm1, %xmm0

Re: [r12-989 Regression] FAIL: libgomp.oacc-fortran/privatized-ref-2.f90 -DACC_DEVICE_TYPE_host=1 -DACC_MEM_SHARED=1 -foffload=disable -Os (test for warnings, line 98) on Linux/x86_64

2021-05-24 Thread Sunil Pandey via Gcc-patches
Hi Thomas, I reproduced this issue manually and it turns out this is a special case. Script takes input from https://gcc.gnu.org/pipermail/gcc-regression/ and it matches the exact error message in the triaging process. This failure reported on gcc regression https://gcc.gnu.org/pipermail/gcc-regr

Re: [PATCH 11/11] use xxx_no_warning APIs in the middle end

2021-05-24 Thread Martin Sebor via Gcc-patches
On 5/24/21 5:08 PM, David Malcolm via Gcc-patches wrote: On Mon, 2021-05-24 at 16:16 -0600, Martin Sebor via Gcc-patches wrote: The attached patch replaces TREE_NO_WARNING, gimple_get_no_warning_p and gimple_set_no_warning with the new APIs, get_no_warning, set_no_warning, and copy_no_warning.

Re: [PATCH 0/11] warning control by group and location (PR 74765)

2021-05-24 Thread Martin Sebor via Gcc-patches
On 5/24/21 5:08 PM, David Malcolm wrote: On Mon, 2021-05-24 at 16:02 -0600, Martin Sebor wrote: Having just one bit control whether an expression or statement should be allowed to trigger warnings has been a source of bug reports about false negatives for years.  PR 74765 has a representative te

Re: [PATCH 11/11] use xxx_no_warning APIs in the middle end

2021-05-24 Thread David Malcolm via Gcc-patches
On Mon, 2021-05-24 at 16:16 -0600, Martin Sebor via Gcc-patches wrote: > The attached patch replaces TREE_NO_WARNING, gimple_get_no_warning_p > and gimple_set_no_warning with the new APIs, get_no_warning, > set_no_warning, and copy_no_warning. Might be worth splitting this out into (a) the middle-

Re: [PATCH 0/11] warning control by group and location (PR 74765)

2021-05-24 Thread David Malcolm via Gcc-patches
On Mon, 2021-05-24 at 16:02 -0600, Martin Sebor wrote: > Having just one bit control whether an expression or statement should > be allowed to trigger warnings has been a source of bug reports about > false negatives for years.  PR 74765 has a representative test case > that shows how by setting th

[PATCH 11/11] use xxx_no_warning APIs in the middle end

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces TREE_NO_WARNING, gimple_get_no_warning_p and gimple_set_no_warning with the new APIs, get_no_warning, set_no_warning, and copy_no_warning. Add support for per-location warning groups. gcc/ChangeLog: * builtins.c (warn_string_no_nul): Replace uses of TREE_NO_WARNING,

[PATCH 10/11] use xxx_no_warning APIs in libcc1

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in libc11. Add support for per-location warning groups. libcc1/ChangeLog: * libcp1plugin.cc (record_decl_address): Replace a direct use of TREE_NO_WARNING with set_no_warning. diff --git a/libcc1/libcp1plugin.cc b/libcc1/libcp1plugin.cc

[PATCH 9/11] use xxx_no_warning APIs in rl78 back end

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the rl78 back end. Add support for per-location warning groups. gcc/ChangeLog: * config/rl78/rl78.c (rl78_handle_naked_attribute): Replace a direct use of TREE_NO_WARNING with set_no_warning. diff --git a/gcc/config/rl78/rl78.c b/gcc/

[PATCH 8/11] use xxx_no_warning APIs in Objective-C

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the Objective-C front end. Add support for per-location warning groups. gcc/objc/ChangeLog: * objc-act.c (objc_maybe_build_modify_expr): Replace direct uses of TREE_NO_WARNING with get_no_warning, and set_no_warning. (objc_build_incr_

[PATCH 7/11] use xxx_no_warning APIs in Fortran

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the LTO front end. The streaming support doesn't extend to multiple bits yet. I plan to do that in a follow-up change. Add support for per-location warning groups. gcc/lto/ChangeLog: * gimple-streamer-out.c (output_gimple_stmt): Same.

[PATCH 6/11] use xxx_no_warning APIs in Fortran

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the Fortran front end. I don't know the Fortran front end and I made no effort to try to find the right warning options in the calls to set/get_no_warning. Add support for per-location warning groups. gcc/fortran/ChangeLog: * trans-arr

[PATCH 5/11] use xxx_no_warning APIs in C++

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the C++ front end. For the set/get_no_warning calls I tried to find the most appropriate option to disable and query. In some cases there are helpful comments nearby that made this easy. In other cases it was less straightforward, and i

[PATCH 4/11] use xxx_no_warning APIs in C family

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the C family common subset of the C and C++ front ends. Add support for per-location warning groups. gcc/c-family/ChangeLog: * c-common.c (c_wrap_maybe_const): Remove TREE_NO_WARNING. (c_common_truthvalue_conversion): Replace direct u

[PATCH 3/11] use xxx_no_warning APIs in C

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch replaces the uses of TREE_NO_WARNING in the C front end. Add support for per-location warning groups. gcc/c/ChangeLog: * c-decl.c (pop_scope): Replace direct uses of TREE_NO_WARNING with get_no_warning, set_no_warning, and copy_no_warning. (diagnose_mismatched_decls): Same.

[PATCH 2/11] use xxx_no_warning APIs in Ada

2021-05-24 Thread Martin Sebor via Gcc-patches
[PATCH 2/11] use xxx_no_warning APIs in Ada. Add support for per-location warning groups. gcc/ada/ChangeLog: * gcc-interface/trans.c (Handled_Sequence_Of_Statements_to_gnu): Replace TREE_NO_WARNING with set_no_warning. (gnat_gimplify_expr): Same. * gcc-interface/utils.c (gnat_pushdecl): Same

[PATCH 1/11] introduce xxx_no_warning APIs

2021-05-24 Thread Martin Sebor via Gcc-patches
The attached patch introduces the get_no_warning(), set_no_warning(), and copy_no_warning() APIs without making use of them in the rest of GCC. They are in three files: diagnostic-spec.{h,c}: Location-centric overloads. warning-control.cc: Tree- and gimple*-centric overloads. The location-c

[PATCH 0/11] warning control by group and location (PR 74765)

2021-05-24 Thread Martin Sebor via Gcc-patches
Having just one bit control whether an expression or statement should be allowed to trigger warnings has been a source of bug reports about false negatives for years. PR 74765 has a representative test case that shows how by setting the bit to avoid -Wparentheses the C++ front end also ends up pr

Re: [PATCH] diagnostics: Support for -finput-charset [PR93067]

2021-05-24 Thread Lewis Hyatt via Gcc-patches
On Tue, May 18, 2021 at 5:31 AM Iain Buclaw wrote: > > Excerpts from Lewis Hyatt via Gcc-patches's message of January 29, 2021 4:46 > pm: > > Q1: What is the input charset? > > A1: > > > > libcpp: Whatever was passed to -finput-charset (note, for Fortran, > > -finput-charset is not suppor

Re: [PATCH] go/100537 - Bootstrap-O3 and bootstrap-debug fail

2021-05-24 Thread Ian Lance Taylor via Gcc-patches
I've committed a patch to the Go frontend that fixes this problem. Thanks for the analysis. Ian On Thu, May 20, 2021 at 1:59 AM guojiufu wrote: > > On 2021-05-18 14:58, Richard Biener wrote: > > On Mon, 17 May 2021, Ian Lance Taylor wrote: > > > >> On Mon, May 17, 2021 at 1:17 AM Richard Biener

Re: [PATCH 06/57] rs6000: Add helper functions for parsing

2021-05-24 Thread Segher Boessenkool
On Mon, May 24, 2021 at 12:37:30AM +0200, Bernhard Reutner-Fischer wrote: > On 21 May 2021 22:56:09 CEST, Bill Schmidt via Gcc-patches > wrote: > >>> + char *buf = (char *) malloc (lastpos - pos + 2); > >>> + memcpy (buf, &linebuf[pos], lastpos - pos + 1); > >>> + buf[lastpos - pos + 1] = '\0'

Re: [PATCH] c++: constexpr and copy elision within mem init [PR100368]

2021-05-24 Thread Jason Merrill via Gcc-patches
On 5/24/21 1:48 PM, Patrick Palka wrote: In the testcase below, the initializer for C::b inside C's default constructor is encoded as a TARGET_EXPR wrapping the CALL_EXPR f() in C++17 mode. During massaging of this constexpr constructor, build_target_expr_with_type called from bot_manip ends up

https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/

2021-05-24 Thread Johannes Nendwich via Gcc-patches
Hi folks, some more suggestions for corrections in the onlinedocs: https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/GERROR.html#GERROR RESULT "Shall of type CHARACTER and of default" --> "Shall BE of ... default KIND." https://gcc.gnu.org/onlinedocs/gcc-11.1.0/gfortran/GETARG.html#GETA

Re: [PATCH] add missing GTY support for hash-map (PR 100463)

2021-05-24 Thread Jason Merrill via Gcc-patches
On 5/24/21 12:46 PM, Martin Sebor wrote: Instantiating a hash_map on a number of integer types including, for example, int or unsigned int (such as location_t), or HOST_WIDE_INT, and using it with the garbage collector causes many cryptic compilation errors due to incomplete support for such type

Re: [PATCH] c++: access for hidden friend of nested class template [PR100502]

2021-05-24 Thread Jason Merrill via Gcc-patches
On 5/21/21 4:35 PM, Patrick Palka wrote: Here, during ahead of time access checking for the private member EnumeratorRange::end_reached_ in the hidden friend f, we're triggering the the assert in enforce_access that verifies we're not trying to add a dependent access check to TI_DEFERRED_ACCESS_C

Re: [PATCH] c++: Fix reference NTTP binding to noexcept fn [PR97420]

2021-05-24 Thread Jason Merrill via Gcc-patches
On 5/21/21 4:35 PM, Patrick Palka wrote: Here, in C++17 mode, convert_nontype_argument_function is rejecting binding a non-noexcept function reference template parameter to a noexcept function (encoded as the template argument '*(int (&) (int)) &f'). The first roadblock to making this work is th

Go patch committed: Mark global variables TREE_ADDRESSABLE

2021-05-24 Thread Ian Lance Taylor via Gcc-patches
This patch to the Go frontend marks global variables whose address is taken. To implement this, change the backend to use flag bits for variables. This fixes GCC PR 100537. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian PR go/100537 * go-g

Re: [PATCH] Pass the number of bytes to push to PUSH_ARGS

2021-05-24 Thread Joseph Myers
On Sat, 22 May 2021, H.J. Lu via Gcc-patches wrote: > 1. Update PUSH_ARGS to accept an argument. When the PUSH instruction > usage is optional, pass the number of bytes to push to PUSH_ARGS so that > the backend can decide if PUSH instructions should be generated. > 2. Change x86 PUSH_ARGS to ret

Re: [PATCH][DOCS] Remove install-old.texi

2021-05-24 Thread Joseph Myers
On Fri, 21 May 2021, Martin Liška wrote: > CPUs: > aarch64, alpha, alpha64, amdgcn, arc, arceb, arm, avr, bfin, bpf, cr16, cris, > csky, epiphany, fido, fr30, frv, ft32, h8300, hppa, hppa2.0, hppa64, i486, > i686, ia64, iq2000, lm32, m32c, m32r, m32rle, m68k, mcore, microblaze, mips, > mips64, mip

Re: [PATCH,rs6000 2/2] Fusion patterns for add-logical/logical-add

2021-05-24 Thread Aaron Sawdey via Gcc-patches
One last addendum to this. I discovered that that needs a "sort" in front of "keys %logicals_addsub" because otherwise you may get the operators in different orders sometimes which leads to fusion.md having the patterns in different orders which isn't helpful for sane debugging. Segher and I discu

[PUSHED] VARYING ranges of different sizes should not be equal.

2021-05-24 Thread Aldy Hernandez via Gcc-patches
VARYING ranges are just normal ranges that span the entire domain. Such ranges have had end-points for a few releases now, and the fact that the legacy code was still treating all VR_VARYING the same was an oversight. This patch fixes the oversight to match the multi-range behavior. Tested on x8

Re: [PATCH 4/5] Convert remaining passes to RANGE_QUERY.

2021-05-24 Thread Martin Sebor via Gcc-patches
On 5/21/21 5:39 AM, Aldy Hernandez via Gcc-patches wrote: This patch converts the remaining users of get_range_info and get_ptr_nonnull to the range_query API. No effort was made to move passes away from VR_ANTI_RANGE, or any other use of deprecated methods. This was a straight up conversion to

Re: [PATCH 1/5] Common API for accessing global and on-demand ranges.

2021-05-24 Thread Martin Sebor via Gcc-patches
On 5/21/21 5:39 AM, Aldy Hernandez via Gcc-patches wrote: This patch provides a generic API for accessing global ranges. It is meant to replace get_range_info() and get_ptr_nonnull() with one common interface. It uses the same API as the ranger (class range_query), so there will now be one API

Re: [PATCH] libstdc++: Fix iterator caching inside range adaptors [PR100479]

2021-05-24 Thread Jonathan Wakely via Gcc-patches
On 18/05/21 00:53 -0400, Patrick Palka via Libstdc++ wrote: On Mon, 17 May 2021, Tim Song wrote: On Mon, May 17, 2021 at 2:59 PM Patrick Palka wrote: > > + constexpr _CachedPosition& > + operator=(_CachedPosition&& __other) noexcept > + { > + if (std::__addressof(__ot

[committed] libstdc++: Qualify functions used in tests

2021-05-24 Thread Jonathan Wakely via Gcc-patches
These tests rely on ADL for some functions, probably unintentionally. The calls only work because the iterator wrappers derive from std::iterator and so namespace std is an associated namespace. libstdc++-v3/ChangeLog: * testsuite/25_algorithms/inplace_merge/constrained.cc: Qualify

Re: [GOVERNANCE] Where to file complaints re project-maintainers?

2021-05-24 Thread abebeos via Gcc-patches
Please, get serious. => this topic is closed for me, so STOP CC''ing ME, it is not welcome. On Sun, 23 May 2021 at 19:03, Mike Stump wrote: > This isn't a patch to gcc, please stop posting non-technical content to > this list. Please review what this list is for and the rules for this list >

[PATCH] c++: constexpr and copy elision within mem init [PR100368]

2021-05-24 Thread Patrick Palka via Gcc-patches
In the testcase below, the initializer for C::b inside C's default constructor is encoded as a TARGET_EXPR wrapping the CALL_EXPR f() in C++17 mode. During massaging of this constexpr constructor, build_target_expr_with_type called from bot_manip ends up trying to use B's implicitly deleted copy c

[PATCH] add missing GTY support for hash-map (PR 100463)

2021-05-24 Thread Martin Sebor via Gcc-patches
Instantiating a hash_map on a number of integer types including, for example, int or unsigned int (such as location_t), or HOST_WIDE_INT, and using it with the garbage collector causes many cryptic compilation errors due to incomplete support for such types (the PR shows a few examples). I ran in

Re: [PATCH] x86-64: Remove HAVE_LD_PIE_COPYRELOC

2021-05-24 Thread Fāng-ruì Sòng via Gcc-patches
Ping https://gcc.gnu.org/pipermail/gcc-patches/2021-May/570139.html On Tue, May 11, 2021 at 8:29 PM Fangrui Song wrote: > > This was introduced in 2014-12 to use local binding for external symbols > for -fPIE. Now that we have H.J. Lu's GOTPCRELX for years which mostly > nullify the benefit of HA

Re: [PATCH 1/5] Common API for accessing global and on-demand ranges.

2021-05-24 Thread Aldy Hernandez via Gcc-patches
On 5/21/21 1:39 PM, Aldy Hernandez wrote: This patch provides a generic API for accessing global ranges. It is meant to replace get_range_info() and get_ptr_nonnull() with one common interface. It uses the same API as the ranger (class range_query), so there will now be one API for accessing

Ping [PATCH 2/2] Fix tests when running on power10, PR testsuite/100166

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. | Date: Tue, 18 May 2021 16:59:12 -0400 | Subject: [PATCH 2/2] Fix tests when running on power10, PR testsuite/100166 | Message-ID: <20210518205912.gb18...@ibm-toto.the-meissners.org> -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss

Re: [PATCH 1/2] Deal with prefixed loads/stores in tests, PR testsuite/100166

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. This is independent of the other patches. | Date: Tue, 18 May 2021 16:57:59 -0400 | Subject: [PATCH 1/2] Deal with prefixed loads/stores in tests, PR testsuite/100166 | Message-ID: <20210518205759.ga18...@ibm-toto.the-meissners.org> -- Michael Meissner, IBM IBM, M/S 2506R, 550 King

Ping [PATCH 2/2] Fix xxeval predicates.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. | Date: Tue, 18 May 2021 16:47:58 -0400 | Subject: [PATCH 2/2] Fix xxeval predicates. | Message-ID: <20210518204758.gb16...@ibm-toto.the-meissners.org> This needs the following patch to have been applied: | Date: Tue, 18 May 2021 16:46:47 -0400 | Subject: [PATCH 1/2] Move xx* builtin

Ping [PATCH 1/2] Move xx* builtins to vsx.md.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. This patch is a set of 2 patches. The second patch will need this patch applied. In addition, the next 3 patches that I will be submitting (to add support for generating XXSPLTIW, XXSPLTIDP, and XXSPLTI32DX) will need this patch applied (or else I would just have to reformulate the p

Ping [PATCH] Change rs6000_const_f32_to_i32 return type.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. This is independent of the other patches. | Date: Tue, 18 May 2021 16:39:28 -0400 | Subject: [PATCH] Change rs6000_const_f32_to_i32 return type. | Message-ID: <20210518203928.ga15...@ibm-toto.the-meissners.org> -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA

Ping [PATCH] Allow __ibm128 on older PowerPC systems.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. This is independent of the other patches. | Date: Tue, 18 May 2021 16:36:32 -0400 | Subject: [PATCH] Allow __ibm128 on older PowerPC systems. | Message-ID: <20210518203632.ga15...@ibm-toto.the-meissners.org> -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 014

Ping [PATCH] Fix long double tests when default long double is not IBM.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. This is independent of the other patches. | Date: Tue, 18 May 2021 16:32:33 -0400 | Subject: [PATCH] Fix long double tests when default long double is not IBM. | Message-ID: <20210518203233.ga15...@ibm-toto.the-meissners.org> -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street,

Ping [PATCH 2/2] Add IEEE 128-bit fp conditional move on PowerPC.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch. | Subject: [PATCH 2/2] Add IEEE 128-bit fp conditional move on PowerPC. | Message-ID: <20210518202827.gb14...@ibm-toto.the-meissners.org> Note this patch needs the following patch before it can be applied. | Subject: [PATCH 1/2] Add IEEE 128-bit min/max support on PowerPC. | Message-

Ping [PATCH 1/2] Add IEEE 128-bit min/max support on PowerPC.

2021-05-24 Thread Michael Meissner via Gcc-patches
Ping patch: | Subject: [PATCH 1/2] Add IEEE 128-bit min/max support on PowerPC. | Message-ID: <20210518202606.ga14...@ibm-toto.the-meissners.org> -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797

Re: [Patch] OpenMP/Fortran: Handle polymorphic scalars in data-sharing FIRSTPRIVATE [PR86470]

2021-05-24 Thread Jakub Jelinek via Gcc-patches
On Wed, Mar 10, 2021 at 11:55:43AM +0100, Tobias Burnus wrote: > --- a/gcc/fortran/trans-openmp.c > +++ b/gcc/fortran/trans-openmp.c > @@ -360,6 +360,39 @@ gfc_has_alloc_comps (tree type, tree decl) >return false; > } > > +/* Return true if TYPE is polymorphic but not with pointer attribute.

[PATCH 1/4] C-SKY: Add fpuv3 instructions and CK860 arch.

2021-05-24 Thread Geng Qi via Gcc-patches
gcc/ChangeLog: * config/csky/constraints.md ("W"): New constriant for mem operand with base reg, index register. ("Q"): Renamed and modified "csky_valid_fpuv2_mem_operand" to "csky_valid_mem_constraint_operand" to deal with both "Q" and "W" constraint.

[PATCH 4/4] C-SKY: Separate FRAME_POINTER_REGNUM into FRAME_POINTER_REGNUM and HARD_FRAME_POINTER_REGNUM.

2021-05-24 Thread Geng Qi via Gcc-patches
gcc/ChangeLog: * config/csky/csky.h (FRAME_POINTER_REGNUM): Use HARD_FRAME_POINTER_REGNUM and FRAME_POINTER_REGNUM instead of the signle definition. The signle definition may not work well at simplify_subreg_regno(). (ELIMINABLE_REGS): Add for HARD_FRAME_POI

[PATCH 3/4] C-SKY: Bug fix for bad setting of TARGET_DSP and TARGET_DIV.

2021-05-24 Thread Geng Qi via Gcc-patches
gcc/ChangeLog: * config/csky/csky.c (csky_option_override): Init csky_arch_isa_features[] advanced, so TARGET_DSP and TARGET_DIV can be set well. --- gcc/config/csky/csky.c | 24 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gcc/

[PATCH 2/4] C-SKY: Delete LO_REGS and HI_REGS, use HILO_REGS instead.

2021-05-24 Thread Geng Qi via Gcc-patches
gcc/ChangeLog: * config/csky/constraints.md ("l", "h"): Delete. * config/csky/csky.h (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Delete LO_REGS and HI_REGS. * config/csky/csky.c (regno_reg_classm, csky_secondary_reload, csky_register_move_cost):

RE: [PATCH 9/9] arm: Auto-vectorization for MVE: vld4/vst4

2021-05-24 Thread Kyrylo Tkachov via Gcc-patches
> -Original Message- > From: Gcc-patches On Behalf Of > Christophe Lyon via Gcc-patches > Sent: 30 April 2021 15:10 > To: gcc-patches@gcc.gnu.org > Subject: [PATCH 9/9] arm: Auto-vectorization for MVE: vld4/vst4 > > This patch enables MVE vld4/vst4 instructions for auto-vectorization.

RE: [PATCH 8/9] arm: Auto-vectorization for MVE: vld2/vst2

2021-05-24 Thread Kyrylo Tkachov via Gcc-patches
> -Original Message- > From: Gcc-patches On Behalf Of > Christophe Lyon via Gcc-patches > Sent: 30 April 2021 15:10 > To: gcc-patches@gcc.gnu.org > Subject: [PATCH 8/9] arm: Auto-vectorization for MVE: vld2/vst2 > > This patch enables MVE vld2/vst2 instructions for auto-vectorization.

[PATCH v2] AArch64: Improve GOT addressing

2021-05-24 Thread Wilco Dijkstra via Gcc-patches
Version v2 uses movsi/di for GOT accesses until after reload as suggested. This caused worse spilling, however improving the costs of GOT accesses resulted in better codesize and performance gains: Improve GOT addressing by treating the instructions as a pair. This reduces register pressure and i

Re: [PATCH] Hashtable PR96088

2021-05-24 Thread Jonathan Wakely via Gcc-patches
On 22/05/21 18:35 +0200, François Dumont wrote: This was indeed the right approach.     The only minor drawback is that __is_noexcept_invocable<> combines noexcept qualification of the conversion and of the hash functor. So if the hash functor is not noexcept we could end up creating temporar

Re: [PATCH] Hashtable PR96088

2021-05-24 Thread Jonathan Wakely via Gcc-patches
On 24/05/21 11:31 +0200, François Dumont wrote: On 20/05/21 6:44 pm, Jonathan Wakely wrote: On 06/05/21 22:03 +0200, François Dumont via Libstdc++ wrote: Hi     Considering your feedback on backtrace in debug mode is going to take me some time so here is another one.     Compared to latest

Re: [PATCH] C-SKY: Add fpuv3 instructions and CK860 arch.

2021-05-24 Thread Xianmiao Qu
Hi Geng Qi, I tested this patch but it got the following error when compiling libgcc, during RTL pass: reload/lhome/quxm/build-csky-upstream/source//gcc/libgcc/libgcc2.c: In function '__mulsc3':/lhome/quxm/build-csky-upstream/source//gcc/libgcc/libgcc2.c:2010:1: internal compiler error: max

Re: [PATCH][vect] Use main loop's thresholds and vectorization factor to narrow upper_bound of epilogue

2021-05-24 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > Hi, > > When vectorizing with --param vect-partial-vector-usage=1 the vectorizer > uses an unpredicated (all-true predicate for SVE) main loop and a > predicated tail loop. The way this was implemented seems to mean it > re-uses the same vector-mode for both loo

Re: [PATCH] avoid -Wnonnull with lambda (PR 100684)

2021-05-24 Thread Martin Liška
On 5/20/21 10:03 AM, Richard Biener wrote: Martin - was this intended? Can you fix it up please? (g:cb50701ec2c7) It was not intentional. Fixed in the attached patch (where I did a refactoring as well). Patch can bootstrap on x86_64-linux-gnu and survives regression tests. Ready to be insta

[PATCH] Extend is_cond_scalar_reduction to handle nop_expr after/before scalar reduction.[PR98365]

2021-05-24 Thread Hongtao Liu via Gcc-patches
Hi: Details described in PR. Bootstrapped and regtest on x86_64-linux-gnu{-m32,}/x86_64-linux-gnu{-m32\ -march=cascadelake,-march=cascadelake} Ok for trunk? gcc/ChangeLog: PR tree-optimization/pr98365 * tree-if-conv.c (strip_nop_cond_scalar_reduction): New function.

[PATCH] [i386] Support avx512 vector shift with vector [PR98434]

2021-05-24 Thread Hongtao Liu via Gcc-patches
Hi: This patch is about to add expanders for vashl, vlshr, vashr and vashr. Besides there's some assumption in expand_mult_const that mul and add must be available at the same time, but for i386, addv8qi is restricted under TARGET_64BIT, but mulv8qi not, that could cause ICE. So restrict mulv8qi

Re: [PATCH] Hashtable PR96088

2021-05-24 Thread François Dumont via Gcc-patches
On 20/05/21 6:44 pm, Jonathan Wakely wrote: On 06/05/21 22:03 +0200, François Dumont via Libstdc++ wrote: Hi     Considering your feedback on backtrace in debug mode is going to take me some time so here is another one.     Compared to latest submission I've added a _Hash_arg_t partial spec

[PATCH] rs6000: Remove unspecs for vec_mrghl[bhw]

2021-05-24 Thread Xionghu Luo via Gcc-patches
From: Xiong Hu Luo vmrghb only accepts permute index {0, 16, 1, 17, 2, 18, 3, 19, 4, 20, 5, 21, 6, 22, 7, 23} no matter for BE or LE in ISA, similarly for vmrghlb. Remove UNSPEC_VMRGH_DIRECT/UNSPEC_VMRGL_DIRECT pattern as vec_select + vec_concat as normal RTL. Tested pass on P8LE, P9LE and P8BE{

Re: RFA: save/restore target options in handle_optimize_attribute

2021-05-24 Thread Martin Liška
On 5/20/21 9:55 AM, Richard Biener wrote: On Thu, May 20, 2021 at 12:29 AM Joern Wolfgang Rennecke wrote: We set default for some target options in TARGET_OPTION_OPTIMIZATION_TABLE, but these can be overridden by specifying the corresponding explicit -mXXX / -mno-XXX options. When a function b

Re: [PATCH] lto-dump : Fix an ICE when lto-dump try to call 'get_size()' on thunk symbols.

2021-05-24 Thread Martin Liška
On 5/21/21 12:25 PM, 王留帅 via Gcc-patches wrote: |Hi, ​ We, ByteDance, have seen an ICE on trunk which can be reproduced with the following symbol testcase. The problem is caused by referencing a null pointer when applying 'n_basic_blocks_for_fn' on a thunk symbol. For the thunk symbol, 'DECL_S

Re: [PATCH] Add no_sanitize_coverage attribute.

2021-05-24 Thread Marco Elver via Gcc-patches
On Mon, 24 May 2021 at 10:03, Martin Liška wrote: > On 5/21/21 2:39 PM, Marco Elver wrote: > > On Fri, May 21, 2021 at 10:50AM +0200, Martin Liška wrote: > >> On 5/20/21 12:55 PM, Marco Elver wrote: > >>> I think this came up with other no_sanitize [1] based on what I had > >>> written to you last

Re: [PATCH] Try LTO partial linking. (Was: Speed of compiling gimple-match.c)

2021-05-24 Thread Martin Liška
On 5/21/21 2:35 PM, David Edelsohn wrote: Please remember that not all targets support LTO so a fallback to a non-partial-LTO build needs to be provided and automatically invoked for those targets. Sure, for now it's definitely going to be a opt-in, enabled by something like: make PARTIAL_LTO=1

Re: [PATCH] Add no_sanitize_coverage attribute.

2021-05-24 Thread Martin Liška
On 5/21/21 2:39 PM, Marco Elver wrote: On Fri, May 21, 2021 at 10:50AM +0200, Martin Liška wrote: On 5/20/21 12:55 PM, Marco Elver wrote: I think this came up with other no_sanitize [1] based on what I had written to you last year [2]. [1]https://gcc.gnu.org/pipermail/gcc-patches/2020-June/547

Re: [wwwdocs, patch] htdocs/gitwrite.html: Clarify ChangeLog generation

2021-05-24 Thread Gerald Pfeifer
On Sun, 23 May 2021, Tobias Burnus wrote: > As there was some confusion regarding when the ChangeLog is generated, > I propose the attached wwwdocs patch. Comments? -Apply the patch to your local tree. ChangeLog entries will be -automatically added to the corresponding ChangeLog files based -on t

Re: [PATCH, rs6000] Remove mode promotion of SSA variables

2021-05-24 Thread HAO CHEN GUI via Gcc-patches
Hi, On 20/5/2021 下午 9:08, Segher Boessenkool wrote: Hi! On Thu, May 20, 2021 at 04:29:07PM +0800, HAO CHEN GUI wrote: On 19/5/2021 下午 9:20, Segher Boessenkool wrote: On Wed, May 19, 2021 at 04:36:00PM +0800, HAO CHEN GUI wrote: -/* Define this macro if it is advisable to hold scalars in regi

Re: [PATCH][vect] Use main loop's thresholds and vectorization factor to narrow upper_bound of epilogue

2021-05-24 Thread Kewen.Lin via Gcc-patches
Hi Andre, on 2021/5/24 下午2:17, Andre Vieira (lists) via Gcc-patches wrote: > Hi, > > When vectorizing with --param vect-partial-vector-usage=1 the vectorizer uses > an unpredicated (all-true predicate for SVE) main loop and a predicated tail > loop. The way this was implemented seems to mean it

Re: [PATCH 9/9] arm: Auto-vectorization for MVE: vld4/vst4

2021-05-24 Thread Christophe Lyon via Gcc-patches
ping? On Mon, 17 May 2021 at 11:55, Christophe Lyon wrote: > > ping? > > On Tue, 4 May 2021 at 16:57, Christophe Lyon > wrote: > > > > On Tue, 4 May 2021 at 14:03, Andre Vieira (lists) > > wrote: > > > > > > Hi Christophe, > > > > > > The series LGTM but you'll need the approval of an arm port

Re: [PATCH 8/9] arm: Auto-vectorization for MVE: vld2/vst2

2021-05-24 Thread Christophe Lyon via Gcc-patches
ping? On Mon, 17 May 2021 at 11:55, Christophe Lyon wrote: > > ping? > > On Fri, 30 Apr 2021 at 16:09, Christophe Lyon > wrote: > > > > This patch enables MVE vld2/vst2 instructions for auto-vectorization. > > We move the existing expanders from neon.md and enable them for MVE, > > calling the r

Re: [wwwdocs, patch] htdocs/gitwrite.html: Clarify ChangeLog generation

2021-05-24 Thread Martin Liška
On 5/23/21 2:37 PM, Tobias Burnus wrote: As there was some confusion regarding when the ChangeLog is generated, I propose the attached wwwdocs patch. Comments? I support the change. Moreover, I'm going to install the following patch that adds a note about ChangeLog entries. Martin (Side rem