Re: [PATCH 4/7] Expand the comparison argument of fold_cond_expr_with_comparison

2021-06-20 Thread Richard Biener via Gcc-patches
On Sat, Jun 19, 2021 at 11:30 PM apinski--- via Gcc-patches wrote: > > From: Andrew Pinski > > To make things slightly easiler to convert fold_cond_expr_with_comparison > over to match.pd, expanding the arg0 argument into 3 different arguments > is done. Also this was simple because we don't use

Re: [PATCH 3/7] Try inverted comparison for match_simplify in phiopt

2021-06-20 Thread Richard Biener via Gcc-patches
On Sat, Jun 19, 2021 at 10:51 PM apinski--- via Gcc-patches wrote: > > From: Andrew Pinski > > Since match and simplify does not have all of the inverted > comparison patterns, it make sense to just have > phi-opt try to do the inversion and try match and simplify again. > > OK? Bootstrapped and

Re: [PATCH 2/7] Duplicate the range information of the phi onto the new ssa_name

2021-06-20 Thread Richard Biener via Gcc-patches
On Sat, Jun 19, 2021 at 9:49 PM apinski--- via Gcc-patches wrote: > > From: Andrew Pinski > > Since match_simplify_replacement uses gimple_simplify, there is a new > ssa name created sometimes and then we go and replace the phi edge with > this new ssa name, the range information on the phi is lo

Re: [PATCH 1/7] Reset the range info on the moved instruction in PHIOPT

2021-06-20 Thread Richard Biener via Gcc-patches
On Sat, Jun 19, 2021 at 9:48 PM apinski--- via Gcc-patches wrote: > > From: Andrew Pinski > > I had missed this when wrote the patch which allowed the > gimple to be moved from inside the conditional as it. It > was also missed in the review. Anyways the range information > needs to be reset fo

Re: [PATCH V3] Split loop for NE condition.

2021-06-20 Thread guojiufu via Gcc-patches
On 2021-06-09 19:18, guojiufu wrote: On 2021-06-09 17:42, guojiufu via Gcc-patches wrote: On 2021-06-08 18:13, Richard Biener wrote: On Fri, 4 Jun 2021, Jiufu Guo wrote: cut... cut... Here is the updated patch, thanks for your time! Updates: . Enhance code to support negative step. . Che

Re: [PATCH] doc/lto.texi: List slim object format as the default

2021-06-20 Thread Richard Biener
On Sun, 20 Jun 2021, Dimitar Dimitrov wrote: > Slim LTO object files have been the default for quite a while, since: > commit e9f67e625c2a4225a7169d7220dcb85b6fdd7ca9 > Author: Jan Hubicka > common.opt (ffat-lto-objects): Disable by default. > > That commit did not update lto.texi, so

[patch] Fortran: fix sm computation in CFI_allocate [PR93524]

2021-06-20 Thread Sandra Loosemore
I ran into this bug in CFI_allocate while testing something else and then realized there was already a PR open for it. It seems like an easy fix, and I've used Tobias's test case from the issue more or less verbatim. There were some other bugs added on to this issue but I think they have all

[PATCH] MAINTAINERS: Add myself as maintainer of the i386 vector extensions.

2021-06-20 Thread liuhongt via Gcc-patches
ChangeLog: * MAINTAINERS: Add myself as maintainer of the i386 vector extensions. --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index 32a414ba8af..4ac4fc5f3bd 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -74,6 +74,7 @@ hppa port

[PATCH] Disparage slightly the mask register alternative for bitwise operations. [PR target/101142]

2021-06-20 Thread liuhongt via Gcc-patches
The avx512 supports bitwise operations with mask registers, but the throughput of those instructions is much lower than that of the corresponding gpr version, so we would additionally disparages slightly the mask register alternative for bitwise operations in the LRA. Also when allocano cost of GE

Re: [PATCH] c++: REF_PARENTHESIZED_P wrapper inhibiting NRVO [PR67302]

2021-06-20 Thread Jason Merrill via Gcc-patches
On 6/19/21 3:45 PM, Patrick Palka wrote: Here, in C++14 or later, we remember the parentheses around 'a' in the return statement by using a REF_PARENTHESIZED_P wrapper, which ends up inhibiting NRVO because we don't look through this wrapper before checking the conditions for NRVO. This patch fi

Re: [PATCH] c++: conversion to base of vbase in NSDMI [PR80431]

2021-06-20 Thread Jason Merrill via Gcc-patches
On 6/18/21 4:39 PM, Patrick Palka wrote: The delayed processing of conversions to a virtual base inside an NSDMI assumes the target base type is a (possibly indirect) virtual base of the current class, but the target base type could also be an indirect non-virtual base inherited from a virtual ba

[PATCH 2/2] Add TARGET_ASM_EMIT_GNU_PROPERTY_NOTE

2021-06-20 Thread H.J. Lu via Gcc-patches
Generate the GNU_PROPERTY_1_NEEDED_SINGLE_GLOBAL_DEFINITION marker for -fsingle-global-definition to indicate that the object file requires canonical function pointers and cannot be used with copy relocation. * configure.ac (HAVE_LD_SINGLE_GLOBAL_DEFINITION_SUPPORT): New. Define to

[PATCH 0/2] Implement single global definition

2021-06-20 Thread H.J. Lu via Gcc-patches
On systems with copy relocation: * A copy in executable is created for the definition in a shared library at run-time by ld.so. * The copy is referenced by executable and shared libraries. * Executable can access the copy directly. Issues are: * Overhead of a copy, time and space, may be visible a

[PATCH 1/2] Add -fsingle-global-definition

2021-06-20 Thread H.J. Lu via Gcc-patches
1. Generate a single global definition marker in relocatable objects. a. Always use GOT to access undefined data and function symbols, including in PIE and non-PIE. These will avoid copy relocations in executables. b. This is compatible with existing executables and shared librar

[PATCH] doc/lto.texi: List slim object format as the default

2021-06-20 Thread Dimitar Dimitrov
Slim LTO object files have been the default for quite a while, since: commit e9f67e625c2a4225a7169d7220dcb85b6fdd7ca9 Author: Jan Hubicka common.opt (ffat-lto-objects): Disable by default. That commit did not update lto.texi, so do it now. gcc/ChangeLog: * doc/lto.texi (Design

[x86_64 PATCH] PR target/11877: Use xor to write zero to memory with -Os

2021-06-20 Thread Roger Sayle
The following patch attempts to resolve PR target/11877 (without triggering PR/23102). On x86_64, writing an SImode or DImode zero to memory uses an instruction encoding that is larger than first clearing a register (using xor) then writing that to memory. Hence, after reload, the peephole2 pass

Re: [PATCH] Modula-2 into the GCC tree on master

2021-06-20 Thread Gaius Mulley via Gcc-patches
Segher Boessenkool writes: > Hi! > > On Fri, Jun 18, 2021 at 10:00:40PM +0100, Gaius Mulley wrote: >> Segher Boessenkool writes: >> > On Thu, Jun 17, 2021 at 11:26:41PM +0100, Gaius Mulley via Gcc-patches >> > wrote: >> >> Debian Stretch using make -j 4, x86_64 GNU/Linux Debian Stretch built >>