On Tue, Jun 24, 2025 at 05:19:59PM -0400, Jason Merrill wrote:
> I think we could move the initialization of the fixed_type_p and
> virtual_access variables up, they don't need to be after cp_build_addr_expr.
I don't understand why it doesn't depend on cp_build_addr_expr.
I've tried the following
On Wed, Jun 25, 2025 at 2:14 PM Hongtao Liu wrote:
>
> On Fri, May 23, 2025 at 1:56 PM H.J. Lu wrote:
> >
> > Add preserve_none attribute which is similar to no_callee_saved_registers
> > attribute, except on x86-64, r12, r13, r14, r15, rdi and rsi registers are
> > used for integer parameter pas
Giving something new time to mature before making it the default is always
a great policy. My suggestion is aspirational. I’m describing a dream that
I hope can be the ultimate goal. There’s no need to rush into implementing
my proposed vision.
D
On Tue, Jun 24, 2025 at 23:25 Andre Vehreschild
> On Tue, Jun 24, 2025 at 09:49:01AM +0200, Juergen Christ wrote:
> > Some patterns that are detected by the autovectorizer can be supported by
> > s390. Add expanders such that autovectorization of these patterns works.
> >
> > Bootstrapped and regtested on s390. Ok for trunk?
> >
> > gcc/Chan
> On Mon, Jun 23, 2025 at 09:51:13AM +0200, Juergen Christ wrote:
> > On VXE targets, we can directly use the fp min/max instruction instead of
> > calling into libm for fmin/fmax etc.
> >
> > Provide fmin/fmax versions also for vectors even though it cannot be
> > called directly. This will be e
On VXE targets, we can directly use the fp min/max instruction instead of
calling into libm for fmin/fmax etc.
Provide fmin/fmax versions also for vectors even though it cannot be
called directly. This will be exploited with a follow-up patch when
reductions are introduced.
Bootstrapped and regt
Hi Jerry,
thank you very much. Just try it. I can only imagine that Paul had a somehow
corrupted build directory or left overs from some previous build. I am still
wondering, that I got no automated mail from the build hosts, but I can
imagine, that they get issues with a series of patches, that b
Some patterns that are detected by the autovectorizer can be supported by
s390. Add expanders such that autovectorization of these patterns works.
RTL for the builtins used unspec to represent highpart multiplication.
Replace this by the correct RTL to allow further simplification.
Bootstrapped
Karl Meakin writes:
> Make the formatting of the RTL templates in the rules for branch
> instructions more consistent with each other.
>
> gcc/ChangeLog:
>
> * config/aarch64/aarch64.md (cbranch4): Reformat.
> (cbranchcc4): Likewise.
> (condjump): Likewise.
> (*compare_cond
Karl Meakin writes:
> Give the `define_insn` rules used in lowering `cbranch4` to RTL
> more descriptive and consistent names: from now on, each rule is named
> after the AArch64 instruction that it generates. Also add comments to
> document each rule.
>
> gcc/ChangeLog:
>
> * config/aarch64
Existing test are extented to cover cases where not precision is specified,
or it is specified to zero. The precision value is ignored in all cases.
libstdc++-v3/ChangeLog:
* testsuite/std/time/format/precision.cc: New tests.
---
v2 extents test to cover .0 as precision.
Testing on x86_64
On Tue, Jun 24, 2025 at 5:25 PM Alexander Monakov wrote:
>
> > I'd say we want to fix these kind of things before switching the default.
> > Can
> > you file bugreports for the distinct issues you noticed when adjusting the
> > testcases?
>
> Sure, filed https://gcc.gnu.org/bugzilla/show_bug.cgi
The following adds the ability to vectorize a fma reduction pair
as SLP reduction (we cannot yet handle ternary association in
reduction vectorization yet).
Bootstrapped and tested on x86_64-unknown-linux-gnu.
PR tree-optimization/109892
* tree-vect-loop.cc (reduction_fn_for_scala
On Wed, 25 Jun 2025 at 10:42, Tomasz Kamiński wrote:
>
> Existing test are extented to cover cases where not precision is specified,
> or it is specified to zero. The precision value is ignored in all cases.
>
> libstdc++-v3/ChangeLog:
>
> * testsuite/std/time/format/precision.cc: New test
Hi Jakub, thanks for the feedback.
We have sent a new version
(https://gcc.gnu.org/pipermail/gcc-patches/2025-June/687530.html),
addressing those issues. Regarding the hash_sets, we have replaced
them with vectors in some cases and in the cases that we're still
using them we're copying them to sor
Testcases for match.pd patterns
`((a ^ b) & c) cmp d | a != b -> (0 cmp d | a != b)` and
`(a ^ b) cmp c | a != b -> (0 cmp c | a != b)` were failing on some targets,
like PowerPC.
This patch adds an implemenetation for the optimization in reassoc. Doing so,
we can now handle cases where the relate
Automatically generate -mcpu and -mtune options in invoke.texi from
the unified riscv-cores.def metadata, ensuring documentation stays in sync
with definitions and reducing manual maintenance.
gcc/ChangeLog:
* Makefile.in: Add riscv-mcpu.texi and riscv-mtune.texi to the list
of files
On Tue, Jun 24, 2025 at 12:10:09PM -0400, Patrick Palka wrote:
> On Tue, 24 Jun 2025, Jason Merrill wrote:
>
> > On 6/23/25 5:41 PM, Nathaniel Shead wrote:
> > > Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk/15?
> > >
> > > -- >8 --
> > >
> > > We were erroring because the TEMP
Hi,
It is customary to mark the gate and execute functions of the classes
representing passes as final override but this is missing in
pass_sccopy. This patch adds it which also silences clang warnings
about it.
Bootstrapped and tested on x86_64-linux. Because of the precedent
elsewhere I consid
Hi,
when compiling tree-vect-stmts.cc with clang, it emits a warning:
gcc/tree-vect-stmts.cc:14930:19: warning: unused variable 'mode_iter'
[-Wunused-variable]
And indeed, there are two mode_iter local variables in function
supportable_indirect_convert_operation and the first one is not used
Hi,
When compiling GCC (with JIT enabled) by clang, it produces a series
of warning s like this for all uses of DEF_GOACC_BUILTIN_COMPILER and
DEF_GOMP_BUILTIN_COMPILER in omp-builtins.def:
--
In file included from
/home/worke
Hi,
since r15-4695-gd17e672ce82e69 (Richard Biener: Assert finished
vectorizer pattern COND_EXPR transition), the static const array
cond_expr_maps is unused and when GCC is compiled with clang, it warns
about that.
This patch simply removes the variable.
Bootstrapped and tested on x86_64-linx.
Hi,
When GCC is compiled with clang, it emits a warning that
dom_oracle::next_relation is not marked as override even though it
does override a virtual function of its ancestor. This patch marks it
as such to silence the warning and for the sake of consistency.
There are other member functions i
Hi,
when building GCC with clang, it warns that the private member suffix
in class element_expected_type_with_indirection (defined in
gcc/c-family/c-format.cc) is not used which indeed looks like it is
the case. This patch therefore removes it.
Bootstrapped and tested on x86_64-linx. OK for mas
While looking at something else, I decided to write some self-tests for
the bound-snapping changes.
Along the way, I discovered a couple of things.
This patch has the self tests, and they tripped over an issue with
get_bitmask (). get_bitmask () takes the current mask, and intersect
it wit
Another thing I noticed is that verifying a range outside of private
constraints was actually quite difficult.
Most range classes had a verify_range () routine, but they were private,
not constant, and impossible to invoke if we were in a situation where
all we had a was a vrange.
This patch
On Wed, 25 Jun 2025, Robin Dapp wrote:
> Hi,
>
> this patch adds simple misalignment checks for gather/scatter
> operations. Previously, we assumed that those perform element accesses
> internally so alignment does not matter. The riscv vector spec however
> explicitly states that vector operat
On Tue, Jun 24, 2025 at 5:12 AM Ciyan Pan wrote:
>
> From: panciyan
>
> This patch would like to support signed scalar SAT_ADD IMM form 2
>
> Form2:
> T __attribute__((noinline)) \
> sat_s_add_imm_##T##_fmt_2##_##INDEX (T x)\
> {
Hi,
It is customary to mark the gate and execute functions of the classes
representing passes as final override but this is missing in
pass_rtl_avoid_store_forwarding. This patch adds it which also
silences a clang warning about it.
Bootstrapped and tested on x86_64-linux. Because of the preced
Hi,
When compiling diagnostic-path-output.cc with clang, it warns that
path_label::get_effects should be marked as override. That looks like
a good idea and from a brief look I also believe it should be marked
as final (the other override in the class is marked as both), so this
patch does that.
When tree-ssa-propagate.h is compiled with clang, it complains that
member functions functions value_of_expr and range_of_expr of class
substitute_and_fold_engine are not marked as override even though they
do override virtual functions of the ancestor class. This patch
merely adds the keyword
Hi,
This is the 3rd version of the patch for:
Evaluate the object size by the size of the pointee type when the type
is a structure with flexible array member which is annotated with
counted_by.
Compared to the 2nd version of the patch at:
https://gcc.gnu.org/pipermail/gcc-patches/2025-May/682
Hi,
when compiling
gcc/rust/checks/errors/borrowck/rust-borrow-checker-diagnostics.cc
with clang, it emits the following warning:
gcc/rust/checks/errors/borrowck/rust-borrow-checker-diagnostics.cc:145:46:
warning: non-constant-expression cannot be narrowed from type 'Polonius::Loan'
(aka 'uns
Hi,
when compiling gimple-range-op.cc, clang issues warning:
gimple-range-op.cc:1419:18: warning: comparison of different enumeration
types in switch statement ('combined_fn' and 'built_in_function')
[-Wenum-compare-switch]
which I hope is harmless, but all other switch cases use CFN_ prefix
Hi,
When compiling fortran/match.cc, clang emits a warning
fortran/match.cc:5301:7: warning: variable 'p' is used uninitialized whenever
'if' condition is true [-Wsometimes-uninitialized]
which looks accurate, so this patch adds an initialization of p to
avoid the use.
Bootstrapped and teste
Hi,
when building GCC with clang, it warns that the private member suffix
in class ltrans_file_cache (defined in lto-ltrans-cache.h) is not used
which indeed looks like it is the case. This patch therefore removes
it along with its initialization in the constructor.
Bootstrapped and tested on x8
Hi,
in contrib we have a script filter-clang-warnings.py which supposedly
filters out uninteresting warnings emitted by clang when it compiles
GCC. I'm not sure if anyone else uses it but our internal SUSE
testing infrastructure does.
Since Martin Liška left, I have mostly ignored the warnings a
On 5/21/25 10:15 PM, Nathaniel Shead wrote:
This type currently has a DECL_NAME of an IDENTIFIER_DECL. Although the
documentation indicates this is legal, this confuses modules streaming
which expects all RECORD_TYPEs to have a TYPE_DECL, which is used to
determine the context and merge key, etc
For month_day we incorrectly reported day information to be available, which
lead
to format_error being thrown from the call to formatter::format at runtime,
instead
of making call to format ill-formed.
The included test cover most of the combinations of _ChronoParts and format
specifiers.
Richard Sandiford writes:
> Karl Meakin writes:
>> + "r"))
>> + (label_ref (match_operand 2))
>> + (pc)))]
>> + "TARGET_CMPBR"
>> + "cb\\t%0, %1, %l2";
Sorry, for following up on myself, but: the pattern needs to handle
This patch reworks the formatting for the chrono types, such that they are all
formatted in terms of _ChronoData class, that includes all required fields.
Populating each required field is performed in formatter for specific type,
based on the chrono-spec used.
To facilitate above, the _ChronoSpec
Christoph Müllner writes:
> On Tue, Jun 24, 2025 at 9:29 PM Richard Sandiford
> wrote:
>>
>> Christoph Müllner writes:
>> > insn_info::has_been_deleted () is documented to return true if an
>> > instruction is deleted. Such instructions have their `volatile` bit set,
>> > which can be tested vi
Hi all,
attached patch fixes an out of bounds access in the clean up code of a
concatenating array constructor. A fragment like
list = [ list, something() ]
lead to clean up using an offset (of the list array) that was manipulated in
the loop copying the existing array elements and at the end po
Hi,
while hunting for pr120711 I found a construct where a call-tree was created
and never used. The patch now just suppresses the tree creation and instead
uses directly the tree that is desired.
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
Regards,
Andre
--
Andre Vehresc
Hi,
attached patch prevents generation of a token component in derived types, when
-fcoarray=single is used. Generating the token only wastes memory. It is never
even initialized nor accessed.
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
Regards,
Andre
--
Andre Vehreschild
Karl Meakin writes:
> Add rules for lowering `cbranch4` to CBB/CBH/CB when
> CMPBR extension is enabled.
>
> gcc/ChangeLog:
>
> * config/aarch64/aarch64-protos.h (aarch64_cb_rhs): New function.
> * config/aarch64/aarch64.cc (aarch64_cb_rhs): Likewise.
> * config/aarch64/aarch64.m
Hi,
Antony Lewis reported this issue and also proposed a patch, that removes the
was_finalized tracking. While this may lead to the desired effect for the issue
at hand, I don't believe that the was_finalized tracking code has been there for
no reason.
This patch fixes the issue that also Antony
On Tue, Jun 24, 2025 at 9:29 PM Richard Sandiford
wrote:
>
> Christoph Müllner writes:
> > insn_info::has_been_deleted () is documented to return true if an
> > instruction is deleted. Such instructions have their `volatile` bit set,
> > which can be tested via rtx_insn::deleted ().
> >
> > The
Hi,
this patch adds simple misalignment checks for gather/scatter
operations. Previously, we assumed that those perform element accesses
internally so alignment does not matter. The riscv vector spec however
explicitly states that vector operations are allowed to fault on
element-misaligned acc
On Tue, Jun 24, 2025 at 11:14:51AM -0400, Jason Merrill wrote:
> On 6/24/25 10:16 AM, Nathaniel Shead wrote:
> > On Tue, Jun 24, 2025 at 01:03:53PM +0200, Jakub Jelinek wrote:
> > > Hi!
> > >
> > > The following patch implements the P3618R0 paper by tweaking pedwarn
> > > condition, adjusting pedw
> Pan -- can you cover reviewing the testsuite bits since thisis an area
> where you've done a ton of work over the last year or so.
Sure thing and thanks Jeff, I will take a look after return back from a
vacation, ETA before the end of this week.
Pan
-Original Message-
From: Jeff Law
On Tue, 24 Jun 2025, Alfie Richards wrote:
> Hi all,
>
> This is a small change to ivopts to expand SSA variables enabling ivopts to
> correctly work out when an address IV step is set to be a multiple on index
> step in the loop header (ie, not constant, not calculated each loop.)
>
> Seems lik
The following adds the ability to vectorize a fma reduction pair
as SLP reduction (we cannot yet handle ternary association in
reduction vectorization yet).
Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed.
I'll file a bug about the missed handling for fold-left reductions.
PR
On 6/23/25 12:06 AM, Alexandre Oliva wrote:
Alex, thanks for investigation of corner cases of register elimination.
An x86_64-linux-gnu native with ix86_frame_pointer_required modified
to return true for nonzero frames, to exercize
lra_update_fp2sp_elimination, reveals in stage1 testing that
On Tue, Jun 24, 2025 at 4:26 PM Karl Meakin wrote:
>
> The function `vect_check_gather_scatter` requires the `base` of the load
> to be loop-invariant and the `off`set to be not loop-invariant. When faced
> with a scenario where `base` is not loop-invariant, instead of giving up
> immediately we c
Hi,
when GCC is built with clang, it suggests that we add a brace to the
initialization of format_asterisk:
gcc/fortran/io.cc:32:16: warning: suggest braces around initialization of
subobject [-Wmissing-braces]
So this patch does that to silence it.
Bootstrapped and tested on x86_64-linx. O
BTW, consider all such future changes in ranger code pre-approved!
Thanks
Andrew
On 6/25/25 10:27, Andrew MacLeod wrote:
OK for all the ranger related patches.
Thanks
Andrew
On 6/25/25 10:08, Martin Jambor wrote:
Hi,
When GCC is compiled with clang, it emits a warning that
dom_oracle::nex
This change reminds me that we lack documentation about arguments
of most of the "complicated" internal functions ...
I didn't mention it but I got implicitly reminded several times while writing
the patch... ;) An overhaul has been on my todo list for a while but of course
it never was top pr
On 6/23/25 18:21, Martin Jambor wrote:
@@ -208,66 +208,6 @@ static const tree_code relation_to_code [VREL_LAST] = {
ERROR_MARK, ERROR_MARK, LT_EXPR, LE_EXPR, GT_EXPR, GE_EXPR, EQ_EXPR,
NE_EXPR };
-// This routine validates that a relation can be applied to a specific set of
-// ranges
> On 25 Jun 2025, at 15:17, Martin Jambor wrote:
>
> Hi,
>
> when building GCC with clang, it warns that the private member suffix
> in class cp_coroutine_transform (defined in gcc/cp/coroutines.h) is
> not used which indeed looks like it is the case. This patch therefore
> removes it.
>
>
OK for all the ranger related patches.
Thanks
Andrew
On 6/25/25 10:08, Martin Jambor wrote:
Hi,
When GCC is compiled with clang, it emits a warning that
dom_oracle::next_relation is not marked as override even though it
does override a virtual function of its ancestor. This patch marks it
as
Extract the hardcoded values for the minimum PC-relative displacements
into named constants and document them.
gcc/ChangeLog:
* config/aarch64/aarch64.md (BRANCH_LEN_P_128MiB): New constant.
(BRANCH_LEN_N_128MiB): Likewise.
(BRANCH_LEN_P_1MiB): Likewise.
(BRANCH_LE
The `far_branch` attribute only ever takes the values 0 or 1, so make it
a `no/yes` valued string attribute instead.
gcc/ChangeLog:
* config/aarch64/aarch64.md (far_branch): Replace 0/1 with
no/yes.
(aarch64_bcond): Handle rename.
(aarch64_cbz1): Likewise.
On 6/25/25 9:02 AM, Nathaniel Shead wrote:
On Tue, Jun 24, 2025 at 12:10:09PM -0400, Patrick Palka wrote:
On Tue, 24 Jun 2025, Jason Merrill wrote:
On 6/23/25 5:41 PM, Nathaniel Shead wrote:
Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk/15?
-- >8 --
We were erroring becaus
This patch series adds support for the CMPBR extension. It includes the
new `+cmpbr` option and rules to generate the new instructions when
lowering conditional branches.
Changelog:
* v7:
- Support far branches and add a test for them.
- Replace `aarch64_cb_short_operand` with `aarch64_reg_or_
Add rules for lowering `cbranch4` to CBB/CBH/CB when
CMPBR extension is enabled.
gcc/ChangeLog:
* config/aarch64/aarch64-protos.h (aarch64_cb_rhs): New function.
* config/aarch64/aarch64.cc (aarch64_cb_rhs): Likewise.
* config/aarch64/aarch64.md (cbranch4): Rename to ...
Commit the test file `cmpbr.c` before rules for generating the new
instructions are added, so that the changes in codegen are more obvious
in the next commit.
gcc/testsuite/ChangeLog:
* lib/target-supports.exp: Add `cmpbr` to the list of extensions.
* gcc.target/aarch64/cmpbr.c: N
The rules for conditional branches were spread throughout `aarch64.md`.
Group them together so it is easier to understand how `cbranch4`
is lowered to RTL.
gcc/ChangeLog:
* config/aarch64/aarch64.md (condjump): Move.
(*compare_condjump): Likewise.
(aarch64_cb1): Likewise.
Tomasz Kamiński writes:
> This patch reworks the formatting for the chrono types, such that they are all
> formatted in terms of _ChronoData class, that includes all required fields.
> Populating each required field is performed in formatter for specific type,
> based on the chrono-spec used.
>
>
On Wed, 2025-06-25 at 16:04 +0200, Martin Jambor wrote:
> Hi,
>
> When compiling diagnostic-path-output.cc with clang, it warns that
> path_label::get_effects should be marked as override. That looks
> like
> a good idea and from a brief look I also believe it should be marked
> as final (the oth
On 6/25/25 3:08 AM, Jakub Jelinek wrote:
On Tue, Jun 24, 2025 at 05:19:59PM -0400, Jason Merrill wrote:
I think we could move the initialization of the fixed_type_p and
virtual_access variables up, they don't need to be after cp_build_addr_expr.
I don't understand why it doesn't depend on cp_b
On Wed, Jun 25, 2025 at 12:37:33PM -0400, Jason Merrill wrote:
> Ah, looks like fixed_type_or_null needs to handle a CALL_EXPR of class type
> like a TARGET_EXPR. I also wonder why the call isn't already wrapped in a
> TARGET_EXPR by build_cxx_call=>build_cplus_new at this point.
Wonder if it has
Thanks for cleaning up gfortran code. I was curious about
what the GNU Coding Standard said about this case, but it
does not consider initialization of subobjects. I did find
5.3 Clean Use of C Constructs
...
Don't make the program ugly just to placate static
analysis tools such as l
Karl Meakin writes:
> Move the rules for CBZ/TBZ to be above the rules for
> CBB/CBH/CB. We want them to have higher priority
> because they can express larger displacements.
>
> gcc/ChangeLog:
>
> * config/aarch64/aarch64.md (aarch64_cbz1): Move
> above rules for CBB/CBH/CB.
> (
Add preserve_none attribute which is similar to no_callee_saved_registers
attribute, except on x86-64, r12, r13, r14, r15, rdi and rsi registers are
used for integer parameter passing. This can be used in an interpreter
to avoid saving/restoring the registers in functions which process byte
codes.
> Am 25.06.2025 um 16:26 schrieb Martin Jambor :
>
> Hi,
>
> when compiling tree-vect-stmts.cc with clang, it emits a warning:
>
> gcc/tree-vect-stmts.cc:14930:19: warning: unused variable 'mode_iter'
> [-Wunused-variable]
>
> And indeed, there are two mode_iter local variables in functio
The following allows SLP build to succeed when mixing .FMA/.FMS
in different lanes like we handle mixed plus/minus. This does not
yet address SLP pattern matching to not being able to form
a FMADDSUB from this.
Bootstrapped and tested on x86_64-unknown-linux-gnu.
While the testcases are x86 spec
Hi all,
fix incorrect declarations in the libcaf.h header and use the correct printf
function when printing a va_list. (The latter is stripped into a separate file
by the next patch of this series.)
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
Regards,
Andre
--
Andre Vehre
I posted this on the LLVM Discourse forum[1] and got some traction, so
I want to get the GCC community's input. (My initial proposal is
replicated here.)
I had already mentioned this in previous emails in this thread, so
it's nothing super new, and there have been some suggested
improvements alrea
On 5/21/25 10:14 PM, Nathaniel Shead wrote:
This patch isn't currently necessary with how I've currently done the
follow-up patches, but is needed for avoiding any potential issues in
the future with DECL_CONTEXT'ful types getting created in the compiler
with no names on the fields. (For instanc
On 6/25/25 1:28 PM, Marek Polacek wrote:
Bootstrapped/regtested on x86_64-pc-linux-gnu, ok for trunk/branches?
OK.
-- >8 --
Here we end up with "error reporting routines re-entered" because
resolve_nondeduced_context isn't passing complain to mark_used.
PR c++/120756
gcc/cp/ChangeLo
Christoph Müllner writes:
> insn_info::has_been_deleted () is documented to return true if an
> instruction is deleted. Such instructions have their `volatile` bit set,
> which can be tested via rtx_insn::deleted ().
>
> The current condition for insn_info::has_been_deleted () is:
> * m_rtl is no
This is the 7th version of the patch set to extend "counted_by" attribute
to pointer fields of structures.
The C FE parts (patch #1 and #3) of the 5th version have been approved
by Joseph already (with a minor typo fix, which is included in this new
version);
The middle end part (patch #2) of t
> From:Kito Cheng
> Send Time:2025 Jun. 19 (Thu.) 15:08
> To:yunzezhu; Jeff Law
> CC:"gcc-patches"
> Subject:Re: [PATCH v2 1/4] RISC-V: Add support for xtheadvector unit-stride
> segment load/store intrinsics
>
> Hi YunZe:
>
> Generally I am open minded to accept vendor extensions, however thi
> Here is the v3 patch. It no longer uses "rep mov/stos". Lili, can you
> measure
> its performance impact on Intel and AMD cpus?
>
> The updated generic has
>
> Update memcpy and memset inline strategies for -mtune=generic:
>
> 1. Don't align memory.
This looks OK to me (recent microarchs s
Hi all,
this patch fixes handling of optional arguments to coarray routines. Again I
stumbled over this while implementing caf_shmem. I did not find a ticket either.
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
Regards,
Andre
--
Andre Vehreschild * Email: vehre ad gmx dot
> > What seems to be common now is profile breakage around loops that has
> > been fully unrolled or vectorized which is bit undderstandbale thought I
> > wonder if we can improve here. I think we can fix problem where profile
> > of loop header stmts is partly or fully lost (which seems to be mai
Hi all,
This is a small change to ivopts to expand SSA variables enabling ivopts to
correctly work out when an address IV step is set to be a multiple on index
step in the loop header (ie, not constant, not calculated each loop.)
Seems like this might have compile speed costs that need to be cons
Hi,
When GCC is built with clang, it emits warnings that several member
functions of various ranger classes override a virtual function of an
ancestor but are not marked with the override keyword. After
inspecting the cases, I found that all these classes had other member
functions marked as fina
On 6/24/25 11:49 PM, Andre Vehreschild wrote:
Hi Jerry,
thank you very much. Just try it. I can only imagine that Paul had a somehow
corrupted build directory or left overs from some previous build. I am still
wondering, that I got no automated mail from the build hosts, but I can
imagine, that
Hi!
The following patch implements the P3618R0 paper by tweaking pedwarn
condition, adjusting pedwarn wording, adjusting one testcase and adding 4
new ones. The paper was voted in as DR, so it isn't guarded on C++ version.
Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
202
Am 25.06.25 um 13:42 schrieb Andre Vehreschild:
Hi,
attached patch prevents generation of a token component in derived types, when
-fcoarray=single is used. Generating the token only wastes memory. It is never
even initialized nor accessed.
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainl
Am 25.06.25 um 13:39 schrieb Andre Vehreschild:
Hi all,
attached patch fixes an out of bounds access in the clean up code of a
concatenating array constructor. A fragment like
list = [ list, something() ]
lead to clean up using an offset (of the list array) that was manipulated in
the loop cop
This is a followup to 92e1893e0 "RISC-V: Add patterns for vector-scalar
multiply-(subtract-)accumulate" that caused an ICE in some cases where the mult
operands were wrongly swapped.
This patch ensures that operands are not swapped in the vector-scalar case.
PR target/120828
gcc/ChangeLog
Move the rules for CBZ/TBZ to be above the rules for
CBB/CBH/CB. We want them to have higher priority
because they can express larger displacements.
gcc/ChangeLog:
* config/aarch64/aarch64.md (aarch64_cbz1): Move
above rules for CBB/CBH/CB.
(*aarch64_tbz1): Likewise.
gcc/
The function `vect_check_gather_scatter` requires the `base` of the load
to be loop-invariant and the `off`set to be not loop-invariant. When faced
with a scenario where `base` is not loop-invariant, instead of giving up
immediately we can try swapping the `base` and `off`, if `off` is
actually loo
Am 25.06.25 um 13:45 schrieb Andre Vehreschild:
Hi,
while hunting for pr120711 I found a construct where a call-tree was created
and never used. The patch now just suppresses the tree creation and instead
uses directly the tree that is desired.
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for m
On 6/25/25 12:49 PM, Jakub Jelinek wrote:
On Wed, Jun 25, 2025 at 12:37:33PM -0400, Jason Merrill wrote:
Ah, looks like fixed_type_or_null needs to handle a CALL_EXPR of class type
like a TARGET_EXPR. I also wonder why the call isn't already wrapped in a
TARGET_EXPR by build_cxx_call=>build_cpl
Make the formatting of the RTL templates in the rules for branch
instructions more consistent with each other.
gcc/ChangeLog:
* config/aarch64/aarch64.md (cbranch4): Reformat.
(cbranchcc4): Likewise.
(condjump): Likewise.
(*compare_condjump): Likewise.
(aar
Commit the test file `cmpbr.c` before rules for generating the new
instructions are added, so that the changes in codegen are more obvious
in the next commit.
gcc/testsuite/ChangeLog:
* lib/target-supports.exp: Add `cmpbr` to the list of extensions.
* gcc.target/aarch64/cmpbr.c: N
1 - 100 of 157 matches
Mail list logo