On Sun, 09 Feb 2025 14:04:00 +0800, Jin Ma wrote:
> PR target/118601
Ok for trunk?
Best regards,
Jin Ma
> gcc/ChangeLog:
>
> * config/riscv/riscv.cc (riscv_use_by_pieces_infrastructure_p):
> Exclude XTheadVector.
>
> Reported-by: Edwin Lu
> ---
> gcc/config/riscv/riscv.cc |
On Mon, Feb 10, 2025 at 12:26:03AM +0100, Uros Bizjak wrote:
> On Sun, Feb 9, 2025 at 11:31 PM Jakub Jelinek wrote:
> >
> > On Sun, Feb 09, 2025 at 09:24:30AM +0100, Uros Bizjak wrote:
> > > "For commutative and comparison operators, a constant is always made
> > > the second operand."
> >
> > Isn
Hi All,
These two tests now vectorize the result finding
loop with PFA and so the number of loops checked
fails.
This fixes them by adding #pragma GCC novector to
the testcases.
Regtested on x86_64-pc-linux-gnu on an AVX512 machine
with -m32, -m64 and test pass again.
Ok for master?
Thanks,
Ta
Iain Sandoe writes:
>> On 10 Feb 2025, at 08:28, Sam James wrote:
>>
>> ---
>> Iain, does this look OK?
>>
>> htdocs/gcc-14/changes.html | 7 +++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
>> index ba4780ca..2db442b2 100644
Am 09.02.25 um 17:30 schrieb Jeff Law:
On 2/9/25 1:10 AM, Georg-Johann Lay wrote:
The .ira dump has several paradoxical subregs like:
(insn 22 21 60 4 (set (reg/v:SI 51 [ val32 ])
(subreg:SI (reg:HI 53 [ t$val ]) 0)) "pr116389-red.c":14:14
146 {*movsi_split}
(insn 27 26 28 5 (set (r
On Mon, 10 Feb 2025, Tamar Christina wrote:
> Hi All,
>
> These two tests now vectorize the result finding
> loop with PFA and so the number of loops checked
> fails.
>
> This fixes them by adding #pragma GCC novector to
> the testcases.
>
> Regtested on x86_64-pc-linux-gnu on an AVX512 machine
On Mon, Feb 10, 2025 at 9:46 AM Jakub Jelinek wrote:
>
> On Mon, Feb 10, 2025 at 12:26:03AM +0100, Uros Bizjak wrote:
> > On Sun, Feb 9, 2025 at 11:31 PM Jakub Jelinek wrote:
> > >
> > > On Sun, Feb 09, 2025 at 09:24:30AM +0100, Uros Bizjak wrote:
> > > > "For commutative and comparison operators
Could you add a few more comments to explain why xtheadvector is not supported?
Maybe something like:
/* Xtheadvector doesn't support it because of the lack of XXX instrucion. */
On Mon, Feb 10, 2025 at 4:38 PM Jin Ma wrote:
>
> On Sun, 09 Feb 2025 14:04:00 +0800, Jin Ma wrote:
> > PR t
> So, would it be better to represent *bt as
> (set (reg:CCC FLAGS_REG)
> (compare:CCC (not:SWI48 (zero_extract:SWI48 ...)) (const_int -1)))
> rather than
> (set (reg:CCC FLAGS_REG)
> (compare:CCC (const_int 0) (zero_extract:SWI48 ...)))
> ?
FWIW the SPARC port uses the former variant wi
Trivial typo.
gcc/testsuite:
PR target/118089
* gcc.target/arm/thumb2-pop-loreg.c (dg-require-effective-target): Fix
typo in directive.
---
gcc/testsuite/gcc.target/arm/thumb2-pop-loreg.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/testsuite/gcc
Hi all,
this small series of patches adds/changes the way coarray access to data on
remote images is done. Previously for more elaborate access pattern (e.g. an
allocatable array in a derived type component stored in an array) the access was
done by emulating Fortran's addressing in C. When using
[PATCH 1/7] Fortran: Move caf_get-rewrite to rewrite.cc [PR107635]
Add a rewriter to keep all expression tree manipulation that is not
optimization together. At the moment this is just a move from resolve.cc,
but will be extended to handle more cases where rewriting the expression
tree may be eas
[PATCH 2/7] Fortran: Prepare for more caf-rework. [PR107635]
Factor out generation of code to get remote function index and to
create the additional data structure. Rename caf_get_by_ct to
caf_get_from_remote.
gcc/fortran/ChangeLog:
PR fortran/107635
* gfortran.texi: Rename caf
[PATCH 6/7] Fortran: Add transfer_between_remotes [PR107635]
Add the last missing coarray data manipulation routine using remote
accessors.
gcc/fortran/ChangeLog:
PR fortran/107635
* gfortran.texi: Add documentation for transfer_between_remotes.
* intrinsic.cc (add_subro
[PATCH 4/7] Fortran: Add caf_is_present_on_remote. [PR107635]
Replace caf_is_present by caf_is_present_on_remote which is using a
dedicated callback for each object to test on the remote image.
gcc/fortran/ChangeLog:
PR fortran/107635
* gfortran.h (enum gfc_isym_id): Add caf_is_
[PATCH 5/7] Fortran: Add send_to_remote [PR107635]
Refactor to use send_to_remote instead of the slow send_by_ref.
gcc/fortran/ChangeLog:
PR fortran/107635
* gfortran.h (enum gfc_isym_id): Add SENDGET-isym.
* gfortran.texi: Add documentation for send_to_remote.
*
Hi All,
It seems I ran regressions but forgot to check them last time `(*>?<*)?
On the GCC-13 branch the backport caused a failure due to the branch not having
generic-armv8-a and also it still treating the generic cpu special. This made
it return NULL when trying to find the default CPU.
In GC
The following addresses the fact that we keep an excessive amount of
redundant DEBUG BEGIN_STMTs - in the testcase it sums up to 99.999%
of all stmts, sucking up compile-time in IL walks. The patch amends
the GIMPLE DCE code that elides redundant DEBUG BIND stmts, also
pruning uninterrupted sequen
On Mon, Feb 10, 2025 at 10:09 AM Eric Botcazou wrote:
>
> > So, would it be better to represent *bt as
> > (set (reg:CCC FLAGS_REG)
> > (compare:CCC (not:SWI48 (zero_extract:SWI48 ...)) (const_int -1)))
> > rather than
> > (set (reg:CCC FLAGS_REG)
> > (compare:CCC (const_int 0) (zero_ext
[PATCH 3/7] Fortran: Allow to use non-pure/non-elemental functions in
coarray indexes [PR107635]
Extract calls to non-pure or non-elemental functions from index
expressions on a coarray.
gcc/fortran/ChangeLog:
PR fortran/107635
* rewrite.cc (get_arrayspec_from_expr): Treat arra
Hi Jason,
On 7 Feb 2025, at 23:10, Jason Merrill wrote:
> On 2/7/25 4:04 PM, Simon Martin wrote:
>> Hi Jason,
>>
>> On 7 Feb 2025, at 14:21, Jason Merrill wrote:
>>
>>> On 2/6/25 3:05 PM, Simon Martin wrote:
Hi Jason,
On 6 Feb 2025, at 16:48, Jason Merrill wrote:
> On 2/5/
Thanks Rainer.
This is fine until the cause is identified.
Iain.
On 10 February 2025 13:28:00 CET, Rainer Orth
wrote:
>The libphobos.phobos_shared/std/concurrency.d test just hangs on macOS
>13 and beyond and isn't even termintated after the testsuite timeout is
>exceeded. Thus, more and more
Hi all,
Andrew and I discussed about the following:
Andrew Stubbs wrote:
This business of changing the -march flag from what the user specified
is also questionable.
Result: the new patch (attached) no longer automatically chooses the
associated ISA architecture but prints a fatal error inst
Update the GCN install documentation for added ISAs, especially
as no longer all supported ISA are enabled by default. And for
the (ROCm wise: upcoming) generic support.
OK for mainline?
Tobias
[gcn] install.texi: Update for new ISA targets and their requirements
GCN now supports several addit
So the change to prefer ADD over IOR for combining two objects with no
bits in common is (IMHO) generally good. It has some minor fallout.
In particular the aarch64 port (and I suspect others) have patterns that
recognize IOR, but not PLUS or XOR for these cases and thus tests which
expected
On 2/10/25 08:50, Tobias Burnus wrote:
Update the GCN install documentation for added ISAs, especially
as no longer all supported ISA are enabled by default. And for
the (ROCm wise: upcoming) generic support.
OK for mainline?
I have no comments on the technical content, but
@@ -3991,14
The contents of include/dwarf2.def have diverged between the gcc and
the binutils repositories. Currently, it's impossible to build a combined
tree, as GCC won't build with the binutils version of dwarf2.def and
binutils
won't build with the gcc version. This patch realigns this file by copying
On 10/02/2025 15:24, Tobias Burnus wrote:
Hi all,
Andrew and I discussed about the following:
Andrew Stubbs wrote:
This business of changing the -march flag from what the user specified
is also questionable.
Result: the new patch (attached) no longer automatically chooses the
associated ISA
On 10/02/2025 15:50, Tobias Burnus wrote:
Update the GCN install documentation for added ISAs, especially
as no longer all supported ISA are enabled by default. And for
the (ROCm wise: upcoming) generic support.
OK for mainline?
+By default, multilib support is build for @code{gfx900}, @code
Hi Sandra,
thanks for the careful and quick proofreading; especially, it is good
that you spotted:
Sandra Loosemore:
+that @code{gfx9-generic} does not include @code{gfx908} or
@code{gfx90a},
+that linking specific ISA code is currently not supported, and that
only a
Do you mean "linking s
Dear all,
the attached patch enhances the checking of pointer targets in structure
constructors to catch the following invalid cases (before we ICE :)
- different rank
- vector subscript of target
Regtested on x86_64-pc-linux-gnu. OK for mainline?
Thanks,
Harald
From 118a6c3247bb30ef932341cec
The libphobos.phobos_shared/std/concurrency.d test just hangs on macOS
13 and beyond and isn't even termintated after the testsuite timeout is
exceeded. Thus, more and more concurrency.exe processes keep
accumulating, consuming CPU time for nothing.
To avoid this, this patch skips the test on mac
On Mon, 10 Feb 2025, Richard Biener wrote:
> The following addresses the fact that we keep an excessive amount of
> redundant DEBUG BEGIN_STMTs - in the testcase it sums up to 99.999%
> of all stmts, sucking up compile-time in IL walks. The patch amends
> the GIMPLE DCE code that elides redundant
Hi,
I reworked my patch based on your feedback and added data structures for
caching linemarker lookups.
It implements a two-stage approach consisting of plain memoization of calls to
get_source_line_preprocessed and
a hash table for storing linemarkers per source file. The details should
hopef
On 2/10/25 2:22 AM, Georg-Johann Lay wrote:
Then avr.cc has this:
/* Implement `TARGET_LEGITIMATE_COMBINED_INSN'. */
/* PR78883: Filter out paradoxical SUBREGs of MEM which are not handled
properly by following passes. As INSN_SCHEDULING is off and hence
general_operand accepts suc
This patch set is almost certainly too late to make it in GCC 15, except
possibly the first two pieces (a bug fix and an internal interface
cleanup). These patches are against current mainline head, but I am
planning to shortly commit a near-identical version to the OG14
development branch and I h
The "begin declare variant" has different rules for determining
whether a context selector cannot match for purposes of code elision
than we normally use; it excludes the case of a constant false
"condition" selector for the "user" set.
gcc/ChangeLog
* omp-general.cc (omp_context_selector_
The OpenMP "begin declare variant" directive has slightly different
requirements for context selectors than regular "declare variant", so
something more than a bool is required to tell the error-checking routine
what to check.
gcc/ChangeLog
* omp-general.cc (omp_check_context_selector): Ch
This patch adds functions for variant name mangling and context selector
merging that are shared by the C and C++ front ends.
The OpenMP specification says that name mangling is supposed to encode
the context selector for the variant, but also provides for no way to
reference these functions direc
On Sun, Feb 2, 2025 at 10:23 PM H.J. Lu wrote:
>
> commit 3b9b8d6cfdf59337f4b7ce10ce92a98044b2657b
> Author: Surya Kumari Jangala
> Date: Tue Jun 25 08:37:49 2024 -0500
>
> ira: Scale save/restore costs of callee save registers with block
> frequency
>
> scales the cost of saving/restoring
On Mon, Feb 10, 2025 at 9:56 AM Andrew Pinski wrote:
>
> On Sun, Feb 2, 2025 at 10:23 PM H.J. Lu wrote:
> >
> > commit 3b9b8d6cfdf59337f4b7ce10ce92a98044b2657b
> > Author: Surya Kumari Jangala
> > Date: Tue Jun 25 08:37:49 2024 -0500
> >
> > ira: Scale save/restore costs of callee save reg
Namely, this patch replaces bool by the newly added enum
'OMP_CTX_{METADIRECTIVE,{BEGIN_,}DECLARE_VARIANT}'.
Sandra Loosemore wrote:
The OpenMP "begin declare variant" directive has slightly different
requirements for context selectors than regular "declare variant", so
something more than a bo
Sandra Loosemore wrote:
gcc/ChangeLog
* omp-general.cc (omp_context_selector_props_compare): Handle
arbitrary expressions in the "user" and "device_num" selectors.
(omp_context_selector_set_compare): Detect mismatch when one
selector specifies a score and the other
gcc/testsuite/ChangeLog
* c-c++-common/gomp/delim-declare-variant-1.c: New.
* c-c++-common/gomp/delim-declare-variant-2.c: New.
* c-c++-common/gomp/delim-declare-variant-3.c: New.
* c-c++-common/gomp/delim-declare-variant-4.c: New.
* c-c++-common/gomp/delim-d
gcc/c/ChangeLog
* c-decl.cc (current_omp_declare_variant_attribute): Define.
* c-lang.h (struct c_omp_declare_variant_attr): Declare.
(current_omp_declare_variant_attribute): Declare.
* c-parser.cc (c_parser_skip_to_pragma_omp_end_declare_variant): New.
(c_pa
gcc/ChangeLog
* omp-general.cc (omp_context_selector_props_compare): Handle
arbitrary expressions in the "user" and "device_num" selectors.
(omp_context_selector_set_compare): Detect mismatch when one
selector specifies a score and the other doesn't.
---
gcc/omp-gen
This patch implements C++ support for the "begin declare variant"
construct. The OpenMP specification is hazy on interaction of this
feature with C++ language features. Variant functions in classes are
supported but must be defined as members in the class definition,
using an unqualified name for
Hello Harld,
the attached patch enhances the checking of pointer targets in structure
constructors to catch the following invalid cases (before we ICE :)
- different rank
- vector subscript of target
Regtested on x86_64-pc-linux-gnu. OK for mainline?
OK (and bordering on obvious).
Thanks fo
Hi Thomas,
Am 10.02.25 um 20:26 schrieb Thomas Koenig:
Hello Harld,
the attached patch enhances the checking of pointer targets in structure
constructors to catch the following invalid cases (before we ICE :)
- different rank
- vector subscript of target
Regtested on x86_64-pc-linux-gnu. OK
Am 09.02.25 um 20:24 schrieb Jerry D:
"Type mismatch at %L when passing global function %qs "
"declared at %L (%s/%s)"
Committed as r15-7460-gd2ff1b78d70731db1b7adc1cbac7e44688828370 .
Thanks for the help with the wording!
Best regards
Thomas
Hello,
among other things, IPA-SRA checks whether splitting out a bit of an
aggregate or something passed by reference would lead into a clash
with an already known IPA-CP constant a way which would cause problems
later on. Unfortunately the test is done only in
adjust_parameter_descriptions and
Hi,
PR 118125 is a performance regression stemming from the fact that we
lose the cold attribute of our __builtin_unreachable. The attribute
is simply and silently dropped on the floor by decl_attributes (in
attribs.cc) in the process of building decls for builtins because it
cannot look it up in
After r0-72806-gbc4071dd66fd4d, c_parser_consume_token will
assert if we get a pragma inside c_parser_consume_token but
pragma processing will call pragma_lex which then calls
c_parser_consume_token. In the case of pragma with expansion
(redefine_extname, message and sometimes pack [and some target
Hello,
Are there any news on this?
Samuel
Samuel Thibault, le jeu. 02 janv. 2025 16:33:43 +0100, a ecrit:
> From: Svante Signell
>
> GNU/Hurd uses glibc just like GNU/Linux.
>
> This is needed for gcc to notice that glibc supports split stack in
> finish_options.
>
> gcc/ChangeLog:
> *
Tested on x86_64-pc-linux-gnu, does this look OK for trunk?
-- >8 --
libstdc++-v3/ChangeLog:
* include/bits/version.def (ranges_cache_latest): Define.
* include/bits/version.h: Regenerate.
* include/std/ranges (cache_latest_view): Define for C++26.
(cache_latest_v
Since r15-1120, multi-word shifts/rotates produces PLUS instead of IOR.
It's generally a good thing (allowing to use our alsl instruction or
similar instrunction on other architectures), but it's preventing us
from using bytepick. For example, if we shift a __int128 by 16 bits,
the higher word can
在 2024/11/29 10:12, yulong 写道:
在 2024/11/28 19:24, Dongyan Chen 写道:
This patch support ssdbltrp[1] and smdbltrp[2] extension.
To enable GCC to recognize and process ssdbltrp and smdbltrp
extension correctly at compile time.
[1]
https://github.com/riscv/riscv-isa-manual/blob/main/src/ssdbl
在 2024/11/29 10:12, yulong 写道:
在 2024/11/28 19:24, Dongyan Chen 写道:
This patch support ssdbltrp[1] and smdbltrp[2] extension.
To enable GCC to recognize and process ssdbltrp and smdbltrp
extension correctly at compile time.
[1]
https://github.com/riscv/riscv-isa-manual/blob/main/src/ssdbl
On Tue, Feb 11, 2025 at 7:13 AM H.J. Lu wrote:
>
> x is not a macro argument. It just happens to work as final.cc passes
> x for 2nd argument:
>
> final.cc: ASM_OUTPUT_SYMBOL_REF (file, x);
>
> PR target/118825
> * config/i386/i386.h (ASM_OUTPUT_SYMBOL_REF): Replace x with
> SYM.
> - =
x is not a macro argument. It just happens to work as final.cc passes
x for 2nd argument:
final.cc: ASM_OUTPUT_SYMBOL_REF (file, x);
PR target/118825
* config/i386/i386.h (ASM_OUTPUT_SYMBOL_REF): Replace x with
SYM.
--
H.J.
From d4cba6c43d7cf3bb7de4e751044a09ce3146a22b Mon Sep 17 00:00:00
As discussed from RISC-V C-API PR #101 [1], As discussed in #96, current
interface is insufficient to support some cases, like a vendor buying a
CPU IP from the upstream vendor but using their own mvendorid and custom
features from the upstream vendor. In this case, we might need to add
these exten
Hi,
I think , the "{lsx_,lasx_x}hv{add,sub}w" in the title should be
"{lsx_,lasx_x}vh{add,sub}w".
在 2025/2/7 下午8:09, Xi Ruoyao 写道:
Like what we've done for {lsx_,lasx_x}v{add,sub,mul}l{ev,od}, use
special predicates and TImode RTL instead of hard-coded const vectors
and UNSPECs.
/* snip */
It seems that the title here is "{lsx_,lasx_x}vmaddw".
在 2025/2/7 下午8:09, Xi Ruoyao 写道:
Like what we've done for {lsx_,lasx_x}v{add,sub,mul}l{ev,od}, use
special predicates and TImode RTL instead of hard-coded const vectors
and UNSPECs.
Also reorder two operands of the outer plus in the templat
Bootstrapped and regtested on x86_64-pc-linux-gnu (and additionally
passed modules.exp with a checking=all build), OK for trunk?
-- >8 --
When instantiating a friend function, we call register_specialization
which adds it to the DECL_TEMPLATE_INSTANTIATIONS of the template.
However, in some circu
On Thu, Jan 30, 2025 at 3:23 PM Ian Lance Taylor wrote:
>
> This patch from pgerell at GitHub adds some casts to libbacktrace to
> avoid undefined shifts. These shifts are OK on all real systems but
> may as well get it right. Bootstrapped and ran libbacktrace tests on
> x86_64-pc-linux-gnu. Commi
On 2/7/25 11:48 PM, Michael Meissner wrote:
> On Fri, Feb 07, 2025 at 05:51:19PM -0600, Peter Bergner wrote:
>> On 2/7/25 4:02 PM, Michael Meissner wrote:
>>> (define_predicate "invert_fpmask_comparison_operator"
>>> - (match_code "ne,unlt,unle"))
>>> + (ior (match_code "ne")
>>> + (and (m
66 matches
Mail list logo