Re: [PATCH v2] c++/96765: warn when casting Base* to Derived* in Base ctor/dtor

2022-03-16 Thread Zhao Wei Liew via Gcc-patches
Thanks for the review. I've tested and uploaded a new patch v2 with the requested changes. On Thu, 17 Mar 2022 at 09:20, Jason Merrill wrote: > > On 3/14/22 02:36, Zhao Wei Liew via Gcc-patches wrote: > > > This patch adds a warning when casting "this" to Derived* in the Base > > class

[PATCHv2, rs6000] Add V1TI into vector comparison expand [PR103316]

2022-03-16 Thread HAO CHEN GUI via Gcc-patches
Hi, This patch adds V1TI mode into a new mode iterator used in vector comparison expands.With the patch, both built-ins and direct comparison could generate P10 new V1TI comparison instructions. Bootstrapped and tested on ppc64 Linux BE and LE with no regressions. Is this okay for trunk?

[PATCH] [i386] Add extra cost for unsigned_load which may have stall forward issue.

2022-03-16 Thread liuhongt via Gcc-patches
This patch only handle pure-slp for by-value passed parameter which has nothing to do with IPA but psABI. For by-reference passed parameter IPA is required. The patch is aggressive in determining STLF failure, any unaligned_load for parm_decl passed by stack is thought to have STLF stall issue.

[PATCH] [i386] Add extra cost for unsigned_load which may have stall forward issue.

2022-03-16 Thread liuhongt via Gcc-patches
This patch only handle pure-slp for by-value passed parameter which has nothing to do with IPA but psABI. For by-reference passed parameter IPA is required. The patch is aggressive in determining STLF failure, any unaligned_load for parm_decl passed by stack is thought to have STLF stall issue.

[BACKPORT] Backport PR fortran/96983 fix to GCC 11

2022-03-16 Thread Michael Meissner via Gcc-patches
Backport PR fortran/96983 patch to GCC 11. I applied a patch on the trunk in April 22nd, 2021 that fixes an issue (PR fortran/66983) where we could fail for 128-bit floating point types because we don't have a built-in function that is equivalent to llround for 128-bit integer types. Instead,

Re: [PATCH v2] middle-end/104854: Limit strncmp overread warnings

2022-03-16 Thread Siddhesh Poyarekar
On 17/03/2022 05:11, Martin Sebor wrote: As the GCC manual prominently states (and as I already pointed out) warnings are: We are indeed going around in circles. Hopefully someone else will pitch in and break the deadlock. Siddhesh

Re: [PATCH] c++/96765: warn when casting "this" to Derived* in Base ctor/dtor

2022-03-16 Thread Jason Merrill via Gcc-patches
On 3/14/22 02:36, Zhao Wei Liew via Gcc-patches wrote: This patch adds a warning when casting "this" to Derived* in the Base class constructor and destructor. I've added the warning under the -Wextra flag as I can't find a more appropriate flag for it. It's generally best to add a new warning

Re: [PATCH][v2] tree-optimization: Fold (type)X / (type)Y [PR103855]

2022-03-16 Thread Zhao Wei Liew via Gcc-patches
Thanks for the detailed review. I have uploaded patch v2 based on the review. v1: https://gcc.gnu.org/pipermail/gcc-patches/2022-February/590604.html Changes since v1: 1. Add patterns for the cases CST / (T)x and (T)x / CST as well. Fix test regressions caused by those patterns. 2. Support signed

Re: [PATCH v2] middle-end/104854: Limit strncmp overread warnings

2022-03-16 Thread Martin Sebor via Gcc-patches
On 3/15/22 19:24, Siddhesh Poyarekar wrote: On 16/03/2022 02:06, Martin Sebor wrote: The intended use of the strncmp bound is to limit the comparison to at most the size of the arrays or (in a subset of cases) the length of an initial substring. Providing an arbitrary bound that's not related

[committed] libstdc++: Fix symbol versioning for Solaris 11.3 [PR103407]

