Re: [PATCH][DOCS] Mention removed ports in GCC 13.

2022-08-26 Thread Gerald Pfeifer
On Fri, 26 Aug 2022, Martin Liška wrote: > Ready for master? Looks fine. Tthank you, Martin! Gerald

[PATCH] driver: Extend 'getenv' function to allow default value

2022-08-26 Thread Keith Packard via Gcc-patches
Right now, a missing environment variable provided to the 'getenv' function in a .specs file causes a fatal error. That makes writing a spec file that uses the GCC_EXEC_PREFIX value difficult as that variable is only set when the driver has been relocated, but not when run from the defined

[PATCH] rs6000: Don't ICE when we disassemble an MMA variable [PR101322]

2022-08-26 Thread Peter Bergner via Gcc-patches
When we expand an MMA disassemble built-in with C++ using a pointer that is casted to a valid MMA type, the type isn't passed down to the expand machinery and we end up using the base type of the pointer which leads to an ICE. This patch enforces we always use the correct MMA type regardless of

Re: [EXTERNAL] [PATCH] contrib: modernize gen_autofdo_event.py

2022-08-26 Thread Xi Ruoyao via Gcc-patches
On Fri, 2022-08-26 at 22:20 +, Eugene Rozenfeld wrote: > The patch is approved. Thanks, pushed r13-2234. -- Xi Ruoyao School of Aerospace Science and Technology, Xidian University

[PATCH] c++: Fix C++11 attribute propagation [PR106712]

2022-08-26 Thread Marek Polacek via Gcc-patches
When we have [[noreturn]] int fn1 [[nodiscard]](), fn2(); "noreturn" should apply to both fn1 and fn2 but "nodiscard" only to fn1: [dcl.pre]/3: "The attribute-specifier-seq appertains to each of the entities declared by the declarators of the init-declarator-list." [dcl.spec.general]: "The

RE: [EXTERNAL] [PATCH] contrib: modernize gen_autofdo_event.py

2022-08-26 Thread Eugene Rozenfeld via Gcc-patches
The patch is approved. Eugene -Original Message- From: Andi Kleen Sent: Friday, August 05, 2022 11:29 PM To: Eugene Rozenfeld ; Xi Ruoyao ; gcc-patches@gcc.gnu.org Subject: Re: [EXTERNAL] [PATCH] contrib: modernize gen_autofdo_event.py On 8/6/2022 1:07 AM, Eugene Rozenfeld wrote: >

Re: [PATCH 2/2] vec: Add array_slice::bsearch

2022-08-26 Thread Martin Jambor
Hi, On Fri, Aug 26 2022, Richard Sandiford wrote: > Richard Biener writes: >>> Am 26.08.2022 um 18:40 schrieb Martin Jambor : >>> >>> Hi, >>> >>> This adds a method to binary search in a sorted array_slice. >>> >>> The implementation is direct copy of vec:bsearch. Moreover, to only >>> copy

New Swedish PO file for 'gcc' (version 12.2.0)

2022-08-26 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the Swedish team of translators. The file is available at: https://translationproject.org/latest/gcc/sv.po (This file, 'gcc-12.2.0.sv.po', has

Re: [PATCH 2/2] vec: Add array_slice::bsearch

2022-08-26 Thread Martin Jambor
Hi, On Fri, Aug 26 2022, Richard Biener wrote: >> Am 26.08.2022 um 18:40 schrieb Martin Jambor : >> >> Hi, >> >> This adds a method to binary search in a sorted array_slice. >> >> The implementation is direct copy of vec:bsearch. Moreover, to only >> copy it once and not twice, I used

Re: [PATCH 2/2] vec: Add array_slice::bsearch

2022-08-26 Thread Richard Sandiford via Gcc-patches
Richard Biener writes: >> Am 26.08.2022 um 18:40 schrieb Martin Jambor : >> >> Hi, >> >> This adds a method to binary search in a sorted array_slice. >> >> The implementation is direct copy of vec:bsearch. Moreover, to only >> copy it once and not twice, I used const_cast in the non-const >>

[PATCH] libstdc++: Add [[nodiscard]] attribute to and

2022-08-26 Thread Jonathan Wakely via Gcc-patches
I plan to commit this after testing finishes, probably on Monday. Basic testing on powerpc64le-linux is clean, but I'm still running debug mode and other variations of tests. -- >8 -- libstdc++-v3/ChangeLog: * include/bits/basic_string.h (basic_string): Add nodiscard attribute

Re: [PATCH 3/3] libstdc++: Implement ranges::zip_view from P2321R2

