:
* tree-ssa-phiopt.cc: Remove calls.h include.
Signed-off-by: Andrew Pinski
---
gcc/tree-ssa-phiopt.cc | 1 -
1 file changed, 1 deletion(-)
diff --git a/gcc/tree-ssa-phiopt.cc b/gcc/tree-ssa-phiopt.cc
index a194bf675e4..e27166c55a5 100644
--- a/gcc/tree-ssa-phiopt.cc
+++ b/gcc/tree-ssa-phiopt.cc
a maintenance issue in future).
OK for mainline and 15?
Andrew
libgomp/ChangeLog:
* testsuite/libgomp.c/interop-hsa.c: New test.
---
libgomp/testsuite/libgomp.c/interop-hsa.c | 203 ++
1 file changed, 203 insertions(+)
create mode 100644 libgomp/testsuite/libgomp.c
ed on x86_64-linux-gnu.
gcc/ChangeLog:
* tree-cfg.cc (verify_gimple_cond): Error out if the comparison
throws.
Signed-off-by: Andrew Pinski
---
gcc/tree-cfg.cc | 13 +
1 file changed, 13 insertions(+)
diff --git a/gcc/tree-cfg.cc b/gcc/tree-cfg.cc
index 6a29a5
ize_t count;
size_t i;
The GCN part seems OK, albeit the conditionals are confusing.
Andrew
On 22/04/2025 21:41, Thomas Schwinge wrote:
From: Andrew Pinski
There are GCN/C++ target as well as offloading codes, where the hard-coded
section names in 'gcn_hsa_declare_function_name' do not fit, and assembly thus
fails:
LLVM ERROR: Size expression must be absolute.
T
s can speed up things slightly
because
now fold_stmt won't return true on all GIMPLE_COND with `bool_var != 0` in it.
gcc/ChangeLog:
* gimple-fold.cc (replace_stmt_with_simplification): Return false
if replacing `bool_var != 0` with `bool_var` in GIMPLE_COND.
Signed-off-
To speed up things slightly so not needing to call all the way through
to match and simplify, we should return early for true/false on GIMPLE_COND.
gcc/ChangeLog:
* gimple-fold.cc (fold_stmt_1): For GIMPLE_COND return early
for true/false.
Signed-off-by: Andrew Pinski
---
gcc
rison simplifications.
Signed-off-by: Andrew Pinski
---
gcc/match.pd | 31 +--
1 file changed, 17 insertions(+), 14 deletions(-)
diff --git a/gcc/match.pd b/gcc/match.pd
index ba036e52837..0fe90a6edc4 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -7759,20 +7
f the
variable didn't change.
There is a 4th patch which I am working on dealing with trapping math and
comparisons. I am trying to figure out the
best way of implementing it.
Thanks,
Andrew Pinski
Andrew Pinski (3):
match: Move `(cmp (cond @0 @1 @2) @3)` simplification after the bool
t the pre-RA scheduler is disabled at -O2? (I am
not 100% sure this should be mentioned).
Those are the only 2 I saw missing.
Thanks,
Andrew Pinski
>
> I'll leave a few days for comments.
>
> Thanks,
> Richard
>
> ---
> htdocs/gcc-15/changes.html | 241 +
On Tue, Apr 22, 2025 at 12:11 AM Martin Jambor wrote:
>
> Hi,
>
> On Thu, Apr 17 2025, Andrew Pinski wrote:
> > Here we had:
> > node = node;
> > Which does nothing so let's remove it.
> >
> > gcc/ChangeLog:
> >
> > * ipa-
-off-by: Andrew Pinski
---
gcc/testsuite/g++.dg/eh/pr119507.C | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/testsuite/g++.dg/eh/pr119507.C
b/gcc/testsuite/g++.dg/eh/pr119507.C
index 50afa75a43f..c68536ff671 100644
--- a/gcc/testsuite/g++.dg/eh/pr119507.C
+++ b/gcc/testsuite/g++.dg/eh
On Mon, Apr 21, 2025 at 1:42 AM Richard Biener
wrote:
>
> On Thu, Apr 17, 2025 at 7:37 PM Andrew Pinski
> wrote:
> >
> > So unlike constants, address invariants are currently put first if
> > used with a SSA NAME.
> > It would be better if address invaria
On Mon, Apr 21, 2025 at 9:52 AM Andrew Pinski wrote:
>
> This implements a simple copy propagation for aggregates in the similar
> fashion as we already do for copy prop of zeroing.
>
> Right now this only looks at the previous vdef statement but this allows us
> to catch a lot
.
* gcc.c-torture/execute/builtins/pr22237-1-lib.c: New test.
* gcc.c-torture/execute/builtins/pr22237-1.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/gimple-fold.cc| 73 +++
gcc/testsuite/g++.dg/opt/pr66119.C| 2
On Sat, Apr 19, 2025 at 8:32 PM Andrew Pinski wrote:
>
> r15-6943-g9c4397cafc5ded added support to undo IPA-VRP return value
> optimization for tail calls,
> using the same code ERF_RETURNS_ARG can be supported for functions which
> return one of their arguments.
> This allow
.
Bootstrapped and tested on x86_64-linux-gnu.
PR tree-optimization/67797
gcc/ChangeLog:
* tree-tailcall.cc (find_tail_calls): Add support for ERF_RETURNS_ARG.
gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/tailcall-14.c: New test.
Signed-off-by: Andrew Pinski
---
gcc
;
passing NULL_TREE for RHS.
(strlen_pass::check_and_optimize_stmt): Update call to handle_assign.
gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/calloc-10.c: New test.
* gcc.dg/tree-ssa/calloc-11.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/tree
for the memcpy and be optimized via the method that was
just added.
Pushed as obvious after a test run.
gcc/testsuite/ChangeLog:
* gcc.dg/pr118947-1.c: Use 1025 as the size of the buf.
* gcc.dg/pr78408-3.c: Likewise.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/pr118947
:
* vec.h (array_slice::begin): Assert that the
slice is valid.
(array_slice::end): Likewise.
Signed-off-by: Andrew Pinski
---
gcc/vec.h | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/gcc/vec.h b/gcc/vec.h
index 915df06f03e..eae4b0feb4b 100644
--- a/gcc/vec.h
On Fri, Mar 28, 2025 at 9:58 PM Andrew Pinski wrote:
>
> This has been broken since GCC started to put the comdat functions'
> gcc_except_table into their
> own section; r0-118218-g3e6011cfebedfb. What would happen is after a
> non-comdat function is processed,
> the ca
On Fri, Apr 18, 2025, 7:29 PM haochen.jiang wrote:
> On Linux/x86_64,
>
> 94f275432f7ea4781ec7c05fa9d1d81ef6cb3fc1 is the first bad commit
> commit 94f275432f7ea4781ec7c05fa9d1d81ef6cb3fc1
> Author: Andrew Pinski
> Date: Thu Feb 20 16:09:05 2025 -0800
>
>
loc optimization.
(printf_strlen_execute): Free post dom info.
gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/calloc-6.c: New test.
* gcc.dg/tree-ssa/calloc-7.c: New test.
* gcc.dg/tree-ssa/calloc-8.c: New test.
* gcc.dg/tree-ssa/calloc-9.c: New test.
Signed-off-by: Andrew
On Thu, Apr 17, 2025 at 8:30 PM Sam James wrote:
>
> Andrew Pinski writes:
>
> > DSE has support for trimming memset (and memset like) statements.
> > In this case we have `MEM [(char * {ref-all})&z] = {};`
> > in
> > the IR and when we go to trim it, we c
On Fri, Apr 18, 2025 at 6:21 AM Jeff Law wrote:
>
>
>
> On 4/17/25 9:12 PM, Andrew Pinski wrote:
> > This is the second part of the PR which comes from transformation
> > of memset into either stores of 0 (via an integral type) or stores
> > of {}. We already ha
:
* gcc.dg/tree-ssa/ssa-dse-53.c: New test.
* gcc.dg/tree-ssa/ssa-dse-54.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-53.c | 26 ++
gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-54.c | 25 +
gcc/tree-ssa-dse.cc
e.cc (maybe_trim_constructor_store): Strip over useless
type
conversions after taking the address of the MEM_REF.
gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/ssa-dse-52.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-52.c | 30 ++
iable): Likewise.
* ipa-icf.h (sem_function): Remove ctor for
obstack argument only one.
(sem_variable): Likewise.
Signed-off-by: Andrew Pinski
---
gcc/ipa-icf.cc | 14 --
gcc/ipa-icf.h | 5 -
2 files changed, 19 deletions(-)
diff --git a/gcc/ipa-icf.cc b/gc
Here we had:
node = node;
Which does nothing so let's remove it.
gcc/ChangeLog:
* ipa-icf.cc (sem_function::init): Remove assignment of node from
itself.
Signed-off-by: Andrew Pinski
---
gcc/ipa-icf.cc | 1 -
1 file changed, 1 deletion(-)
diff --git a/gcc/ipa-icf.cc b/gc
l we get a
statement that may clobber the read.
gcc/testsuite/ChangeLog:
* gcc.dg/pr118947-1.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/gimple-fold.cc| 39 ++-
gcc/testsuite/gcc.dg/pr118947-1.c | 15
2 files changed, 43
8902
gcc/ChangeLog:
* fold-const.cc (tree_swap_operands_p): Place invariants in the first
operand
if not used with constants.
gcc/testsuite/ChangeLog:
* gcc.dg/tree-ssa/pr118902-1.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/fold-const.cc
On 17/04/2025 15:10, Tobias Burnus wrote:
Hi all,
@Fortraners: Comments to the added 'do concurrent' item?
@Thomas: Are you fine with this C++ wording?
@Andrew: Likewise for C++ and ROCm bump?
This part is fine with me.
Andrew
Anyone: comments are welcome.
Affected pages
On 4/16/25 16:55, Andrew MacLeod wrote:
I started at a 0.2% overall compilation increase (1.8% in VRP). In the
end, this patch is down to 0.6% in VRP, and only 0.08% overall, so
manageable for all the extra work.
Final version performance run...
VRP slowed down by 0.28%
Threading sped
On 4/16/25 17:28, Sam James wrote:
Andrew MacLeod writes:
* gcc.dg/tree-ssa/phi-opt-value-5.c : WIth the expanded ranges, CCP2
pass use to export:
Global Exported: d_3 = [irange] int [-INF, +INF] MASK 0xfffe
VALUE 0x1
and now
Global Exported: d_3 = [irange] int [-INF, -1][1
igned-off-by: Andrew Pinski
(cherry picked from commit c7b76a076cb2c6ded7ae208464019b04cb0531a2)
---
gcc/gimple-match-head.cc | 6 ++
gcc/testsuite/gcc.dg/torture/pr116412-1.c | 6 ++
2 files changed, 12 insertions(+)
create mode 100644 gcc/testsuite/gcc.dg/torture/pr116
-end/111285
gcc/ChangeLog:
* tree-vect-generic.cc (do_unop): Use a signed type for the
operand if the operation was ABSU_EXPR.
gcc/testsuite/ChangeLog:
* g++.dg/torture/vect-absu-1.C: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit
This includes all of the regression fixes that were backported yesterday to GCC
14
and 13 that are also regressions in GCC 12.
Andrew Pinski (6):
phiopt: Reset the number of iterations information of a loop when
changing an exit from the loop [PR117243]
backprop: Fix deleting of a phi
/pr118476-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit d45a6502d1ec87d43f1a39f87cca58f1e28369c8)
---
gcc/testsuite/gcc.dg/torture/pr118476-1.c | 14 ++
1 file changed, 14 insertions(+)
create mode 100644 gcc/testsuite/gcc.dg/torture/pr118476-1.c
diff --git a
te/ChangeLog:
* gcc.dg/torture/pr118922-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit 7232c005afb5002cdfd0a2dbd0e8b8f2d80250ce)
---
gcc/testsuite/gcc.dg/torture/pr118922-1.c | 57 +++
gcc/tree-ssa-phiopt.cc| 3 ++
2 files
another day.
Bootstrapped and tested on x86_64-linux-gnu.
PR tree-optimization/116922
gcc/ChangeLog:
* gimple-ssa-backprop.cc (remove_unused_var): Handle phi
nodes correctly.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr116922.c: New test.
Signed-off-by: Andrew
o a loop.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr117243-1.c: New test.
* gcc.dg/torture/pr117243-2.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit b7c69cc072ef0da36439ebc55c513b48e68391b7)
---
gcc/testsuite/gcc.dg/torture/pr117243-1.c | 30
bitmask is explicitly
applied in some places and not others.
Bootstraps on x86_64-pc-linux-gnu with no regressions. Finally. Is
this OK for trunk, or should I hold off a little bit?
Andrew
From 36e4b77565a1965d5bca15d196f32d5758393063 Mon Sep 17 00:00:00 2001
From: Andrew MacLeod
Date: Mon
ypes. Maybe a helper function might be useful too.
Thanks,
Andrew
>
>
> 2025-04-15 Eric Botcazou
>
> * tree-ssa-phiopt.cc (factor_out_conditional_operation): Do not
> bypass the int_fits_type_p test for boolean types whose precision
> is not 1.
>
he compiler, so
instead this updates the testcase to use one single architecture so we get a
consistent result.
Bootstrapped Regtested on aarch64-none-linux-gnu and no issues.
Cross checked the failing case on amdgcn-amdhsa
and all pass now.
Ok for master?
This is OK.
Andrew
Thanks,
Tamar
igned-off-by: Andrew Pinski
(cherry picked from commit c7b76a076cb2c6ded7ae208464019b04cb0531a2)
---
gcc/gimple-match-head.cc | 6 ++
gcc/testsuite/gcc.dg/torture/pr116412-1.c | 6 ++
2 files changed, 12 insertions(+)
create mode 100644 gcc/testsuite/gcc.dg/torture/pr116
This includes the one which needed some changes to the function (gimple_extract)
being split out from gimple-match-head.cc in GCC 14.
Andrew Pinski (3):
discriminators: Fix assigning discriminators on edge [PR113546]
match: Reject non-ssa name/min invariants in gimple_extract [PR116412
/pr118476-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit d45a6502d1ec87d43f1a39f87cca58f1e28369c8)
---
gcc/testsuite/gcc.dg/torture/pr118476-1.c | 14 ++
1 file changed, 14 insertions(+)
create mode 100644 gcc/testsuite/gcc.dg/torture/pr118476-1.c
diff --git a
gsi_start_nondebug_after_labels_bb.
(assign_discriminators): Update call to first_non_label_nondebug_stmt.
gcc/testsuite/ChangeLog:
* c-c++-common/torture/pr113546-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit c5ca45b8069229b6ad9bc845f03f46340f6316d7)
---
gcc/testsuite/c-c
On Sun, Mar 16, 2025 at 11:43 AM Jeff Law wrote:
>
>
>
> On 3/15/25 9:01 PM, Andrew Pinski wrote:
> > The problem here is there was a compare debug since the discriminators
> > would still take into account debug statements. For the edge we would look
> > at the fi
/pr118476-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit d45a6502d1ec87d43f1a39f87cca58f1e28369c8)
---
gcc/testsuite/gcc.dg/torture/pr118476-1.c | 14 ++
1 file changed, 14 insertions(+)
create mode 100644 gcc/testsuite/gcc.dg/torture/pr118476-1.c
diff --git a
o a loop.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr117243-1.c: New test.
* gcc.dg/torture/pr117243-2.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit b7c69cc072ef0da36439ebc55c513b48e68391b7)
(cherry picked from commit 6f0d80202b62ae48381d9ec7488522199cb7922a)
---
te/ChangeLog:
* gcc.dg/torture/pr118922-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit 7232c005afb5002cdfd0a2dbd0e8b8f2d80250ce)
(cherry picked from commit 0d931663498d2f95fb7ea0ae0ef8473f88eed26a)
---
gcc/testsuite/gcc.dg/torture/pr118922-1.c | 57
Just a set of 4 patches backported from the trunk via 14 branch
to the GCC 13 release branch. These all fix regressions.
Andrew Pinski (4):
vec-lowering: Fix ABSU lowering [PR111285]
backprop: Fix deleting of a phi node [PR116922]
phiopt: Reset the number of iterations information of a loop
another day.
Bootstrapped and tested on x86_64-linux-gnu.
PR tree-optimization/116922
gcc/ChangeLog:
* gimple-ssa-backprop.cc (remove_unused_var): Handle phi
nodes correctly.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr116922.c: New test.
Signed-off-by: Andrew
-end/111285
gcc/ChangeLog:
* tree-vect-generic.cc (do_unop): Use a signed type for the
operand if the operation was ABSU_EXPR.
gcc/testsuite/ChangeLog:
* g++.dg/torture/vect-absu-1.C: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit
These 2 had simple resolvable conflicts when backporting.
In the case of value_replacement, there was some minor code
movement in value_replacement which needed to be resolved.
In the case of PR117243, there was an extra include that was not on
the branch.
Andrew Pinski (2):
phiopt: Fix
o a loop.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr117243-1.c: New test.
* gcc.dg/torture/pr117243-2.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit b7c69cc072ef0da36439ebc55c513b48e68391b7)
---
gcc/testsuite/gcc.dg/torture/pr117243-1.c | 30
te/ChangeLog:
* gcc.dg/torture/pr118922-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit 7232c005afb5002cdfd0a2dbd0e8b8f2d80250ce)
---
gcc/testsuite/gcc.dg/torture/pr118922-1.c | 57 +++
gcc/tree-ssa-phiopt.cc| 4 ++
2 files
tract): Return false if op0
was not a SSA name nor a min invariant for
REALPART_EXPR/IMAGPART_EXPR/VCE
and BIT_FIELD_REF.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr116412-1.c: New test.
Signed-off-by: Andrew Pinski
(cherry picked from c
-end/111285
gcc/ChangeLog:
* tree-vect-generic.cc (do_unop): Use a signed type for the
operand if the operation was ABSU_EXPR.
gcc/testsuite/ChangeLog:
* g++.dg/torture/vect-absu-1.C: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit
another day.
Bootstrapped and tested on x86_64-linux-gnu.
PR tree-optimization/116922
gcc/ChangeLog:
* gimple-ssa-backprop.cc (remove_unused_var): Handle phi
nodes correctly.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr116922.c: New test.
Signed-off-by: Andrew
Backport a few of my patches from the trunk to GCC 14 release branch.
These all have been sitting on the trunk for some time now so it was time
to backport them before a release.
Andrew Pinski (6):
phiopt: Fix VCE moving by rewriting it into cast [PR116098]
aarch64: Fix early ra for -fno
/torture/pr116098-1.C: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit 1f619fe25925a5f79b9c33962e7a72e1f9fa)
---
.../c-c++-common/torture/pr116098-2.c | 46 +++
gcc/testsuite/g++.dg/torture/pr116098-1.C | 33 +
gcc/tree-ssa-phiopt.cc
::is_dead_insn): Insns
that throw are not dead with -fno-delete-dead-exceptions.
gcc/testsuite/ChangeLog:
* g++.dg/torture/pr116927-1.C: New test.
Signed-off-by: Andrew Pinski
(cherry picked from commit edec4bfc99744b48da3ffde1e4f39c9aceecfd42)
---
gcc/config/aarch64/aarch64-early
/pr118476-1.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/torture/pr118476-1.c | 14 ++
1 file changed, 14 insertions(+)
create mode 100644 gcc/testsuite/gcc.dg/torture/pr118476-1.c
diff --git a/gcc/testsuite/gcc.dg/torture/pr118476-1.c
b/gcc/testsuite/gcc.dg
t
implement v2/v3 here either.
It seems like it should be part of the Rosetta documentation that
comes from Apple.
Thanks,
Andrew
>
> PR target/119781
>
> gcc/ChangeLog:
>
> * doc/invoke.texi: Document lack of SAHF on Apple Rosetta 2.
>
> Signed-off-
.
PR testsuite/117706
gcc/testsuite/ChangeLog:
* gcc.dg/ira-shrinkwrap-prep-1.c: Unxfail for i?68-*-* and x86_64-*-*.
* gcc.dg/ira-shrinkwrap-prep-2.c: Likewise.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/ira-shrinkwrap-prep-1.c | 2 +-
gcc/testsuite/gcc.dg/ira
flicts slightly with this one:
https://gcc.gnu.org/pipermail/gcc-patches/2025-March/679386.html
Thanks,
Andrew Pinski
>
> 2025-04-11 Jakub Jelinek
>
> PR tree-optimization/119718
> * tree-tailcall.cc (maybe_error_musttail): Dump the GIMPLE at the
> end of
On 4/11/25 10:27, Qing Zhao wrote:
On Apr 10, 2025, at 11:12, Martin Uecker wrote:
Am Donnerstag, dem 10.04.2025 um 10:55 -0400 schrieb Siddhesh Poyarekar:
On 2025-04-10 10:50, Andrew MacLeod wrote:
Its not clear to me exactly what is being asked, but I think the
suggestion is that
On 4/11/25 11:36, Qing Zhao wrote:
On Apr 11, 2025, at 10:42, Andrew MacLeod wrote:
On 4/11/25 10:27, Qing Zhao wrote:
On Apr 10, 2025, at 11:12, Martin Uecker wrote:
Am Donnerstag, dem 10.04.2025 um 10:55 -0400 schrieb Siddhesh Poyarekar:
On 2025-04-10 10:50, Andrew MacLeod wrote
On 4/11/25 10:05, Qing Zhao wrote:
On Apr 10, 2025, at 10:55, Siddhesh Poyarekar wrote:
On 2025-04-10 10:50, Andrew MacLeod wrote:
Its not clear to me exactly what is being asked, but I think the suggestion is
that pointer references are being replaced with a builtin function called
On Sun, Mar 9, 2025 at 1:35 PM Andrew Pinski wrote:
>
> LLVM folks noticed that GCC was shrink wrapping the call to
> vector::push_back.
> So I thought it was a good idea to commit a testcase to make sure GCC does
> not regress
> in this area unknowning.
>
> Note the
that could aid optimization or even diagnostics.
It's not something we do at the moment AFAIK though, except when
.ACCESS_WITH_SIZE feeds directly into a __bos/__bdos call, in which
case the __bos/__bdos call ends up providing that hint (I think).
Andrew, is this something pranger c
.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/g++.target/aarch64/sve/pr116595.C | 7 +++
1 file changed, 7 insertions(+)
create mode 100644 gcc/testsuite/g++.target/aarch64/sve/pr116595.C
diff --git a/gcc/testsuite/g++.target/aarch64/sve/pr116595.C
b/gcc/testsuite/g++.target
rregardless" is not a good word. Just use "regardless" (of the
outcome) or "disregarding" (the outcome).
Otherwise LGTM. At least GCN certainly does support atomics, so the
configure test must be broken somehow.
Andrew
.
(function_type_variadic): Likewise.
(fill_in_fields): Likewise.
(statement_list): Likewise.
(block): Likewise.
(block_add_statements): Likewise.
(function_set_parameters): Likewise.
(write_global_definitions): Likewise.
Signed-off-by: Andrew Pinski
On Wed, Apr 2, 2025 at 11:52 PM Richard Biener
wrote:
>
> On Thu, Apr 3, 2025 at 7:10 AM Andrew Pinski wrote:
> >
> > builtin_unreachable_bb_p exacts empty basic blocks to have only one
> > successor edge but
> > in the case after inliing a noreturn function
assert that converts vect is non empty if
supportable_indirect_convert_operation returns true.
Signed-off-by: Andrew Pinski
---
gcc/tree-vect-generic.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/gcc/tree-vect-generic.cc b/gcc/tree-vect-generic.cc
index 173ebd9a7ba..246297ec6a9
On Thu, Apr 3, 2025 at 12:14 AM Richard Biener
wrote:
>
> On Thu, Apr 3, 2025 at 9:04 AM Andrew Pinski wrote:
> >
> > On Wed, Apr 2, 2025 at 11:52 PM Richard Biener
> > wrote:
> > >
> > > On Thu, Apr 3, 2025 at 7:10 AM Andrew Pinski
> > > wro
:
* tree-ssa-phiprop.cc (propagate_with_phi): Check
the use is at the same or deeper loop depth than
the phi node.
(pass_phiprop::execute): Initialize loops.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr116835.c: New test.
Signed-off-by: Andrew Pinski
.
(write_global_definitions): Use error_operand_p.
Tighten up the code around the loop.
Signed-off-by: Andrew Pinski
---
gcc/rust/rust-gcc.cc | 189 ---
1 file changed, 88 insertions(+), 101 deletions(-)
diff --git a/gcc/rust/rust-gcc.cc b/gcc/rust/rust
gcc/testsuite/ChangeLog:
* g++.dg/tree-ssa/pr100038.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/g++.dg/tree-ssa/pr100038.C | 17 +
1 file changed, 17 insertions(+)
create mode 100644 gcc/testsuite/g++.dg/tree-ssa/pr100038.C
diff --git a/gcc/testsuite/g++.dg
pr111499-1.C: New test.
* g++.dg/tree-ssa/pr111499.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/g++.dg/tree-ssa/pr111499-1.C | 16
gcc/testsuite/g++.dg/tree-ssa/pr111499.C | 15 +++
libstdc++-v3/include/bits/stl_vector.h | 48 +++---
initialization loop.
gcc/testsuite/ChangeLog:
* g++.dg/tree-ssa/pr110620.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/g++.dg/tree-ssa/pr110620.C | 27
libstdc++-v3/include/bits/stl_vector.h | 15 +
2 files changed, 42 insertions
On Fri, Apr 4, 2025 at 3:37 PM Andrew Pinski wrote:
>
> To help along cases where begin and end are passed on to another function
> and then uses std::distance on them. In the case of the testcases added,
> std::lexicographical_compare_three_way (for C++20). We now able to opimi
tree-ssa/pr111499.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/g++.dg/tree-ssa/pr111499-1.C | 16 ++
gcc/testsuite/g++.dg/tree-ssa/pr111499.C | 15 +
libstdc++-v3/include/bits/stl_vector.h | 36 ++
3 files changed, 61 insertions(+), 6 d
tree-ssa/pr111499.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/g++.dg/tree-ssa/pr111499-1.C | 16 ++
gcc/testsuite/g++.dg/tree-ssa/pr111499.C | 15 +
libstdc++-v3/include/bits/stl_vector.h | 36 ++
3 files changed, 61 insertions(+), 6 d
g/weak/weak-5.c
@@ -3,6 +3,7 @@
/* { dg-require-alias "" } */
/* { dg-options "-fno-common" } */
/* { dg-skip-if "" { x86_64-*-mingw* } } */
+/* { dg-skip-if PR119369 { amdgcn-*-* } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1a" } } */
/* { dg-final { scan-assembler "weak\[^ \t\]*\[ \t\]_?vfoo1b" } } */
Given the limitations from another project, this looks like a reasonable
work-around. I do wonder if there will be unintended consequences for
real-world code (given that kernels are fragments of a larger program).
OK for mainline.
Andrew
On 4/4/25 00:57, Jakub Jelinek wrote:
Hi!
As the first two testcases show, even with pointers IPA-VRP can optimize
return values from functions if they have singleton ranges into just the
exact value, so we need to virtually undo that for tail calls similarly
to integers and floats. The third
return
statements always
into __builtin_unreachable calls.
gcc/testsuite/ChangeLog:
* gcc.dg/torture/pr119599-1.c: New test.
* gcc.dg/builtin-apply5.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/builtin-apply5.c | 23 +++
gcc
suite/ChangeLog:
* gcc.dg/torture/pr119599-1.c: New test.
Signed-off-by: Andrew Pinski
---
gcc/testsuite/gcc.dg/torture/pr119599-1.c | 27 +++
gcc/tree-inline.cc| 15 +
2 files changed, 42 insertions(+)
create mode 100644 gcc/testsuite/g
On Mon, Mar 31, 2025 at 11:34 PM Robin Dapp wrote:
>
> >> Yeah...and I also don't like the magic "ceil(AVL / 2) ≤ vl ≤ VLMAX if
> >> AVL < (2 * VLMAX)" rule...
> >
> > +1, spec has some description about this but I am not sure if I really get
> > the point.
> >
> > From Spec:
> >
> > "For exampl
a compiler module and a run-time library.
The sources of the run-time library for these projects are hosted at
https://github.com/llvm/llvm-project in the following directories:
```
Thanks,
Andrew
>
> Kind regards,
> Aleksandar Rakic
>
>
>
On 3/29/25 20:54, Jeff Law wrote:
On 3/4/25 2:10 AM, Jakub Jelinek wrote:
Hi!
On Fri, Nov 22, 2024 at 07:25:23PM -0500, Andrew MacLeod wrote:
I will shortly be submitting , and presumable committing, this
patch as
part of a series to improve VRP time for 117467..
So it may be in place
/ChangeLog:
* g++.dg/eh/pr119507.C: New test.
Signed-off-by: Andrew Pinski
---
gcc/except.cc | 9 -
gcc/testsuite/g++.dg/eh/pr119507.C | 17 +
2 files changed, 25 insertions(+), 1 deletion(-)
create mode 100644 gcc/testsuite/g++.dg/eh/pr119507.C
diff -
On 3/28/25 03:19, Richard Biener wrote:
On Fri, Mar 28, 2025 at 12:28 AM Andrew MacLeod wrote:
This patch fixes both 119471 and the remainder of 110992.
At issue is we do not recognize that if
"a * b != 0" , then neither "a" nor "b" can be zero.
This is
nches. OK for gcc13 and gcc14 branches?
Andrew
From 74edd2831affac005d2d5bf0170668188aa1a091 Mon Sep 17 00:00:00 2001
From: Andrew MacLeod
Date: Thu, 27 Mar 2025 13:44:00 -0400
Subject: [PATCH] If the LHS does not contain zero, neither do multiply
operands.
Given ~[0,0] = op1 * op2, range-ops sho
x-gnu with no regressions.
Andrew
From e39271c8c13b8fd5a49349000bfe8639c25cf470 Mon Sep 17 00:00:00 2001
From: Andrew MacLeod
Date: Thu, 27 Mar 2025 10:51:16 -0400
Subject: [PATCH 1/2] backport new assume implementation and cache.
---
gcc/Makefile.in| 1 +
gcc/gi
.
Bootstrapped and tested on x86_64-linux-gnu.
gcc/ChangeLog:
* tree-tailcall.cc (maybe_error_musttail): Move the print
to the dump file to begining of the function. Also expand dump
to include more information.
Signed-off-by: Andrew Pinski
---
gcc/tree-tailcall.cc | 16
On Tue, Mar 25, 2025 at 10:59 PM Richard Biener
wrote:
>
>
>
> > Am 26.03.2025 um 04:47 schrieb Andrew Pinski :
> >
> > This adds a simple verification so that the LHS of an assignment is
> > not a function decl. SRA and FRE will produce an ICE for this anyw
1 - 100 of 2039 matches
Mail list logo