From: Andrew Pinski
This is the first of series of patches to simplify phi-opt
to use match and simplify in many cases. This simplification
will more things to optimize.
This is what Richard requested in
https://gcc.gnu.org/pipermail/gcc-patches/2021-May/571197.html
and I think it is the right
On 5/31/2021 11:50 PM, Richard Sandiford wrote:
"H.J. Lu via Gcc-patches" writes:
On Mon, May 31, 2021 at 06:32:04AM -0700, H.J. Lu wrote:
On Mon, May 31, 2021 at 6:26 AM Richard Biener
wrote:
On Mon, May 31, 2021 at 3:12 PM H.J. Lu wrote:
On Mon, May 31, 2021 at 5:46 AM Richard Biener
"H.J. Lu via Gcc-patches" writes:
> On Mon, May 31, 2021 at 06:32:04AM -0700, H.J. Lu wrote:
>> On Mon, May 31, 2021 at 6:26 AM Richard Biener
>> wrote:
>> >
>> > On Mon, May 31, 2021 at 3:12 PM H.J. Lu wrote:
>> > >
>> > > On Mon, May 31, 2021 at 5:46 AM Richard Biener
>> > > wrote:
>> > > >
>
On Mon, May 31, 2021 at 10:21 PM Hongtao Liu via Gcc-patches
wrote:
>
> Hi:
> This patch is about to simplify (view_convert:type ~a) < 0 to
> (view_convert:type a) >= 0 when type is signed integer. Similar for
> (view_convert:type ~a) >= 0.
> Bootstrapped and regtested on x86_64-linux-gnu{-m32
Hi:
This patch is about to simplify (view_convert:type ~a) < 0 to
(view_convert:type a) >= 0 when type is signed integer. Similar for
(view_convert:type ~a) >= 0.
Bootstrapped and regtested on x86_64-linux-gnu{-m32,}.
Ok for the trunk?
gcc/ChangeLog:
PR middle-end/100738
* m
On 2021-05-26 17:50, Richard Biener wrote:
On Mon, 17 May 2021, Jiufu Guo wrote:
...
while (++k > n)
a[k] = b[k] + 1;
then for the second loop, it could be optimized.
Btw, I think even the first loop should be vectorized. I see we do
not handle it in niter analysis:
Analyzing loop
On Tue, Jun 1, 2021 at 10:22 AM Hongtao Liu wrote:
>
> On Thu, May 27, 2021 at 6:50 PM Richard Sandiford
> wrote:
> >
> > Jakub Jelinek writes:
> > > On Thu, May 27, 2021 at 01:07:09PM +0800, Hongtao Liu via Gcc-patches
> > > wrote:
> > >> + /* Flag used for call_insn indicates it's a fake cal
On Thu, May 27, 2021 at 3:05 PM Uros Bizjak wrote:
>
> On Thu, May 27, 2021 at 7:03 AM Hongtao Liu wrote:
> >
> > Hi:
> > This is an updated patch which implements vzeroupper as call_insn
> > which has a special vzeroupper ABI, also in this patch i reverted
> > r11-7684, r10-6451, r10-3677 whic
On Thu, May 27, 2021 at 6:50 PM Richard Sandiford
wrote:
>
> Jakub Jelinek writes:
> > On Thu, May 27, 2021 at 01:07:09PM +0800, Hongtao Liu via Gcc-patches wrote:
> >> + /* Flag used for call_insn indicates it's a fake call. */
> >> + RTX_FLAG (insn, used) = 1;
> >
> >> + /* CALL_INSN us
On Mon, May 31, 2021 at 6:14 PM Richard Biener
wrote:
>
> On Thu, May 27, 2021 at 9:05 AM Hongtao Liu wrote:
> >
> > On Wed, May 26, 2021 at 8:41 PM Richard Biener
> > wrote:
> > >
> > > On Wed, May 26, 2021 at 7:06 AM Hongtao Liu wrote:
> > > >
> > > > On Tue, May 25, 2021 at 6:24 PM Richard B
An ongoing issue is the the order we evaluate things in can affect
decisions along the way. As ranger isn't a fully iterative pass, we can
sometimes come up with different results if back edges are processed in
different orders.
One of the ways this can happen is when the cache is propagating
Now the ranger-cache is converted to range_query, split the original
ssa_range_in_bb routine into more consitent(and correct) range_of_def,
entry_range ad exit_range routines for internal use.
Bootstrapped on x86_64-pc-linux-gnu, with no new regressions. Pushed
Andrew
>From 2e0f3246e0bd92643
This patch is the penultimate patch to moving the gori-compute engine
over to the range-query model.
gori-compute has been simplified/flattened. There were too many
confusing routines before, now its much more straight forward.
Internally, the routines have all been switched over to use the
When a range evolves to the point where it becomes a constant, it is
marked as invariant. Rather than marking it as always_current in the
timestamp, give it the correct timestamp and just never flag it as
stale. This will allow other names which use this value to become stale
and be recomputed
On Tue, May 25, 2021 at 7:12 AM Richard Biener via Gcc-patches
wrote:
>
> On Mon, May 24, 2021 at 4:09 AM apinski--- via Gcc-patches
> wrote:
> >
> > From: Andrew Pinski
> >
> > To simplify PHI-OPT and future improvements to it in most
> > (but not all) cases, using match-and-simplify simplifies
On Mon, May 31, 2021 at 06:32:04AM -0700, H.J. Lu wrote:
> On Mon, May 31, 2021 at 6:26 AM Richard Biener
> wrote:
> >
> > On Mon, May 31, 2021 at 3:12 PM H.J. Lu wrote:
> > >
> > > On Mon, May 31, 2021 at 5:46 AM Richard Biener
> > > wrote:
> > > >
> > > > On Mon, May 31, 2021 at 2:09 PM H.J. L
On Mon, May 31, 2021 at 11:13 AM H.J. Lu wrote:
>
> On Mon, May 31, 2021 at 11:07 AM Jeff Law wrote:
> >
> >
> >
> > On 5/31/2021 6:04 AM, H.J. Lu wrote:
> > > On Sun, May 30, 2021 at 11:49 AM Jeff Law wrote:
> > >>
> > >>
> > >> On 5/11/2021 5:35 PM, H.J. Lu via Gcc-patches wrote:
> > >>> Add T
On Mon, May 31, 2021 at 11:07 AM Jeff Law wrote:
>
>
>
> On 5/31/2021 6:04 AM, H.J. Lu wrote:
> > On Sun, May 30, 2021 at 11:49 AM Jeff Law wrote:
> >>
> >>
> >> On 5/11/2021 5:35 PM, H.J. Lu via Gcc-patches wrote:
> >>> Add TARGET_READ_MEMSET_VALUE and TARGET_GEN_MEMSET_VALUE to support
> >>> ta
On 5/31/2021 6:04 AM, H.J. Lu wrote:
On Sun, May 30, 2021 at 11:49 AM Jeff Law wrote:
On 5/11/2021 5:35 PM, H.J. Lu via Gcc-patches wrote:
Add TARGET_READ_MEMSET_VALUE and TARGET_GEN_MEMSET_VALUE to support
target instructions to duplicate QImode value to TImode/OImode/XImode
value for me
Completing the tests revealed that this patch was missing a small change
in include/bits/stl_iterator.h. Here is the updated patch.
libstdc++: [_GLIBCXX_ASSERTIONS] Activate basic debug checks
Use _GLIBCXX_ASSERTIONS as a _GLIBCXX_DEBUG light mode. When
defined it activates
all _GL
From: Andrew Pinski
The problem here is we don't have an assignment type any more
for empty structs as they were removed during gimplifcation.
This adds a special case where the assignment var does not exist
and the return decl is empty typed.
OK? Tested on aarch64-linux-gnu with no regressions.
From: Andrew Pinski
Instead of only removing assignments of zero-sized types,
assignments of all empty types should be removed during gimplification.
This moves to use is_empty_type which will be used in other places too.
OK? Bootstrapped and tested on aarch64-linux-gnu with no regressions.
Th
This commit adds a new testsuite for the CTF debug format.
2021-05-14 Indu Bhagat
David Faust
gcc/testsuite/
* lib/gcc-dg.exp (gcc-dg-frontend-supports-ctf): New procedure.
(gcc-dg-debug-runtest): Add -gctf support.
* gcc.dg/debug/btf/btf-1.c: New test.
libiberty/ChangeLog:
* simple-object.c (handle_lto_debug_sections): Copy over .BTF section.
---
libiberty/simple-object.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libiberty/simple-object.c b/libiberty/simple-object.c
index 909995dd166..facbf94fd09 100644
--- a/libiberty/simp
This patch changes the BPF GCC backend in order to use the DWARF debug
hooks and therefore enables the user to generate BTF debugging
information with -gbtf. Generating BTF is crucial when compiling BPF
programs, since the CO-RE (compile-once, run-everwhere) mechanism
used by the kernel BPF loader
This commit documents the new command line options introduced by the
CTF and BTF debug formats.
2021-05-14 Indu Bhagat
* doc/invoke.texi: Document the CTF and BTF debug info options.
---
gcc/doc/invoke.texi | 20
1 file changed, 20 insertions(+)
diff --git a/gcc/
[Changes from V8:
- Rebased to today's master.
- Adapted to use the write-symbols new infrastructure recently
applied upstream.
- Little change in libiberty to copy .BTF sections over when
LTOing.]
Hi people!
Last year we submitted a first patch series introducing support for
the CTF debuggin
Move some functionality into a procedure of its own. This is only so that when
the patch for ctf comes along, the gcc-dg-debug-runtest procedure looks bit
more uniform.
gcc/testsuite/ChangeLog:
* lib/gcc-dg.exp (gcc-dg-target-supports-debug-format): New procedure.
---
gcc/testsuite/lib/g
This patch introduces a dwarf2int.h header, to be used by code that
needs access to the internal DIE structures and their attributes.
The following functions which were previously defined as static in
dwarf2out.c are now non-static, and extern prototypes for them have
been added to dwarf2int.h:
-
On 2021-05-25 5:14 a.m., Przemyslaw Wirkus wrote:
Hi,
Just a follow up after GCC 11 release.
I've backported to gcc-10 branch (without any change to original patches)
PR97969 and following PR98722 & PR98777 patches.
Commits apply cleanly without changes.
Built and regression tested on:
* arm-
Hello Martin,
On Mon, 31 May 2021, Martin Liška wrote:
> I've made quite some progress with the porting of the documentation and
> I would like to present it to the community now:
> https://splichal.eu/scripts/sphinx/
>
> Note the documentation is automatically ([1]) generated from texinfo with
ChangeLog:
2021-05-31 Indu Bhagat
* MAINTAINERS (Write After Approval): Add myself.
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINERS
index fbaa183..d80ed8f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -324,6 +324,7 @@ Andrew Benson
On 29.05.21 10:03, Jakub Jelinek wrote:
On Fri, May 28, 2021 at 12:59:20AM +0200, Tobias Burnus wrote:
* gfortran.dg/gomp/depend-iterator-1.f90: New test.
* gfortran.dg/gomp/depend-iterator-2.f90: New test.
Something I've missed during the review but it shows up during testing:
Now
This makes SLP discovery handle associatable (including mixed
plus/minus) chains better by swapping operands across the whole
chain. To work this adds caching of the 'matches' lanes for
failed SLP discovery attempts, thereby fixing a failed SLP
discovery for the slp-pr98855.cc testcase which resul
This patch adds support for auto-vectorization of average value
computation using vhadd or vrhadd, for both MVE and Neon.
The patch adds the needed [u]avg3_[floor|ceil] patterns to
vec-common.md, I'm not sure how to factorize them without introducing
an unspec iterator?
It also adds tests for 'fl
On Mon, May 31, 2021 at 6:32 AM H.J. Lu wrote:
>
> On Mon, May 31, 2021 at 6:26 AM Richard Biener
> wrote:
> >
> > On Mon, May 31, 2021 at 3:12 PM H.J. Lu wrote:
> > >
> > > On Mon, May 31, 2021 at 5:46 AM Richard Biener
> > > wrote:
> > > >
> > > > On Mon, May 31, 2021 at 2:09 PM H.J. Lu wrot
Hi Jakub,
this is a v3 version of my OpenMP 5.0 structure element mapping patch,
v2 was here: https://gcc.gnu.org/pipermail/gcc-patches/2020-December/561139.html
This v3 adds a small bug fix, where the initialization of the refcount didn't
handle all cases, fixed by using gomp_refcount_increment
On 5/28/21 11:25 AM, Richard Biener wrote:
This makes sure to perform final value replacement of constants
when we also are sure to propagate those, like in VRP. This avoids
spurious diagnostics when doing so only from within SCCP which can
leave unreachable loops in the IL triggering bogus diag
On Mon, May 31, 2021 at 6:26 AM Richard Biener
wrote:
>
> On Mon, May 31, 2021 at 3:12 PM H.J. Lu wrote:
> >
> > On Mon, May 31, 2021 at 5:46 AM Richard Biener
> > wrote:
> > >
> > > On Mon, May 31, 2021 at 2:09 PM H.J. Lu wrote:
> > > >
> > > > On Wed, May 26, 2021 at 10:28:16AM +0200, Richard
On Mon, May 31, 2021 at 3:12 PM H.J. Lu wrote:
>
> On Mon, May 31, 2021 at 5:46 AM Richard Biener
> wrote:
> >
> > On Mon, May 31, 2021 at 2:09 PM H.J. Lu wrote:
> > >
> > > On Wed, May 26, 2021 at 10:28:16AM +0200, Richard Biener wrote:
> > > > > > >
> > > > > > > -- Target Hook: rtx TARGET_GE
Hello.
I've made quite some progress with the porting of the documentation and
I would like to present it to the community now:
https://splichal.eu/scripts/sphinx/
Note the documentation is automatically ([1]) generated from texinfo with a
GitHub workflow ([2]).
It's built on the devel/sphinx G
On Mon, May 31, 2021 at 5:46 AM Richard Biener
wrote:
>
> On Mon, May 31, 2021 at 2:09 PM H.J. Lu wrote:
> >
> > On Wed, May 26, 2021 at 10:28:16AM +0200, Richard Biener wrote:
> > > > > >
> > > > > > -- Target Hook: rtx TARGET_GEN_MEMSET_VALUE (rtx DATA,
> > > > > > scalar_int_mode
> > > > > >
On Mon, May 31, 2021 at 2:09 PM H.J. Lu wrote:
>
> On Wed, May 26, 2021 at 10:28:16AM +0200, Richard Biener wrote:
> > > > >
> > > > > -- Target Hook: rtx TARGET_GEN_MEMSET_VALUE (rtx DATA,
> > > > > scalar_int_mode
> > > > > MODE)
> > > > > This function returns the RTL of a regi
On Sun, May 30, 2021 at 11:35 PM apinski--- via Gcc-patches
wrote:
>
> From: Andrew Pinski
>
> The problem here is we don't have an assignment type any more
> for zero-length structs as they were removed during gimplifcation.
> This adds a special case where the assignment var does not exist
> an
On Wed, May 26, 2021 at 10:28:16AM +0200, Richard Biener wrote:
> > > >
> > > > -- Target Hook: rtx TARGET_GEN_MEMSET_VALUE (rtx DATA, scalar_int_mode
> > > > MODE)
> > > > This function returns the RTL of a register containing
> > > > 'GET_MODE_SIZE (MODE)' consecutive copies
On Sun, May 30, 2021 at 11:49 AM Jeff Law wrote:
>
>
>
> On 5/11/2021 5:35 PM, H.J. Lu via Gcc-patches wrote:
> > Add TARGET_READ_MEMSET_VALUE and TARGET_GEN_MEMSET_VALUE to support
> > target instructions to duplicate QImode value to TImode/OImode/XImode
> > value for memmset. Define SCRATCH_SSE
PING^1
On 5/20/21 12:43 PM, Martin Liška wrote:
The simplification patch improves option completion and
handling of the option.
Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
Ready to be installed?
Thanks,
Martin
gcc/ChangeLog:
* common.opt: Use proper Enum value
On Tue, 25 May 2021, Tobias Burnus wrote:
> I think "once a day" is clearer. [The commit has the message "Daily
> bump." and bumps (not "dumps") the date in DATESTAMP. I wanted to relate
> those – but it seems as if this just adds more confusion.]
FWIW, your updated version makes everything easy t
On Mon, 31 May 2021 at 15:22, Prathamesh Kulkarni
wrote:
>
> On Wed, 26 May 2021 at 14:07, Marc Glisse wrote:
> >
> > On Wed, 26 May 2021, Prathamesh Kulkarni via Gcc-patches wrote:
> >
> > > The attached patch removes calls to builtins in vmul_n* (a, b) with __a *
> > > __b.
> >
> > I am not fa
On Thu, May 27, 2021 at 9:05 AM Hongtao Liu wrote:
>
> On Wed, May 26, 2021 at 8:41 PM Richard Biener
> wrote:
> >
> > On Wed, May 26, 2021 at 7:06 AM Hongtao Liu wrote:
> > >
> > > On Tue, May 25, 2021 at 6:24 PM Richard Biener
> > > wrote:
> > > >
> > > > On Mon, May 24, 2021 at 11:52 AM Hong
On Thu, May 27, 2021 at 5:38 AM bin.cheng via Gcc-patches
wrote:
>
> Hi,
> As described in PR100499, loop niters analysis for "!=" now relies on
> multiple_of_p which
> so far is mostly implemented for no-overflow scenarios. This patch fixes the
> issue by:
> 1. add new parameter to multiple_of
On Wed, 26 May 2021 at 14:07, Marc Glisse wrote:
>
> On Wed, 26 May 2021, Prathamesh Kulkarni via Gcc-patches wrote:
>
> > The attached patch removes calls to builtins in vmul_n* (a, b) with __a *
> > __b.
>
> I am not familiar with neon, but are __a and __b unsigned here? Otherwise,
> is vmul_n
On Mon, May 31, 2021 at 11:13:22AM +0200, Richard Biener wrote:
> On Mon, May 31, 2021 at 10:29 AM Jakub Jelinek via Gcc-patches
> wrote:
> >
> > On Sun, May 30, 2021 at 11:30:25PM -0700, apinski--- via Gcc-patches wrote:
> > > +static bool
> > > +zero_sized_decl (const_tree decl)
> > > +{
> > > +
On Mon, May 31, 2021 at 10:29 AM Jakub Jelinek via Gcc-patches
wrote:
>
> On Sun, May 30, 2021 at 11:30:25PM -0700, apinski--- via Gcc-patches wrote:
> > +static bool
> > +zero_sized_decl (const_tree decl)
> > +{
> > + if (!decl)
> > +return true;
> > +
> > + tree type = TREE_TYPE (decl);
>
On Sun, May 30, 2021 at 11:30:25PM -0700, apinski--- via Gcc-patches wrote:
> +static bool
> +zero_sized_decl (const_tree decl)
> +{
> + if (!decl)
> +return true;
> +
> + tree type = TREE_TYPE (decl);
> + if (AGGREGATE_TYPE_P (type) && TYPE_SIZE (type)
> + && integer_zerop (TYPE_SIZE (
On Mon, May 31, 2021 at 10:14:34AM +0200, Christophe Lyon wrote:
> > Something I've missed during the review but it shows up during testing:
> >
> > > diff --git a/gcc/testsuite/gfortran.dg/gomp/depend-iterator-1.f90
> > > b/gcc/testsuite/gfortran.dg/gomp/depend-iterator-1.f90
> > > new file mode
On Sat, 29 May 2021 at 10:03, Jakub Jelinek via Gcc-patches
wrote:
>
> On Fri, May 28, 2021 at 12:59:20AM +0200, Tobias Burnus wrote:
> > * gfortran.dg/gomp/depend-iterator-1.f90: New test.
> > * gfortran.dg/gomp/depend-iterator-2.f90: New test.
>
> Something I've missed during the rev
*PING*
On 25.05.21 13:16, Tobias Burnus wrote:
On 24.05.21 09:45, Gerald Pfeifer wrote:
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. Change
This documents the added __builtin_shufflevector extension for GCC 12.
Pushed.
---
htdocs/gcc-12/changes.html | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html
index 9fecc24b..42ded16d 100644
--- a/htdocs/gcc-12/cha
59 matches
Mail list logo