[PATCH] arc: Fix for new ifcvt behavior [PR104154]

2022-02-20 Thread Robin Dapp via Gcc-patches
Hi, I figured I'd just go ahead and post this patch as well since it seems to have fixed the arc build problems. It would be nice if someone could bootstrap/regtest if Jeff hasn't already done so. I was able to verify that the two testcases attached to the PR build cleanly but not much more.

Re: [RFC][nvptx] Initialize ptx regs

2022-02-20 Thread Richard Biener via Gcc-patches
On Sun, Feb 20, 2022 at 11:50 PM Tom de Vries via Gcc-patches wrote: > > Hi, > > With nvptx target, driver version 510.47.03 and board GT 1030 I, we run into: > ... > FAIL: gcc.c-torture/execute/pr53465.c -O1 execution test > FAIL: gcc.c-torture/execute/pr53465.c -O2 execution test > FAIL:

[PATCH] x86: Fix -fsplit-stack feature detection via TARGET_CAN_SPLIT_STACK

2022-02-20 Thread soeren--- via Gcc-patches
From: Sören Tempel Since commit c163647ffbc9a20c8feb6e079dbecccfe016c82e -fsplit-stack is only supported on glibc targets. However, this original commit required some fixups. As part of the fixup, the changes to the gnu-user-common.h and gnu.h where partially reverted in commit

[PATCH] Implement constant-folding simplifications of reductions.

2022-02-20 Thread Roger Sayle
This patch addresses a code quality regression in GCC 12 by implementing some constant folding/simplification transformations for REDUC_PLUS_EXPR in match.pd. The motivating example is gcc.dg/vect/pr89440.c which with -O2 -ffast-math (with vectorization now enabled) gets optimized to: float f

Re: [PATCH] Improved constant folding for scalar evolution.

2022-02-20 Thread Richard Biener via Gcc-patches
On Sun, Feb 20, 2022 at 2:50 PM Roger Sayle wrote: > > > This patch adds a small (follow-up) optimization to chrec_apply for > linear chrecs to clean-up the final value expressions sometimes generated > by GCC's scalar evolution pass. The transformation of A+(X-1)*A into > A*X is usually unsafe

Re: [PR103302] skip multi-word pre-move clobber during lra

2022-02-20 Thread Richard Biener via Gcc-patches
On Sat, Feb 19, 2022 at 12:28 AM Alexandre Oliva via Gcc-patches wrote: > > On Dec 15, 2021, Jeff Law wrote: > > >> * expr.c (emit_move_complex_parts): Skip clobbers during lra. > > OK for the next cycle. > > Thanks, but having looked into PR 104121, I withdraw this patch and also > the

Re: [PATCH] c: [PR104506] Fix ICE after error due to change of type to error_mark_node

2022-02-20 Thread Richard Biener via Gcc-patches
On Fri, Feb 18, 2022 at 10:40 PM apinski--- via Gcc-patches wrote: > > From: Andrew Pinski > > The problem here is we end up with an error_mark_node when calling > useless_type_conversion_p and that ICEs. STRIP_NOPS/tree_nop_conversion > has had a check for the inner type being an

[PATCH v2, rs6000] Disable TImode from Bool expanders [PR100694, PR93123]

2022-02-20 Thread HAO CHEN GUI via Gcc-patches
Hi, This patch disables TImode for Bool expanders. Thus TI register can be split to two DI registers during expand.Potential optimizations can be implemented after the split. The new test case illustrates it. Bootstrapped and tested on powerpc64-linux BE and LE with no regressions. Is this

Re: [PATCH v2] x86: Add TARGET_OMIT_VZEROUPPER_AFTER_AVX_READ_ZERO

2022-02-20 Thread Hongtao Liu via Gcc-patches
On Thu, Feb 17, 2022 at 9:56 PM H.J. Lu wrote: > > On Thu, Feb 17, 2022 at 08:51:31AM +0100, Uros Bizjak wrote: > > On Thu, Feb 17, 2022 at 6:25 AM Hongtao Liu via Gcc-patches > > wrote: > > > > > > On Thu, Feb 17, 2022 at 12:26 PM H.J. Lu via Gcc-patches > > > wrote: > > > > > > > > Reading

Re: [PATCH 3/3] target/99881 - x86 vector cost of CTOR from integer regs

2022-02-20 Thread Hongtao Liu via Gcc-patches
On Fri, Feb 18, 2022 at 10:01 PM Richard Biener via Gcc-patches wrote: > > This uses the now passed SLP node to the vectorizer costing hook > to adjust vector construction costs for the cost of moving an > integer component from a GPR to a vector register when that's > required for building a

[PATCH] libgcc: allow building float128 libraries on FreeBSD

2022-02-20 Thread pkubaj
From: Piotr Kubaj While FreeBSD currently uses 64-bit long double, there should be no problem with adding support for float128. Signed-off-by: Piotr Kubaj --- libgcc/configure| 22 ++ libgcc/configure.ac | 11 +++ 2 files changed, 33 insertions(+) diff --git