2022-08-26 Thread Jonathan Wakely via Gcc-patches
On Tue, 23 Aug 2022 at 02:38, Patrick Palka via Libstdc++ wrote: > +template > + constexpr void > + __tuple_for_each(_Fp&& __f, _Tuple&& __tuple) > + { > + std::apply([&](_Ts&&... __elts) { > + (std::__invoke(__f, std::forward<_Ts>(__elts)), ...); > + },

Re: [PATCH 1/2] vec: Add array_slice constructors from non-const and gc vectors

2022-08-26 Thread Martin Jambor
Hi, On Fri, Aug 26 2022, Richard Biener wrote: >> Am 26.08.2022 um 18:39 schrieb Martin Jambor : >> >> Hi, >> >> This patch adds constructors of array_slice that are required to >> create them from non-const (heap or auto) vectors or from GC vectors. >> >> The use of non-const array_slices is

Re: [PATCH 1/2] libstdc++: Implement ranges::zip_transform_view from P2321R2

2022-08-26 Thread Jonathan Wakely via Gcc-patches
On Thu, 25 Aug 2022 at 16:40, Patrick Palka via Libstdc++ wrote: > > Tested on x86_64-pc-linux-gnu, does this look OK for trunk? OK, thanks. > > libstdc++-v3/ChangeLog: > > * include/std/ranges (zip_view::_Iterator): Befriend > zip_transform_view. >

Re: [PATCH 2/2] libstdc++: Implement LWG 3692/3702 changes to zip_/zip_transform_view

2022-08-26 Thread Jonathan Wakely via Gcc-patches
On Thu, 25 Aug 2022 at 16:40, Patrick Palka via Libstdc++ wrote: > > Tested on x86_64-pc-linux-gnu, does this look OK for trunk? OK, thanks. > > libstdc++-v3/ChangeLog: > > * include/std/ranges (zip_view::_Iterator::operator<): Remove. > (zip_view::_Iterator::operator>):

Re: [PATCH] Add support for floating point endpoints to frange.

2022-08-26 Thread Andrew Pinski via Gcc-patches
On Fri, Aug 26, 2022 at 12:16 PM Aldy Hernandez wrote: > > On Fri, Aug 26, 2022 at 7:40 PM Andrew Pinski wrote: > > > > On Fri, Aug 26, 2022 at 8:55 AM Aldy Hernandez wrote: > > > > > > [pinskia: I'm CCing you as the author of the match.pd pattern.] > > > > > > So, as I wrap up the work here

Re: [PATCH] Add support for floating point endpoints to frange.

2022-08-26 Thread Aldy Hernandez via Gcc-patches
On Fri, Aug 26, 2022 at 7:40 PM Andrew Pinski wrote: > > On Fri, Aug 26, 2022 at 8:55 AM Aldy Hernandez wrote: > > > > [pinskia: I'm CCing you as the author of the match.pd pattern.] > > > > So, as I wrap up the work here (latest patch attached), I see there's > > another phiopt regression (not

Re: [PATCH] 32-bit PA-RISC with HP-UX: remove deprecated ports

2022-08-26 Thread John David Anglin
On 2022-08-26 3:15 a.m., Martin Liška wrote: fixincludes/ChangeLog: * configure: Regenerate. * inclhack.def: Remove patterns for deprecated ports. * fixincl.x: Regenerate. There are problems with the fixincludes changes.  These break build on hppa64-hpux11.

Re: [PATCH 2/2] vec: Add array_slice::bsearch

2022-08-26 Thread Richard Biener via Gcc-patches
> Am 26.08.2022 um 18:40 schrieb Martin Jambor : > > Hi, > > This adds a method to binary search in a sorted array_slice. > > The implementation is direct copy of vec:bsearch. Moreover, to only > copy it once and not twice, I used const_cast in the non-const > variants to be able to use

Re: [PATCH 1/2] vec: Add array_slice constructors from non-const and gc vectors

2022-08-26 Thread Richard Biener via Gcc-patches
> Am 26.08.2022 um 18:39 schrieb Martin Jambor : > > Hi, > > This patch adds constructors of array_slice that are required to > create them from non-const (heap or auto) vectors or from GC vectors. > > The use of non-const array_slices is somewhat limited, as creating one > from const vec

[Patch] OpenMP/Fortran: Permit end-clause on directive

2022-08-26 Thread Tobias Burnus
I did run into some issues related to this; those turned out to be unrelated, but I end ended up implementing this feature. Side remark: 'omp parallel workshare' seems to actually permit 'nowait' now, but I guess that's an unintended change due to the syntax-representation change. Hence, it is

Re: [PATCH] Add support for floating point endpoints to frange.

2022-08-26 Thread Aldy Hernandez via Gcc-patches
On Fri, Aug 26, 2022, 19:40 Andrew Pinski wrote: > On Fri, Aug 26, 2022 at 8:55 AM Aldy Hernandez wrote: > > > > [pinskia: I'm CCing you as the author of the match.pd pattern.] > > > > So, as I wrap up the work here (latest patch attached), I see there's > > another phiopt regression (not

Re: [PATCH v5] c++: Implement -Wself-move warning [PR81159]

2022-08-26 Thread Jason Merrill via Gcc-patches
On 8/26/22 13:04, Marek Polacek wrote: On Thu, Aug 25, 2022 at 08:52:58PM -0400, Jason Merrill wrote: On 8/25/22 17:49, Marek Polacek wrote: On Thu, Aug 25, 2022 at 09:25:43AM -0400, Jason Merrill wrote: On 8/24/22 17:30, Marek Polacek wrote: On Tue, Aug 23, 2022 at 05:27:00PM -0400, Jason

Re: [PATCH] Add support for floating point endpoints to frange.

2022-08-26 Thread Andrew Pinski via Gcc-patches
On Fri, Aug 26, 2022 at 8:55 AM Aldy Hernandez wrote: > > [pinskia: I'm CCing you as the author of the match.pd pattern.] > > So, as I wrap up the work here (latest patch attached), I see there's > another phiopt regression (not spaceship related). I was hoping > someone could either give me a

[PATCH] x86: Handle V16BF in ix86_avx256_split_vector_move_misalign

2022-08-26 Thread H.J. Lu via Gcc-patches
Handle E_V16BFmode in ix86_avx256_split_vector_move_misalign and add V16BF to V_256H iterator. gcc/ PR target/106748 * config/i386/i386-expand.cc (ix86_avx256_split_vector_move_misalign): Handle E_V16BFmode. * config/i386/sse.md (V_256H): Add V16BF.

Re: [PATCH] Implement __builtin_issignaling

2022-08-26 Thread Michael Meissner via Gcc-patches
On Thu, Aug 25, 2022 at 09:56:18PM +0200, Jakub Jelinek wrote: > On Thu, Aug 25, 2022 at 03:23:12PM -0400, Michael Meissner wrote: > > On Mon, Aug 15, 2022 at 12:12:02PM +0200, Jakub Jelinek via Gcc-patches > > wrote: > > > Hi! > > > > > > The following patch implements a new builtin,

[PATCH v5] c++: Implement -Wself-move warning [PR81159]

2022-08-26 Thread Marek Polacek via Gcc-patches
On Thu, Aug 25, 2022 at 08:52:58PM -0400, Jason Merrill wrote: > On 8/25/22 17:49, Marek Polacek wrote: > > On Thu, Aug 25, 2022 at 09:25:43AM -0400, Jason Merrill wrote: > > > On 8/24/22 17:30, Marek Polacek wrote: > > > > On Tue, Aug 23, 2022 at 05:27:00PM -0400, Jason Merrill wrote: > > > > >

Re: [PATCH] x86: Cast stride to __PTRDIFF_TYPE__ in AMX intrinsics

2022-08-26 Thread H.J. Lu via Gcc-patches
On Mon, Aug 22, 2022 at 7:05 PM Hongtao Liu wrote: > > On Tue, Aug 23, 2022 at 1:02 AM H.J. Lu wrote: > > > > On 64-bit Windows, long is 32 bits and can't be used as stride in memory > > operand when base is a pointer which is 64 bits. Cast stride to > > __PTRDIFF_TYPE__, instead of long. > Ok.

Re: [PATCH] [ranger] x == -0.0 does not mean we can replace x with -0.0

2022-08-26 Thread Jakub Jelinek via Gcc-patches
On Fri, Aug 26, 2022 at 05:46:06PM +0200, Aldy Hernandez wrote: > On the true side of x == -0.0, we can't just blindly value propagate > the -0.0 into every use of x because x could be +0.0 (or vice versa). > > With this change, we only allow the transformation if > !HONOR_SIGNED_ZEROS or if the

[PATCH 2/2] vec: Add array_slice::bsearch

2022-08-26 Thread Martin Jambor
Hi, This adds a method to binary search in a sorted array_slice. The implementation is direct copy of vec:bsearch. Moreover, to only copy it once and not twice, I used const_cast in the non-const variants to be able to use the const variants. I hope that is acceptable abuse of const_cast but

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Aldy Hernandez via Gcc-patches
On Fri, Aug 26, 2022 at 6:34 PM Jeff Law wrote: > > > > On 8/26/2022 10:24 AM, Aldy Hernandez wrote: > > On Fri, Aug 26, 2022 at 6:08 PM Jeff Law via Gcc-patches > > wrote: > >> > >> > >> On 8/23/2022 4:33 AM, Aldy Hernandez via Gcc-patches wrote: > >>> For the frange implementation with

[PATCH 1/2] vec: Add array_slice constructors from non-const and gc vectors

2022-08-26 Thread Martin Jambor
Hi, This patch adds constructors of array_slice that are required to create them from non-const (heap or auto) vectors or from GC vectors. The use of non-const array_slices is somewhat limited, as creating one from const vec still leads to array_slice, so I eventually also only resorted to

Re: [PATCH] Remove uninit_analysis::use_cannot_happen

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/26/2022 12:55 AM, Richard Biener via Gcc-patches wrote: As written earlier uninit_analysis::use_cannot_happen is duplicate functionality implemented in a complement way, not adhering to the idea of disproving a may-uninit use and eventually (I have not yet found a testcase it helps to

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/26/2022 10:25 AM, Aldy Hernandez wrote: On Fri, Aug 26, 2022 at 6:09 PM Jeff Law via Gcc-patches wrote: On 8/26/2022 9:43 AM, Aldy Hernandez via Gcc-patches wrote: Another real.* tweak. This time, adding a real_iszero() entry point to match the real_isnegzero. I could combine this

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/26/2022 10:24 AM, Aldy Hernandez wrote: On Fri, Aug 26, 2022 at 6:08 PM Jeff Law via Gcc-patches wrote: On 8/23/2022 4:33 AM, Aldy Hernandez via Gcc-patches wrote: For the frange implementation with endpoints I'm about to contribute, we need to set REAL_VALUE_TYPEs with negative

Re: [PATCH 6/6] Extend SLP permutation optimisations

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/25/2022 7:07 AM, Richard Sandiford via Gcc-patches wrote: Currently SLP tries to force permute operations "down" the graph from loads in the hope of reducing the total number of permutations needed or (in the best case) removing the need for the permutations entirely. This patch tries

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Aldy Hernandez via Gcc-patches
On Fri, Aug 26, 2022 at 6:09 PM Jeff Law via Gcc-patches wrote: > > > > On 8/26/2022 9:43 AM, Aldy Hernandez via Gcc-patches wrote: > > Another real.* tweak. This time, adding a real_iszero() entry point > > to match the real_isnegzero. I could combine this patch with the > > negative infinity

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Aldy Hernandez via Gcc-patches
On Fri, Aug 26, 2022 at 6:08 PM Jeff Law via Gcc-patches wrote: > > > > On 8/23/2022 4:33 AM, Aldy Hernandez via Gcc-patches wrote: > > For the frange implementation with endpoints I'm about to contribute, > > we need to set REAL_VALUE_TYPEs with negative infinity. The support > > is already

Re: [PATCH 1/2] Improve compute_control_dep_chain documentation

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/26/2022 6:34 AM, Richard Biener via Gcc-patches wrote: In the quest to understand how compute_control_dep_chain works I've produced the following two changes, documenting PR106754 on the way. Bootstrap and regtest is running on x86_64-unknown-linux-gnu, the changes should be no-ops but

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/26/2022 9:43 AM, Aldy Hernandez via Gcc-patches wrote: Another real.* tweak. This time, adding a real_iszero() entry point to match the real_isnegzero. I could combine this patch with the negative infinity one in this thread if y'all would prefer. OK pending tests? p.s. I'd really

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Jeff Law via Gcc-patches
On 8/23/2022 4:33 AM, Aldy Hernandez via Gcc-patches wrote: For the frange implementation with endpoints I'm about to contribute, we need to set REAL_VALUE_TYPEs with negative infinity. The support is already there in real.cc, but it is awkward to get at. One could call real_inf() and then

Re: [PATCH] Add support for floating point endpoints to frange.

2022-08-26 Thread Aldy Hernandez via Gcc-patches
[pinskia: I'm CCing you as the author of the match.pd pattern.] So, as I wrap up the work here (latest patch attached), I see there's another phiopt regression (not spaceship related). I was hoping someone could either give me a hand, or offer some guidance. The failure is in

Re: [PATCH V2] Add warning options -W[no-]compare-distinct-pointer-types

2022-08-26 Thread Jose E. Marchesi via Gcc-patches
> On Thu, 18 Aug 2022, Jose E. Marchesi via Gcc-patches wrote: > >> diff --git a/gcc/c/c-typeck.cc b/gcc/c/c-typeck.cc >> index de8780a1502..04af02add37 100644 >> --- a/gcc/c/c-typeck.cc >> +++ b/gcc/c/c-typeck.cc >> @@ -12397,7 +12397,8 @@ build_binary_op (location_t location, enum tree_code

[PATCH] Make all default vrange setters set VARYING.

2022-08-26 Thread Aldy Hernandez via Gcc-patches
frange is using some of the default vrange setters, some of which are leaving the range in an undefined state. We hadn't noticed this because neither frange nor unsupported_range, both which use some of the default implementation, weren't being used much. We can never go wrong with setting

[PATCH] [ranger] x == -0.0 does not mean we can replace x with -0.0

2022-08-26 Thread Aldy Hernandez via Gcc-patches
On the true side of x == -0.0, we can't just blindly value propagate the -0.0 into every use of x because x could be +0.0 (or vice versa). With this change, we only allow the transformation if !HONOR_SIGNED_ZEROS or if the range is known not to contain 0. Will commit after tests complete.

Re: [PATCH] Add set/get functions for negative infinity in real.*

2022-08-26 Thread Aldy Hernandez via Gcc-patches
Another real.* tweak. This time, adding a real_iszero() entry point to match the real_isnegzero. I could combine this patch with the negative infinity one in this thread if y'all would prefer. OK pending tests? p.s. I'd really like to go and benchmark all this real.* stuff (later), because I

[committed] libstdc++: Simplify std::error_code and std::error_condition

2022-08-26 Thread Jonathan Wakely via Gcc-patches
Tested powerpc64le-linux, pushed to trunk. -- >8 -- This removes the redundant operator=(E) from std::error_code and std::error_condition. Without that overload, assignment from a custom type will use the templated constructor to create a temporary and then use the trivial copy assignment

[committed] libstdc++: Add nonnull to starts_with/ends_with/contains string members

2022-08-26 Thread Jonathan Wakely via Gcc-patches
Tested powerpc64le-linux, pushed to trunk. -- >8 -- Ideally this wouldn't be needed, because eventually these pointers all get passed to either the basic_string_view(const CharT*) constructor, or to basic_string_view::find(const CharT*), both of which already have the attribute. But for that to

[PATCH][RFC] libstdc++: Optimize std::chrono::abs

2022-08-26 Thread Jonathan Wakely via Gcc-patches
While looking into LWG 3741 I came up with this small change to chrono::abs, which reduces how much work the compiler does to compile it, but makes the code less clear. The current implementation is very easy to understand, and compiling chrono::abs probably isn't a hotspot in anybody's build. Is

Re: [Patch] libgomp/nvptx: Prepare for reverse-offload callback handling

2022-08-26 Thread Alexander Monakov via Gcc-patches
On Fri, 26 Aug 2022, Tobias Burnus wrote: > @Tom and Alexander: Better suggestions are welcome for the busy loop in > libgomp/plugin/plugin-nvptx.c regarding the variable placement and checking > its value. I think to do that without polling you can use PTX 'brkpt' instruction on the device

Re: [PATCH] libstdc++: Optimize std::con/disjunction, __and_/__or_, etc

2022-08-26 Thread Jonathan Wakely via Gcc-patches
On Fri, 26 Aug 2022 at 14:45, Patrick Palka via Libstdc++ wrote: > > On Wed, 24 Aug 2022, Patrick Palka wrote: > > > The internal type-level logical operations __and_ and __or_ are > > currently quite slow to compile for a couple of reasons: > > > > 1. They are drop-in replacements for

Re: [PATCH] libcpp: Implement P2362R3 - Remove non-encodable wide character literals and multicharacter [PR106647]

2022-08-26 Thread Jason Merrill via Gcc-patches
On 8/26/22 03:35, Jakub Jelinek wrote: Hi! My understanding of the paper is that we just want to promote the CPP_WCHAR "character constant too long for its type" warning to error as it is already error for u8, u and U literals. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for

Re: [[GCC13][Patch][V3] 1/2] Add a new option -fstrict-flex-array[=n] and new attribute strict_flex_array

2022-08-26 Thread Qing Zhao via Gcc-patches
> On Aug 26, 2022, at 4:48 AM, Richard Biener wrote: > > On Wed, 17 Aug 2022, Qing Zhao wrote: > >> Add the following new option -fstrict-flex-array[=n] and a corresponding >> attribute strict_flex_array to GCC: >> >> '-fstrict-flex-array' >> Treat the trailing array of a structure as a

Re: [PATCH] libstdc++: Optimize std::con/disjunction, __and_/__or_, etc

2022-08-26 Thread Patrick Palka via Gcc-patches
On Wed, 24 Aug 2022, Patrick Palka wrote: > The internal type-level logical operations __and_ and __or_ are > currently quite slow to compile for a couple of reasons: > > 1. They are drop-in replacements for std::con/disjunction, which > are rigidly specified to form a type that derives

Re: [[GCC13][Patch][V3] 2/2] Use array_at_struct_end_p in __builtin_object_size [PR101836]

2022-08-26 Thread Qing Zhao via Gcc-patches
> On Aug 26, 2022, at 4:49 AM, Richard Biener wrote: > > On Wed, 17 Aug 2022, Qing Zhao wrote: > >> Use array_at_struct_end_p to determine whether the trailing array >> of a structure is flexible array member in __builtin_object_size. > > With the discussion about what array_at_struct_end_p

Re: [PATCH v2] ipa-visibility: Optimize TLS access [PR99619]

2022-08-26 Thread Alexander Monakov via Gcc-patches
On Fri, 26 Aug 2022, Martin Jambor wrote: > > +/* Check if promoting general-dynamic TLS access model to local-dynamic is > > + desirable for DECL. */ > > + > > +static bool > > +optimize_dyn_tls_for_decl_p (const_tree decl) > > +{ > > + if (optimize) > > +return true; > > ...this. This

Re: [PATCH, rs6000] Change insn condition from TARGET_64BIT to TARGET_POWERPC64 for VSX scalar extract/insert instructions

2022-08-26 Thread David Edelsohn via Gcc-patches
On Thu, Aug 25, 2022 at 10:42 PM HAO CHEN GUI wrote: > > Hi David, > > On 25/8/2022 下午 10:01, David Edelsohn wrote: > > On Thu, Aug 25, 2022 at 1:22 AM Kewen.Lin wrote: > >> > >> on 2022/8/25 11:37, HAO CHEN GUI wrote: > >>> Hi, > >>> > >>> On 24/8/2022 下午 1:24, Kewen.Lin wrote: > Could you

RE: [PATCH] Add pattern to convert vector shift + bitwise and + multiply to vector compare in some cases.

2022-08-26 Thread Tamar Christina via Gcc-patches
> -Original Message- > From: Gcc-patches bounces+tamar.christina=arm@gcc.gnu.org> On Behalf Of Richard > Biener via Gcc-patches > Sent: Friday, August 26, 2022 10:08 AM > To: mtsamis > Cc: GCC Patches ; > jiangning@amperecomputing.com; Philipp Tomsich > > Subject: Re: [PATCH]

PING^2: [PATCH v3] eliminate mutex in fast path of __register_frame

2022-08-26 Thread Thomas Neumann via Gcc-patches
Summary: __register_frame and the corresponding _Unwind_Find_FDE use a global mutex for frame registration and unwinding. This can lead to very poor performance on machines with high core counts. This patch organizes the frames in a b-tree with read-optimized synchronization instead, which

[PATCH 2/2] Refactor init_use_preds and find_control_equiv_block

2022-08-26 Thread Richard Biener via Gcc-patches
The following inlines find_control_equiv_block and is_loop_exit into init_use_preds and refactors that for better readability and similarity with the post-dominator walk in compute_control_dep_chain. * gimple-predicate-analysis.cc (is_loop_exit, find_control_equiv_block): Inline

[PATCH 1/2] Improve compute_control_dep_chain documentation

2022-08-26 Thread Richard Biener via Gcc-patches
In the quest to understand how compute_control_dep_chain works I've produced the following two changes, documenting PR106754 on the way. Bootstrap and regtest is running on x86_64-unknown-linux-gnu, the changes should be no-ops but hopefully improve understanding of the code. -- The

Re: [PATCH v2] ipa-visibility: Optimize TLS access [PR99619]

2022-08-26 Thread Martin Jambor
Hi, sorry for ignoring this for so long, I hope that Honza wold take over. I think the patch would be good if it did not have On Thu, Jul 07 2022, Alexander Monakov via Gcc-patches wrote: > From: Artem Klimov > > Fix PR99619, which asks to optimize TLS model based on visibility. > The fix

[PATCH] RISC-V: Add vector registers and classification

2022-08-26 Thread juzhe . zhong
From: zhongjuzhe This patch is preparing patch for RVV support: 1. Add vector registers. 2. Add classification of RVV instructions in attribute 'type'. gcc/ChangeLog: * config/riscv/riscv.cc (riscv_v_ext_vector_mode_p): New function. (riscv_classify_address): Disallow

[Patch] libgomp: Add reverse-offload splay tree

2022-08-26 Thread Tobias Burnus
For reverse-offload data handling, we need to support: (a) device fn addr -> host fn address (b) finding already mapped host -> device vars via their device address For (a), the functions addrs, we need some extra code (cf. previous patches) as this information does not exist already. For (b),

Re: [PATCH 1/3] omp-simd-clone: Allow fixed-lane vectors

2022-08-26 Thread Jakub Jelinek via Gcc-patches
On Tue, Aug 09, 2022 at 02:23:48PM +0100, Andrew Stubbs wrote: > > The vecsize_int/vecsize_float has an assumption that all arguments will use > the same bitsize, and vary the number of lanes according to the element size, > but this is inappropriate on targets where the number of lanes is fixed

[PATCH] New testcase for uninit

2022-08-26 Thread Richard Biener via Gcc-patches
The following adds a testcase that illustrates a defect in compute_control_dep_chain and its attempt to identify loop exits as special to continue walking post-dominators but failing to do so for following post-dominators. On trunk there is now simple_control_dep_chain saving the day, avoiding

Re: [Patch] OpenMP: Support reverse offload (middle end part)

2022-08-26 Thread Jakub Jelinek via Gcc-patches
On Thu, Jul 21, 2022 at 02:33:32PM +0200, Tobias Burnus wrote: > OpenMP: Support reverse offload (middle end part) > > gcc/ChangeLog: > > * internal-fn.cc (expand_GOMP_TARGET_REV): New. > * internal-fn.def (GOMP_TARGET_REV): New. > * lto-cgraph.cc (lto_output_node,

Re: [PATCH][_GLIBCXX_DEBUG] Add basic_string::starts_with/ends_with checks

2022-08-26 Thread Jonathan Wakely via Gcc-patches
On Sun, 14 Aug 2022 at 16:34, François Dumont via Libstdc++ wrote: > > I think we can add those checks. > > Note that I wonder if it was needed as in basic_string_view I see usages > of __attribute__((__nonnull__)). But running the test I saw no impact > even after I try to apply this attribute

Re: [PATCH V4] rs6000: Optimize cmp on rotated 16bits constant

2022-08-26 Thread Jiufu Guo via Gcc-patches
Hi, Segher Boessenkool writes: > Hi! > > On Thu, Aug 25, 2022 at 08:11:31PM +0800, Jiufu Guo wrote: >> Segher Boessenkool writes: >> > You usually can split fine if you cannot create new pseudos, by reusing >> > existing registers. >> > >> > FAIL will cause an ICE: the RTL instruction does

Re: [PATCH 0/6] Optimise placement of SLP permutations

2022-08-26 Thread Richard Biener via Gcc-patches
On Thu, 25 Aug 2022, Richard Sandiford wrote: > This series is a follow-up from the RFC that I posted a while > back about optimising the placement of SLP permutations. > The main comment is in the final patch. > > Tested on aarch64-linux-gnu and x86_64-linux-gnu. If the series > is OK, I'll

Re: [PATCH][DOCS] Mention removed ports in GCC 13.

2022-08-26 Thread Richard Biener via Gcc-patches
On Fri, Aug 26, 2022 at 8:33 AM Martin Liška wrote: > > Ready for master? OK > Thanks, > Martin > > --- > htdocs/gcc-13/changes.html | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html > index c58ca1d4..e3f2ee44

Re: [PATCH] Add pattern to convert vector shift + bitwise and + multiply to vector compare in some cases.

2022-08-26 Thread Richard Biener via Gcc-patches
On Sat, Aug 13, 2022 at 11:59 AM mtsamis wrote: > > When using SWAR (SIMD in a register) techniques a comparison operation within > such a register can be made by using a combination of shifts, bitwise and and > multiplication. If code using this scheme is vectorized then there is > potential >

[Patch] libgomp/nvptx: Prepare for reverse-offload callback handling

2022-08-26 Thread Tobias Burnus
@Tom and Alexander: Better suggestions are welcome for the busy loop in libgomp/plugin/plugin-nvptx.c regarding the variable placement and checking its value. PRE-REMARK As nvptx (and all other plugins) returns <= 0 for GOMP_OFFLOAD_get_num_devices if GOMP_REQUIRES_REVERSE_OFFLOAD is set. This

Re: [[GCC13][Patch][V3] 2/2] Use array_at_struct_end_p in __builtin_object_size [PR101836]

2022-08-26 Thread Richard Biener via Gcc-patches
On Wed, 17 Aug 2022, Qing Zhao wrote: > Use array_at_struct_end_p to determine whether the trailing array > of a structure is flexible array member in __builtin_object_size. With the discussion about what array_at_struct_end_p actually computes, is this now the correct utility for

Re: [[GCC13][Patch][V3] 1/2] Add a new option -fstrict-flex-array[=n] and new attribute strict_flex_array

2022-08-26 Thread Richard Biener via Gcc-patches
On Wed, 17 Aug 2022, Qing Zhao wrote: > Add the following new option -fstrict-flex-array[=n] and a corresponding > attribute strict_flex_array to GCC: > > '-fstrict-flex-array' > Treat the trailing array of a structure as a flexible array member > in a stricter way. The positive form

Re: [PATCH] d: Fix #error You must define PREFERRED_DEBUGGING_TYPE if DWARF is not supported (PR105659)

2022-08-26 Thread Richard Biener via Gcc-patches
On Tue, Aug 16, 2022 at 11:17 PM Iain Buclaw via Gcc-patches wrote: > > Hi, > > Because targetdm contains hooks pertaining to both the target platform > and cpu, it tries to pull in both platform and cpu headers via tm_d.h in > the source file where TARGETDM_INITIALIZER is used. > > Since 12.0,

Re: [PATCH] match.pd: Add abs with bitwise and pattern [PR106243]

2022-08-26 Thread Richard Biener via Gcc-patches
On Wed, Aug 10, 2022 at 7:11 PM Sam Feifer via Gcc-patches wrote: > > This patch adds a simplification to match.pd that was discussed on the > thread for pr106243. It simplifies the pattern, abs(x) & 1, to x & 1. > > There are also tests for the simplification in this patch. I couldn't > figure

Re: [PATCH] vect: Tighten get_related_vectype_for_scalar_type

2022-08-26 Thread Richard Biener via Gcc-patches
On Thu, 25 Aug 2022, Richard Sandiford wrote: > Builds of glibc with SVE enabled have been failing since V1DI was added > to the aarch64 port. The problem is that BB SLP starts the (hopeless) > attempt to use variable-length modes to vectorise a single-element > vector, and that now gets further

[PING] Re: [PATCH, libgomp] Fix chunk_size<1 for dynamic schedule

2022-08-26 Thread Chung-Lin Tang
On 2022/8/4 9:31 PM, Koning, Paul wrote: On Aug 4, 2022, at 9:17 AM, Chung-Lin Tang wrote: On 2022/6/28 10:06 PM, Jakub Jelinek wrote: On Thu, Jun 23, 2022 at 11:47:59PM +0800, Chung-Lin Tang wrote: with the way that chunk_size < 1 is handled for gomp_iter_dynamic_next: (1) chunk_size <=

Re: [PATCH] libstdc++: Add test for std::con/disjunction's base class

2022-08-26 Thread Jonathan Wakely via Gcc-patches
On Fri, 26 Aug 2022, 02:06 Patrick Palka via Libstdc++, < libstd...@gcc.gnu.org> wrote: > Tested on x86_64-pc-linux-gnu, does this look OK for trunk? > > libstdc++-v3/ChangeLog: > > * testsuite/20_util/logical_traits/requirements/base_classes.cc: > New test. > --- >

[PATCH] libcpp: Implement P2362R3 - Remove non-encodable wide character literals and multicharacter [PR106647]

2022-08-26 Thread Jakub Jelinek via Gcc-patches
Hi! My understanding of the paper is that we just want to promote the CPP_WCHAR "character constant too long for its type" warning to error as it is already error for u8, u and U literals. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2022-08-26 Jakub Jelinek

[PATCH, rs6000] Put dg-options ahead of target selector checks

2022-08-26 Thread HAO CHEN GUI via Gcc-patches
Hi, This patch changes the sequence of test directives for 3 cases. Originally, these 3 cases got failed or unsupported on some platforms, as their target selector checks depend on compiling options. Bootstrapped and tested on powerpc64-linux BE and LE with no regressions. Is this okay for

Re: [PATCH] 32-bit PA-RISC with HP-UX: remove deprecated ports

2022-08-26 Thread Martin Liška
On 8/26/22 09:20, Andreas Schwab wrote: > On Aug 26 2022, Martin Liška wrote: > >> diff --git a/config.rpath b/config.rpath > > This is part of gettext. > Ah, thanks, but how should one know that :P ? Cheers, Martin

Re: [PATCH] 32-bit PA-RISC with HP-UX: remove deprecated ports

2022-08-26 Thread Andreas Schwab
On Aug 26 2022, Martin Liška wrote: > diff --git a/config.rpath b/config.rpath This is part of gettext. -- Andreas Schwab, sch...@linux-m68k.org GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1 "And now for something completely different."

[PATCH] Remove uninit_analysis::use_cannot_happen

2022-08-26 Thread Richard Biener via Gcc-patches
As written earlier uninit_analysis::use_cannot_happen is duplicate functionality implemented in a complement way, not adhering to the idea of disproving a may-uninit use and eventually (I have not yet found a testcase it helps to avoid false positives) avoiding false positives because of this or

[PATCH][DOCS] Mention removed ports in GCC 13.

2022-08-26 Thread Martin Liška
Ready for master? Thanks, Martin --- htdocs/gcc-13/changes.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index c58ca1d4..e3f2ee44 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@

Re: [PATCH] cr16: remove obsoleted port

2022-08-26 Thread Martin Liška
On 8/25/22 19:06, Andrew Pinski wrote: > You missed the following one: > gcc/testsuite/lib/target-supports.exp:if { [istarget msp430-*-*] > || [istarget cr16-*-*] } { Thanks, included and installed as r13-2209-geb6358247a9386. Martin

Re: [PATCH] cr16: remove obsoleted port

2022-08-26 Thread Martin Liška
On 8/25/22 18:54, Joseph Myers wrote: > On Thu, 25 Aug 2022, Martin Liška wrote: > >> * config.sub: Remove cr16. > > config.sub and config.guess are imported verbatim from config.git; any > changes should go upstream first. Removal from config.sub would only be > appropriate if *no* GNU