2022-03-16 Thread Jonathan Wakely via Gcc-patches
Tested x86_64-linux and sparc-sun-solaris2.11 (but 11.3 only). Pushed to trunk. Rainer, this should allow you to continue omitting the _ZSt10from_charsPKcS0_R[def]St12chars_format symbols from the baseline, without the current FAIL. Please check on your other Solaris targets. -- >8 -- The new

Re: [PATCH] fortran: Separate associate character lengths earlier [PR104570]

2022-03-16 Thread Harald Anlauf via Gcc-patches
Hi Mikael, Am 14.03.22 um 19:28 schrieb Mikael Morin: Hello, this workarounds the regression I introduced with the fix for pr104228. The problem comes from the evaluation of character length for the associate target (y) in the testcase. The expression is non-scalar which is not supported at

[PATCH] c++: alias template and empty parameter packs [PR104008]

2022-03-16 Thread Marek Polacek via Gcc-patches
Zero-length pack expansions are treated as if no list were provided at all, that is, with template struct S { }; template void g() { S...>; } g will result in S<>. In the following test we have something similar: template using IsOneOf = disjunction...>; and then we have

Re: rs6000: RFC/Update support for addg6s instruction. PR100693

2022-03-16 Thread Segher Boessenkool
On Wed, Mar 16, 2022 at 03:06:42PM -0500, will schmidt wrote: > On Wed, 2022-03-16 at 13:12 -0500, Segher Boessenkool wrote: > > (define_insn "addg6s" > > [(set (match_operand:GPR 0 "register_operand" "=r") > > (unspec:GPR [(match_operand:GPR 1 "register_operand" "r") > >

libgo: update to 1.18 release

2022-03-16 Thread Ian Lance Taylor via Gcc-patches
This patch updates libgo to the final 1.18 release. Bootstrapped and ran Go testsuite on x86_64-pc-linux-nu. Committed to mainline. Ian patch.txt.gz Description: application/gzip

Re: [PATCH RFC] mips: add TARGET_ZERO_CALL_USED_REGS hook [PR104817, PR104820]

2022-03-16 Thread Qing Zhao via Gcc-patches
> On Mar 14, 2022, at 11:04 AM, Richard Sandiford > wrote: > > Sorry for the slow response, was out for a few days. > > Xi Ruoyao writes: >> On Sat, 2022-03-12 at 18:48 +0800, Xi Ruoyao via Gcc-patches wrote: >>> On Fri, 2022-03-11 at 21:26 +, Qing Zhao wrote: Hi, Ruoyao,

Re: RFA: crc builtin functions & optimizations

2022-03-16 Thread Joern Rennecke
> and there needs to be code to actually expand the builtin using optabs. > And something needs to be done to make match.pd work on the output. Never mind that bit, that was just due to a function argument type mismatch on the last argument of the crc built-in functions.

Re: [PATCH][Middle-end][Backport to GCC11][PR100775]Updating the reg use in exit block for -fzero-call-used-regs

2022-03-16 Thread Qing Zhao via Gcc-patches
Thanks. Just committed the patch to gcc11 branch. Qing > On Mar 14, 2022, at 2:46 AM, Richard Biener > wrote: > > On Fri, Mar 11, 2022 at 5:31 PM Qing Zhao via Gcc-patches > wrote: >> >> >> Hi, >> >> I plan to backport the patch to fix PR100775: >>

Re: rs6000: RFC/Update support for addg6s instruction. PR100693

2022-03-16 Thread will schmidt via Gcc-patches
On Wed, 2022-03-16 at 13:12 -0500, Segher Boessenkool wrote: > Hi! > > On Wed, Mar 16, 2022 at 12:20:18PM -0500, will schmidt wrote: > > For PR100693, we currently provide an addg6s builtin using unsigned > > int arguments, but we are missing an unsigned long long argument > > equivalent. This

[r12-7670 Regression] FAIL: g++.dg/tree-ssa/pr86544.C -std=gnu++98 scan-tree-dump-times phiopt4 "if" 0 on Linux/x86_64

2022-03-16 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, f6fb661ea8ac7e17c6924719de6219f002c4efef is the first bad commit commit f6fb661ea8ac7e17c6924719de6219f002c4efef Author: Richard Biener Date: Wed Mar 16 13:39:31 2022 +0100 tree-optimization/102008 - restore if-conversion of adjacent loads caused FAIL:

Re: rs6000: RFC/Update support for addg6s instruction. PR100693

2022-03-16 Thread Segher Boessenkool
Hi! On Wed, Mar 16, 2022 at 12:20:18PM -0500, will schmidt wrote: > For PR100693, we currently provide an addg6s builtin using unsigned > int arguments, but we are missing an unsigned long long argument > equivalent. This patch adds an overload to provide the long long > version of the builtin.

[committed] analyzer: early rejection of disabled warnings [PR104955]

2022-03-16 Thread David Malcolm via Gcc-patches
Avoid generating execution paths for warnings that are ultimately rejected due to -Wno-analyzer-* flags. This improves the test case from taking at least several minutes (before I killed it) to taking under a second. This doesn't fix the slowdown seen in PR analyzer/104955 with large numbers of

Re: [aarch64] Implement determine_suggested_unroll_factor

2022-03-16 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > Hi, > > This patch implements the costing function > determine_suggested_unroll_factor for aarch64. > It determines the unrolling factor by dividing the number of X > operations we can do per cycle by the number of X operations in the loop > body, taking this

Re: [C PATCH] PR c/98198: ICE-on-invalid-code error recovery.

2022-03-16 Thread Joseph Myers
On Wed, 16 Mar 2022, Roger Sayle wrote: > This is Christophe Lyon's fix to PR c/98198, an ICE-on-invalid-code > regression affecting mainline, and a suitable testcase. > Tested on x86_64-pc-linux-gnu with make bootstrap and make -k check > with no new failures. Ok for mainline? > > >

Patch ping (Re: [PATCH] libatomic: Improve 16-byte atomics on Intel AVX [PR104688])

2022-03-16 Thread Jakub Jelinek via Gcc-patches
Hi! I'd like to ping this patch: https://gcc.gnu.org/pipermail/gcc-patches/2022-February/590960.html Thanks. On Mon, Feb 28, 2022 at 07:06:30AM +0100, Jakub Jelinek wrote: > As mentioned in the PR, the latest Intel SDM has added: > "Processors that enumerate support for Intel® AVX (by setting

[PATCH] gimplify: Emit clobbers for TARGET_EXPR_SLOT vars later [PR103984]

2022-03-16 Thread Jakub Jelinek via Gcc-patches
Hi! As mentioned in the PR, we emit a bogus uninitialized warning but easily could emit wrong-code for it or similar testcases too. The bug is that we emit clobber for a TARGET_EXPR_SLOT too early: D.2499.e = B::qux (); [return slot optimization] D.2516 = 1; try

rs6000: RFC/Update support for addg6s instruction. PR100693

2022-03-16 Thread will schmidt via Gcc-patches
Hi, RFC/Update support for addg6s instruction. PR100693 For PR100693, we currently provide an addg6s builtin using unsigned int arguments, but we are missing an unsigned long long argument equivalent. This patch adds an overload to provide the long long version of the builtin. unsigned long

Re: [aarch64] Update regmove costs for neoverse-v1 and neoverse-512tvb tunings

2022-03-16 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > Hi, > > This patch updates the register move tunings for > -mcpu/-mtune={neoverse-v1,neoverse-512tvb}. > > 2022-03-16  Tamar Christina  >    Andre Vieira > >     * config/aarch64/aarch64.cc (neoversev1_regmove_cost): New > tuning

Re: [aarch64] Update reg-costs to differentiate between memmove costs

2022-03-16 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > This patch introduces a struct to differentiate between different > memmove costs to enable a better modeling of memory operations. These > have been modelled for > -mcpu/-mtune=neoverse-v1/neoverse-n1/neoverse-n2/neoverse-512tvb, for > all other tunings all

Re: RFA: crc builtin functions & optimizations

2022-03-16 Thread Joern Rennecke
On Wed, 16 Mar 2022 at 08:15, Richard Biener wrote: > The canonical place to transform loops into builtins would be loop > distribution. > Another place would be final value replacement since you basically replace > the reduction result with a call to the builtin, but I think >

[PATCH] c++, v2: Fix up constexpr evaluation of new with zero sized types [PR104568]

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Tue, Mar 15, 2022 at 04:19:05PM -0400, Jason Merrill wrote: > > But if you strongly prefer it that way, I can do that. > > Note, probably not 3 new args but 4, depends on whether we could turn > > all those cases where the tree arg0 = CALL_EXPR_ARG (oldop, 0); > > is done but var_size_adjusted

Re: [PATCH] libstdc++: Ensure that std::from_chars is declared when supported

2022-03-16 Thread Jonathan Wakely via Gcc-patches
On Mon, 14 Mar 2022 at 14:15, Patrick Palka wrote: > I think __floating_from_chars_hex should work fine on 16 bit targets, > so I suppose we could use it in the !USE_LIB_FAST_FLOAT branch as well. Good point, and even for SIZE_WIDTH >= 32, it might be faster to use your __floating_from_chars_hex

Re: [aarch64] Add Demeter tuning structs

2022-03-16 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > Hi, > > This patch adds tuning structs for -mcpu/-mtune=demeter. > > > 2022-03-16  Tamar Christina  >    Andre Vieira > >     * config/aarch64/aarch64.cc (demeter_addrcost_table, > demeter_regmove_cost, >    

Re: [PATCH] libstdc++: Ensure that std::from_chars is declared when supported

2022-03-16 Thread Jonathan Wakely via Gcc-patches
On Tue, 15 Mar 2022 at 14:12, Patrick Palka wrote: > > On Mon, 14 Mar 2022, Jonathan Wakely wrote: > > > On Mon, 14 Mar 2022 at 14:17, Patrick Palka via Libstdc++ > > wrote: > > > > > > On Fri, 11 Mar 2022, Jonathan Wakely wrote: > > > > > > > Patrick, I think this is right, but please take a

[C PATCH] PR c/98198: ICE-on-invalid-code error recovery.

2022-03-16 Thread Roger Sayle
This is Christophe Lyon's fix to PR c/98198, an ICE-on-invalid-code regression affecting mainline, and a suitable testcase. Tested on x86_64-pc-linux-gnu with make bootstrap and make -k check with no new failures. Ok for mainline? 2022-03-16 Christophe Lyon Roger Sayle

Re: [aarch64] Add Neoverse N2 tuning structs

2022-03-16 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > Hi, > > This patch adds tuning structures for Neoverse N2. > > 2022-03-16  Tamar Christina  >                Andre Vieira > >     * config/aarch64/aarch64.cc (neoversen2_addrcost_table, > neoversen2_regmove_cost, >     neoversen2_advsimd_vector_cost,

Re: [PATCH] doc: Document Solaris D bootstrap requirements [PR 103528]

2022-03-16 Thread Iain Sandoe via Gcc-patches
Hi Rainer, > On 16 Mar 2022, at 15:55, Rainer Orth wrote: > >>> I've omitted the Darwin-specific stuff so far documented in PRs d/103577 >>> and d/103578: >>> >>> * needs --enable-libphobos >>> * top of gcc-11 branch only >>> * backport of -static-libphobos patch >>> * Darwin/i386 doesn't work

Re: [PATCH] doc: Document Solaris D bootstrap requirements [PR 103528]

2022-03-16 Thread Rainer Orth
Hi Iain, >> I've omitted the Darwin-specific stuff so far documented in PRs d/103577 >> and d/103578: >> >> * needs --enable-libphobos >> * top of gcc-11 branch only >> * backport of -static-libphobos patch >> * Darwin/i386 doesn't work at all > > — hopefully we will not need to add that — > >

Re: [PATCH] handle "invisible" reference in -Wdangling-pointer (PR104436)

2022-03-16 Thread Martin Sebor via Gcc-patches
On 3/9/22 06:17, Richard Biener wrote: On Fri, Feb 11, 2022 at 12:05 AM Martin Sebor via Gcc-patches wrote: On 2/8/22 15:37, Jason Merrill wrote: On 2/8/22 16:59, Martin Sebor wrote: Transforming a by-value arguments to by-reference as GCC does for some class types can trigger

Re: [PATCH] doc: Document Solaris D bootstrap requirements [PR 103528]

2022-03-16 Thread Iain Sandoe via Gcc-patches
> On 16 Mar 2022, at 13:28, Rainer Orth wrote: > > This patch documents the Solaris-specific D bootstrap requirements. > > Tested by building and inspecting gccinstall.{pdf,info}. > > Ok for trunk? > > I've omitted the Darwin-specific stuff so far documented in PRs d/103577 > and d/103578:

Re: [PATCH] tree-optimization/104941: Actually assign the conversion result

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Wed, Mar 16, 2022 at 08:24:24PM +0530, Siddhesh Poyarekar wrote: > Assign the result of fold_convert to offset. > > gcc/ChangeLog: > > PR tree-optimization/104941 > * tree-object-size.cc (size_for_offset): Assign result of > fold_convert to OFFSET. > >

[aarch64] Update Neoverse N2 core definition

2022-03-16 Thread Andre Vieira (lists) via Gcc-patches
Hi, As requested, I updated the Neoverse N2 entry to use the AARCH64_FL_FOR_ARCH9 feature set, removed duplicate entries, updated the ARCH_INDENT to 9A and moved it under the Armv9 cores. gcc/ChangeLog:     * config/aarch64/aarch64-cores.def: Update Neoverse N2 core entry. diff --git

[aarch64] Implement determine_suggested_unroll_factor

2022-03-16 Thread Andre Vieira (lists) via Gcc-patches
Hi, This patch implements the costing function determine_suggested_unroll_factor for aarch64. It determines the unrolling factor by dividing the number of X operations we can do per cycle by the number of X operations in the loop body, taking this information from the vec_ops analysis during

[aarch64] Update reg-costs to differentiate between memmove costs

2022-03-16 Thread Andre Vieira (lists) via Gcc-patches
This patch introduces a struct to differentiate between different memmove costs to enable a better modeling of memory operations. These have been modelled for -mcpu/-mtune=neoverse-v1/neoverse-n1/neoverse-n2/neoverse-512tvb, for all other tunings all entries are equal to the old single memmove

[PATCH] tree-optimization/104941: Actually assign the conversion result

2022-03-16 Thread Siddhesh Poyarekar
Assign the result of fold_convert to offset. gcc/ChangeLog: PR tree-optimization/104941 * tree-object-size.cc (size_for_offset): Assign result of fold_convert to OFFSET. gcc/testsuite/ChangeLog: PR tree-optimization/104941 *

[aarch64] Update regmove costs for neoverse-v1 and neoverse-512tvb tunings

2022-03-16 Thread Andre Vieira (lists) via Gcc-patches
Hi, This patch updates the register move tunings for -mcpu/-mtune={neoverse-v1,neoverse-512tvb}. 2022-03-16  Tamar Christina     Andre Vieira     * config/aarch64/aarch64.cc (neoversev1_regmove_cost): New tuning struct.     (neoversev1_tunings): Use

[aarch64] Add Demeter tuning structs

2022-03-16 Thread Andre Vieira (lists) via Gcc-patches
Hi, This patch adds tuning structs for -mcpu/-mtune=demeter. 2022-03-16  Tamar Christina     Andre Vieira     * config/aarch64/aarch64.cc (demeter_addrcost_table, demeter_regmove_cost,     demeter_advsimd_vector_cost, demeter_sve_vector_cost,

[aarch64] Add Neoverse N2 tuning structs

2022-03-16 Thread Andre Vieira (lists) via Gcc-patches
Hi, This patch adds tuning structures for Neoverse N2. 2022-03-16  Tamar Christina                 Andre Vieira     * config/aarch64/aarch64.cc (neoversen2_addrcost_table, neoversen2_regmove_cost,     neoversen2_advsimd_vector_cost, neoversen2_sve_vector_cost,

[PATCH][GCC11] tree-optimization/104931 - mitigate niter analysis issue

2022-03-16 Thread Richard Biener via Gcc-patches
The following backports a pointer associating pattern from trunk that mitigates an issue with number_of_iterations_lt_to_ne in which context we fail to fold a comparison but succeed in folding a related subtraction. In the failure mode this results in a loop wrongly assumed looping with a bogus

Re: [PATCH] OpenMP, Fortran: Bugfix for omp_set_num_teams.

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Wed, Mar 16, 2022 at 02:06:16PM +0100, Marcel Vollweiler wrote: > libgomp/ChangeLog: > > * fortran.c (omp_set_num_teams_8_): Fix bug. > * testsuite/libgomp.fortran/icv-8.f90: New test. Ok, with a minor nit. Please use Call omp_set_num_teams instead of omp_set_max_active_levels.

Re: [PATCH v2] x86: Also check _SOFT_FLOAT in

2022-03-16 Thread H.J. Lu via Gcc-patches
On Tue, Mar 15, 2022 at 6:57 PM Hongtao Liu wrote: > > On Tue, Mar 15, 2022 at 10:40 PM H.J. Lu wrote: > > > > On Mon, Mar 14, 2022 at 7:31 AM H.J. Lu wrote: > > > > > > Push target("general-regs-only") in if x87 is enabled. > > > > > > gcc/ > > > > > > PR target/104890 > > > *

[PATCH] doc: Document Solaris D bootstrap requirements [PR 103528]

2022-03-16 Thread Rainer Orth
This patch documents the Solaris-specific D bootstrap requirements. Tested by building and inspecting gccinstall.{pdf,info}. Ok for trunk? I've omitted the Darwin-specific stuff so far documented in PRs d/103577 and d/103578: * needs --enable-libphobos * top of gcc-11 branch only * backport of

Re: [PATCH] RISC-V: Handle combine extension in canonical ordering.

2022-03-16 Thread Kito Cheng via Gcc-patches
Hi Shi-Hua: Thanks, generally it's LGTM, just a few coding style issues. I've fixed that and committed this time, but just let you know where you should update your coding style. And you could use git clang-format and use /contrib/clang-format as format file to save your time to indent that.

Re: [PATCH] OpenMP, Fortran: Bugfix for omp_set_num_teams.

2022-03-16 Thread Marcel Vollweiler
Hi Jakub, ! { dg-do run } ! { dg-additional-options "-fdefault-integer-8" } program set_num_teams_8 use omp_lib omp_set_num_teams (42) if (omp_get_num_teams () .ne. 42) stop 1 end program I modified your suggested test case a bit: program set_num_teams_8 use omp_lib use,

Re: [PATCH] Avoid generating unused labels in genmatch.

2022-03-16 Thread Richard Biener via Gcc-patches
On Wed, Mar 16, 2022 at 1:59 PM Richard Biener wrote: > > On Wed, Mar 16, 2022 at 1:31 PM Roger Sayle > wrote: > > > > > > This patch is the second of two changes to genmatch that don't affect > > the executable code, but reduce the amount of debugging information > > generated in stage3 of a

Re: [PATCH] Avoid generating unused labels in genmatch.

2022-03-16 Thread Richard Biener via Gcc-patches
On Wed, Mar 16, 2022 at 1:31 PM Roger Sayle wrote: > > > This patch is the second of two changes to genmatch that don't affect > the executable code, but reduce the amount of debugging information > generated in stage3 of a build, but adhering more closely to GNU style > guidelines. > > This

Re: [PATCH] Generate an if instead of a switch with one case in genmatch.

2022-03-16 Thread Richard Biener via Gcc-patches
On Wed, Mar 16, 2022 at 1:28 PM Roger Sayle wrote: > > > This patch is the first of two changes to genmatch that don't affect > the executable code, but reduce the amount of debugging information > generated in stage3 of a build, but adhering more closely to GNU style > guidelines. > > This patch

Re: [PATCH] tree-optimization/102008 - restore if-conversion of adjacent loads

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Wed, Mar 16, 2022 at 01:42:26PM +0100, Richard Biener wrote: > The following re-orders the newly added code sinking pass before > the last phiopt pass which performs hoisting of adjacent loads > with the intent to enable if-conversion on those. > > I've added the aarch64 specific testcase from

[PATCH] tree-optimization/102008 - restore if-conversion of adjacent loads

2022-03-16 Thread Richard Biener via Gcc-patches
The following re-orders the newly added code sinking pass before the last phiopt pass which performs hoisting of adjacent loads with the intent to enable if-conversion on those. I've added the aarch64 specific testcase from the PR. Bootstrapped and tested on x86_64-unknown-linux-gnu, verified

Re: [PATCH] rs6000: Allow using -mlong-double-64 after -mabi={ibm, ieee}longdouble [PR104208, PR87496]

2022-03-16 Thread Segher Boessenkool
On Tue, Mar 15, 2022 at 02:49:39PM -0500, Peter Bergner wrote: > On 3/4/22 8:14 PM, Peter Bergner wrote: > > On 3/4/22 11:33 AM, Peter Bergner wrote: > >>> Ok pushed to trunk.  I haven't determined yet whether we need this on GCC > >>> 11 yet. > >>> I'll check on that and report back.  Thanks! >

Re: [PATCH v8 00/12] Add LoongArch support.

2022-03-16 Thread 程璐璐
在 2022/3/15 下午10:35, Xi Ruoyao 写道: On Fri, 2022-03-04 at 15:17 +0800, xucheng...@loongson.cn wrote: v7 -> v8 1. Add new addressing type ADDRESS_REG_REG support. 2. Modify documentation. 3. Eliminate compile-time warnings. Hi, The v8 series does not build LoongArch Linux kernel tree

[PATCH] Avoid generating unused labels in genmatch.

2022-03-16 Thread Roger Sayle
This patch is the second of two changes to genmatch that don't affect the executable code, but reduce the amount of debugging information generated in stage3 of a build, but adhering more closely to GNU style guidelines. This patch avoids generating "next_after_fail1:;" label statements in

[PATCH] Generate an if instead of a switch with one case in genmatch.

2022-03-16 Thread Roger Sayle
This patch is the first of two changes to genmatch that don't affect the executable code, but reduce the amount of debugging information generated in stage3 of a build, but adhering more closely to GNU style guidelines. This patch avoids generating a switch with a single case statement, instead

[PATCH] c-family: Fix ICE in pp_cxx_unqualified_id, at cp/cxx-pretty-print.c:128 [PR101515]

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Tue, Mar 15, 2022 at 01:32:46PM +0100, Jakub Jelinek via Gcc-patches wrote: > Another one is whether we shouldn't punt for FIELD_DECLs that don't have > nicely printable name of its containing scope, something like: > if (tree scope = get_containing_scope (field)) >

Re: [PATCH] [i386] Add extra cost for unsigned_load which may have stall forward issue.

2022-03-16 Thread Richard Biener via Gcc-patches
On Wed, Mar 16, 2022 at 3:19 AM liuhongt wrote: > > This patch only handle pure-slp for by-value passed parameter which > has nothing to do with IPA but psABI. For by-reference passed > parameter IPA is required. > > The patch is aggressive in determining STLF failure, any > unaligned_load for

Re: [PATCH] Ignore (possible) signed zeros in operands of FP comparisons.

2022-03-16 Thread Richard Sandiford via Gcc-patches
Richard Biener via Gcc-patches writes: > On Mon, Mar 14, 2022 at 8:26 PM Roger Sayle > wrote: >> I've been wondering about the possible performance/missed-optimization >> impact of my patch for PR middle-end/98420 and similar IEEE correctness >> fixes that disable constant folding optimizations

Re: [PATCH] aarch64: Fix up RTL sharing bug in aarch64_load_symref_appropriately [PR104910]

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Wed, Mar 16, 2022 at 09:10:35AM +, Richard Sandiford wrote: > Jakub Jelinek writes: > > We unshare all RTL created during expansion, but when > > aarch64_load_symref_appropriately is called after expansion like in the > > following testcases, we use imm in both HIGH and LO_SUM operands. >

OpenACC privatization diagnostics vs. 'assert' [PR102841]

2022-03-16 Thread Thomas Schwinge
Hi! On 2021-05-21T21:29:19+0200, I wrote: > I've pushed "[OpenACC privatization] Largely extend diagnostics and > corresponding testsuite coverage [PR90115]" to master branch in commit > 11b8286a83289f5b54e813f14ff56d730c3f3185 Pushed to master branch commit

Re: [PATCH] aarch64: Fix up RTL sharing bug in aarch64_load_symref_appropriately [PR104910]

2022-03-16 Thread Richard Sandiford via Gcc-patches
Jakub Jelinek writes: > Hi! > > We unshare all RTL created during expansion, but when > aarch64_load_symref_appropriately is called after expansion like in the > following testcases, we use imm in both HIGH and LO_SUM operands. > If imm is some RTL that shouldn't be shared like a non-sharable

Re: [PATCH] [i386] Don't fold __builtin_ia32_blendvpd w/o sse4.2.

2022-03-16 Thread Richard Biener via Gcc-patches
On Wed, Mar 16, 2022 at 9:18 AM liuhongt via Gcc-patches wrote: > > __builtin_ia32_blendvpd is defined under sse4.1 and gimple folded > to ((v2di) c) < 0 ? b : a where vec_cmpv2di is under sse4.2 w/o which > it's veclowered to scalar operations and not combined back in rtl. > > Bootstrap and

[PATCH] tree-optimization/104942: Retain sizetype conversions till the end

2022-03-16 Thread Siddhesh Poyarekar
Retain the sizetype alloc_object_size to guarantee the assertion in size_for_offset and to avoid adding a conversion there. nop conversions are eliminated at the end anyway in dynamic object size computation. gcc/ChangeLog: tree-optimization/104942 * tree-object-size.cc

Re: [PATCH] tree-optimization/104942: Retain sizetype conversions till the end

2022-03-16 Thread Jakub Jelinek via Gcc-patches
On Wed, Mar 16, 2022 at 01:56:50PM +0530, Siddhesh Poyarekar wrote: > Retain the sizetype alloc_object_size to guarantee the assertion in > size_for_offset and to avoid adding a conversion there. nop conversions > are eliminated at the end anyway in dynamic object size computation. > >

Re: [PATCH v2] Performance/size improvement to single_use when matching GIMPLE.

2022-03-16 Thread Richard Biener via Gcc-patches
On Wed, 16 Mar 2022, Roger Sayle wrote: > > Here's version 2 of my patch, incorporating Richard Biener's suggestions. > I've also done an analysis of the stage3 sizes of gimple-match.o on > x86_64-pc-linux-gnu, which I believe is dominated by debug information, > the .o file is 30MB in stage3,

[PATCH] [i386] Don't fold __builtin_ia32_blendvpd w/o sse4.2.

2022-03-16 Thread liuhongt via Gcc-patches
__builtin_ia32_blendvpd is defined under sse4.1 and gimple folded to ((v2di) c) < 0 ? b : a where vec_cmpv2di is under sse4.2 w/o which it's veclowered to scalar operations and not combined back in rtl. Bootstrap and regtest on x86_64-pc-linux-gnu{-m32,}. Ready push to main trunk. gcc/ChangeLog:

Re: RFA: crc builtin functions & optimizations

2022-03-16 Thread Richard Biener via Gcc-patches
On Tue, Mar 15, 2022 at 4:15 PM Joern Rennecke wrote: > > On 15/03/2022, Richard Biener wrote: > > > Why's this a new pass? Every walk over all insns costs time. > > If should typically scan considerably less than all the insns. > > > The pass > > lacks any comments as to what CFG / stmt

[PATCH v2] Performance/size improvement to single_use when matching GIMPLE.

2022-03-16 Thread Roger Sayle
Here's version 2 of my patch, incorporating Richard Biener's suggestions. I've also done an analysis of the stage3 sizes of gimple-match.o on x86_64-pc-linux-gnu, which I believe is dominated by debug information, the .o file is 30MB in stage3, but only 4.8M in stage2. Before my proposed patch