[committed] d: Remove handling of deleting GC allocated classes.

2022-02-20 Thread Iain Buclaw via Gcc-patches
Hi, Now that the `delete' keyword has been removed from the front-end, only compiler-generated uses of DeleteExp reach the code generator via the auto-destruction of `scope class' variables. The run-time library helpers that previously were used to delete GC class objects can now be removed from

[RFC][nvptx] Initialize ptx regs

2022-02-20 Thread Tom de Vries via Gcc-patches
Hi, With nvptx target, driver version 510.47.03 and board GT 1030 I, we run into: ... FAIL: gcc.c-torture/execute/pr53465.c -O1 execution test FAIL: gcc.c-torture/execute/pr53465.c -O2 execution test FAIL: gcc.c-torture/execute/pr53465.c -O3 -g execution test ... while the test-cases pass with

[committed] d: Merge upstream dmd cb49e99f8, druntime 55528bd1, phobos 1a3e80ec2.

2022-02-20 Thread Iain Buclaw via Gcc-patches
Hi, This patch merges the D front-end implementation with upstream dmd cb49e99f8, as well as the D runtime libraries with druntime 55528bd1, and phobos 1a3e80ec2, synchronizing with the release of 2.099.0-beta1. D front-end changes: - Import dmd v2.099.0-beta.1. - It's now an error to

Re: libgo patch committed: Update to Go1.18rc1 release

2022-02-20 Thread Rainer Orth
Hi Ian, > This patch updates libgo to the Go1.18rc1 release. Bootstrapped and > ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. this broke Solaris bootstrap: ld: fatal: file runtime/internal/.libs/syscall.o: open failed: No such file or directory collect2: error: ld returned

Re: [PATCH] PR fortran/77693 - ICE in rtl_for_decl_init, at dwarf2out.c:17378

2022-02-20 Thread Thomas Koenig via Gcc-patches
Hi Harald, Regtested on x86_64-pc-linux-gnu. OK for mainline? Looks good to me. Thanks for the patch! Best regards Thomas

New Swedish PO file for 'gcc' (version 12.1-b20220213)

2022-02-20 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,

*Ping* [PATCH] PR fortran/77693 - ICE in rtl_for_decl_init, at dwarf2out.c:17378

2022-02-20 Thread Harald Anlauf via Gcc-patches
Am 09.02.22 um 22:11 schrieb Harald Anlauf via Gcc-patches: Dear all, as we did not properly check the initialization of pointers in DATA statements for valid initial data targets, we could either ICE or generate wrong code. Testcase based on Gerhard's, BTW. The attached patch adds a check in

Re: [pushed] LRA, rs6000, Darwin: Amend lo_sum use for forced constants [PR104117].

2022-02-20 Thread Iain Sandoe
Hi Folks. > On 14 Feb 2022, at 16:58, Vladimir Makarov wrote: > On 2022-02-14 11:00, Richard Sandiford wrote: >> Vladimir Makarov via Gcc-patches writes: >>> >>> Hi, Richard. Change LRA is mine and I approved it for Iain's patch. >>> >>> I think there is no need for this code and it is

[PATCH] PR tree-optimization/83907: Improved memset handling in strlen pass.

2022-02-20 Thread Roger Sayle
This patch implements the missed optimization enhancement PR 83907, by handling memset with a constant byte value in tree-ssa's strlen optimization pass. Effectively, this treats memset(dst,'x',3) as it would memcpy(dst,"xxx",3). This patch also includes a tweak to handle_store to address

[PATCH] Improved constant folding for scalar evolution.

2022-02-20 Thread Roger Sayle
This patch adds a small (follow-up) optimization to chrec_apply for linear chrecs to clean-up the final value expressions sometimes generated by GCC's scalar evolution pass. The transformation of A+(X-1)*A into A*X is usually unsafe with respect to overflow (see PR92712), and so can't be

Re: [PATCH] libgo: include asm/ptrace.h for pt_regs definition on PowerPC

2022-02-20 Thread Andreas Schwab
On Jan 02 2022, soeren--- via Gcc-patches wrote: > libgo/runtime/go-signal.c: In function 'getSiginfo': > libgo/runtime/go-signal.c:227:63: error: invalid use of undefined type > 'struct pt_regs' > 227 | ret.sigpc = > ((ucontext_t*)(context))->uc_mcontext.regs->nip;

Re: [PATCH] libgo: include asm/ptrace.h for pt_regs definition on PowerPC

2022-02-20 Thread Sören Tempel via Gcc-patches
Ping. Summary: Fix build of libgo on PPC with musl libc and libucontext by explicitly including the Linux header defining `struct pt_regs` instead of relying on other libc headers to include it implicitly. See: https://gcc.gnu.org/pipermail/gcc-patches/2022-January/587520.html If the patch