On Thu, Oct 24, 2024 at 6:23 AM Richard Biener
wrote:
>
> On Thu, Oct 24, 2024 at 8:16 AM Andrew Pinski wrote:
> >
> > On Wed, Oct 23, 2024 at 12:28 AM Andrew Pinski wrote:
> > >
> > > On Tue, Oct 22, 2024 at 11:49 PM Richard Biener
> > > wrote:
> > > >
> > > > On Tue, Oct 22, 2024 at 5:31 PM A
Yury Khrustalev writes:
> From: Szabolcs Nagy
>
> Add new builtins for GCS:
>
> void *__builtin_aarch64_gcspr (void)
> uint64_t __builtin_aarch64_gcspopm (void)
> void *__builtin_aarch64_gcsss (void *)
>
> The builtins are always enabled, but should be used behind runtime
> checks in case t
From: Pan Li
There are sorts of forms for the unsigned SAT_ADD. Some of them are
complicated while others are cheap. This patch would like to simplify
the complicated form into the cheap ones. For example as below:
>From the form 3 (branch):
SAT_U_ADD = (X + Y) >= x ? (X + Y) : -1.
To (bra
These tests check `_GLIBCXX_DOUBLE_IS_IEEE_BINARY128` but that's never
defined, it should be "LDOUBLE" not "DOUBLE".
libstdc++-v3/ChangeLog:
* testsuite/26_numerics/complex/ext_c++23.cc: Fix typo in macro.
* testsuite/26_numerics/headers/cmath/constexpr_std_c++23.cc:
Likew
This patch disables propagation of ipcp information into lto partitions
where all instances of the node are marked to be inlined.
Motivation:
Incremental LTO needs stable values between compilations to be
effective. This requirement fails with following example:
void heavily_used_debug_function(i
On Thu, Oct 24, 2024 at 8:16 AM Andrew Pinski wrote:
>
> On Wed, Oct 23, 2024 at 12:28 AM Andrew Pinski wrote:
> >
> > On Tue, Oct 22, 2024 at 11:49 PM Richard Biener
> > wrote:
> > >
> > > On Tue, Oct 22, 2024 at 5:31 PM Andrew Pinski
> > > wrote:
> > > >
> > > > This adds quick_emplace_push
Similar to
https://gcc.gnu.org/pipermail/gcc-patches/2024-October/665780.html,
this patch implements folding of svaba to svabd if op1 is all zeros,
resulting in the use of UABD/SABD instructions instead of UABA/SABA.
Tests were added to check the produced assembly for use of UABD/SABD,
also for the
Hi!
On 2024-10-14T19:18:46-0400, David Malcolm wrote:
> [...]
> Unfortunately we can't directly include in our internal headers
> but instead any of our TUs that make use of std::unique_ptr must #define
> INCLUDE_MEMORY before including system.h.
>
> Hence the bulk of this patch is taken up with
Yury Khrustalev writes:
> From: Szabolcs Nagy
>
> Follows the current linux ABI that uses single signal entry token
> and shared shadow stack between thread and alt stack.
> Could be behind __ARM_FEATURE_GCS_DEFAULT ifdef (only do anything
> special with gcs compat codegen) but there is a runtime
Hi Richard,
> On 23 Oct 2024, at 11:30, Richard Sandiford wrote:
>
> Kyrylo Tkachov writes:
>> Hi all,
>>
>> Some vector rotate operations can be implemented in a single instruction
>> rather than using the fallback SHL+USRA sequence.
>> In particular, when the rotate amount is half the bitwidth
On Wed, 23 Oct 2024, Jason Merrill wrote:
> On 10/23/24 10:20 AM, Patrick Palka wrote:
> > On Tue, 22 Oct 2024, Marek Polacek wrote:
> >
> > > Bootstrapped/regtested on x86_64-pc-linux-gnu, ok for trunk?
> > >
> > > -- >8 --
> > > This patch implements C++26 Pack Indexing, as described in
> > >
This allows optimizing copying ranges of floating-point types when they
have the same size and representation, e.g. between _Float32 and float
when we know that float uses the same IEEE binary32 format as _Float32.
On some targets double and long double both use IEEE binary64 format so
we could en
Hi Andrew,
> On 25 Oct 2024, at 01:10, Andrew Pinski wrote:
>
> On Mon, Jun 3, 2024 at 2:23 AM Andrew Pinski (QUIC)
> wrote:
>>
>>> -Original Message-
>>> From: Andrew Pinski (QUIC)
>>> Sent: Saturday, May 4, 2024 2:03 AM
>>> To: gcc-patches@gcc.gnu.org
>>> Cc: Andrew Pinski (QUIC)
>
On Thu, 24 Oct 2024 at 16:00, Jonathan Wakely wrote:
>
> This is another piece of P1206R7, adding new members to std::vector and
> std::vector.
>
> The __uninitialized_copy_a extension needs to be enhanced to support
> passing non-common ranges (i.e. a sentinel that is a different type from
> the
On Thu, 24 Oct 2024, Jakub Jelinek wrote:
> +@defbuiltin{@var{type} __builtin_stdc_rotate_left (@var{type} @var{arg1},
> @var{type} @var{arg2})}
The rotate count doesn't need to be the same type as the value rotated, so
saying @{type} for both is misleading.
> +The @code{__builtin_stdc_rotate_
On Thu, Oct 24, 2024 at 02:20:16PM +, Joseph Myers wrote:
> On Thu, 24 Oct 2024, Jakub Jelinek wrote:
>
> > +@defbuiltin{@var{type} __builtin_stdc_rotate_left (@var{type} @var{arg1},
> > @var{type} @var{arg2})}
>
> The rotate count doesn't need to be the same type as the value rotated, so
>
Yury Khrustalev writes:
> From: Szabolcs Nagy
>
> Transaction begin and abort use setjmp/longjmp like operations that
> need to be updated for GCS compatibility. We use similar logic to
> libc setjmp/longjmp that support switching stack and thus switching
> GCS (e.g. due to longjmp out of a makec
Hi!
We have currently 3 different definitions of gcc_assert macro, one used most
of the time (unless --disable-checking) which evaluates the condition at
runtime and also checks it at runtime, then one for --disable-checking GCC 4.5+
which looks like
((void)(UNLIKELY (!(EXPR)) ? __builtin_unreacha
On Sun, 13 Oct 2024 at 18:59, Giuseppe D'Angelo
wrote:
>
> Hello,
>
> On 09/10/2024 22:39, Patrick Palka wrote:
> >> +#if __glibcxx_string_view >= 202403L
> >> + // const string & + string_view
> >> + template
> >> +[[nodiscard]]
> >> +constexpr inline basic_string<_CharT, _Traits, _Allo
From: Javier Miranda
The Pre_Class/Post_Class pragmas are rejected at compile time
for abstract subprograms.
gcc/ada/ChangeLog:
* sem_prag.adb (Analyze_Pre_Post_Condition): Allow the use of
pragma Pre_Class/Post_Class with abstract subprograms.
Tested on x86_64-pc-linux-gnu, co
From: Eric Botcazou
The literals of enumeration types are always normalized, even though they
contain wide characters (but the normalization leaves these unchanged),
so a normalization routine that is aware of wide characters must be run
on the input string for 'Wide_Wide_Value.
gcc/ada/ChangeLo
From: Ronan Desplanques
The parameters Maximum_Size and If_Empty were mentioned during the
request for comments phase but are not implemented, at least for now.
This patch changes the GNAT reference manual accordingly. It also makes
a minor punctuation change.
gcc/ada/ChangeLog:
* doc/g
From: Javier Miranda
The Constraint_Error exception is not raised when a subprogram
is called using prefix notation, and the prefix of the call is
an access-to-subprogram type with a null value. This new check
is enabled by switch -gnatd_P
gcc/ada/ChangeLog:
* gen_il-fields.ads: New nod
From: Tom Tromey
This adds an 'artificial_p' parameter to build_unc_object_type, so
that the artificiality of the type can be propagated to
create_type_decl. This will affect the namelessness of the type in a
subsequent patch.
gcc/ada/ChangeLog:
* gcc-interface/decl.cc (gnat_to_gnu_ent
From: Eric Botcazou
An Asynchronous Transfer of Control blocks with a timed delay that is
computed by means of the Ada.Real_Time unit (instead of the default
Ada.Calendar unit) because of a missing abort deferral in the unit.
gcc/ada/ChangeLog:
PR ada/43485
* libgnarl/a-retide.a
From: Eric Botcazou
This is a regression introduced when the diagnosis of ambiguous operands
for comparison and equality operators was moved from the analysis to the
resolution phase in order to avoid spurious ambiguities in specific cases.
When an ambiguity is detected for the operands of prede
From: Eric Botcazou
It computes the size of an integer type that can accommodate the input.
gcc/ada/ChangeLog:
* uintp.ads (Type_Size_For): New function declaration.
* uintp.adb (Type_Size_For): New function body.
* exp_imgv.adb (Rewrite_Object_Image): Call Type_Size_For
From: Tonu Naks
gcc/ada/ChangeLog:
* doc/gnat_rm/gnat_language_extensions.rst: update
simpler accessibility model
* gnat_rm.texi: Regenerate.
* gnat_ugn.texi: Regenerate.
Tested on x86_64-pc-linux-gnu, committed on master.
---
.../doc/gnat_rm/gnat_language_exte
From: Eric Botcazou
The problem occurs when the component type is a record type with default
values for the initialization procedure of the (base) array type, because
the compiler is trying to generate a full access for a parameter of the
base array type, which does not make sense.
gcc/ada/Chang
From: Tom Tromey
This changes the Ada compiler to emit DWARF information for Ada 'with'
and 'use' clauses. In particular, code like:
with Pck; use Pck;
will be emitted as:
<1><146a>: Abbrev Number: 23 (DW_TAG_module)
<146b> DW_AT_name: pck
<146f> DW_AT_decl_file : 1
On 14/10/2024 13:23, Christophe Lyon wrote:
>
>
> On 10/13/24 19:50, Torbjörn SVENSSON wrote:
>> Ok for trunk and releases/gcc-14?
>>
>> Changes since v1:
>>
>> - Dropped changes to dg- instructions. These will be addressed in a separate
>> set of patches later.
>
> LGTM, let's avoid mixing cha
Disallowing vuses in blocks for ifcombine is too strict, and it
prevents usefully moving fold_truth_andor into ifcombine. That
tree-level folder has long ifcombined loads, absent other relevant
side effects.
for gcc/ChangeLog
* tree-ssa-ifcombine.c (bb_no_side_effects_p): Allow vuses
On Oct 22, 2024, Richard Biener wrote:
> On Mon, Oct 21, 2024 at 4:30 AM Alexandre Oliva wrote:
>>
>> On Oct 10, 2024, Richard Biener wrote:
>>
>> > As you special-case hard register uses, do we want to ever make
>> > hard-register
>> > uses or defs unconditional? I'll note that on GIMPLE h
In preparation to changes that may modify both inner and outer
conditions in ifcombine, drop the redundant parameter result_inv, that
is always identical to inner_inv.
for gcc/ChangeLog
* tree-ssa-ifcombine.cc (ifcombine_ifandif): Drop redundant
result_inv parm. Adjust all ca
I've just posted 7 patches related with the implementation of
noncontiguous ifcombine. They've been regstrapped together on
x86_64-linux-gnu, and each patch has been tested to build on top of the
previous on.
Patches #1, #2 and #3 are preparatory patches that stand on their own.
Patches #4, #5 a
Refactor ifcombine_ifandif, moving the common code from the various
paths that apply the combined condition to a new function.
for gcc/ChangeLog
* tree-ssa-ifcombine.cc (ifcombine_replace_cond): Factor out
of...
(ifcombine_ifandif): ... this.
---
gcc/tree-ssa-ifcombin
Rework ifcombine to support merging conditions from noncontiguous
blocks. This depends on earlier preparation changes.
The function that attempted to ifcombine a block with its immediate
predecessor, tree_ssa_ifcombine_bb, now loops over dominating blocks
eligible for ifcombine, attempting to c
Prepare for ifcombining noncontiguous blocks, adding (still unused)
logic to the ifcombine profile updater to handle such cases.
for gcc/ChangeLog
* tree-ssa-ifcombine.cc (known_succ_p): New.
(update_profile_after_ifcombine): Handle noncontiguous blocks.
---
gcc/tree-ssa-ifco
Prepare to handle noncontiguous ifcombine, introducing logic to modify
the outer condition when needed. There are two cases worth
mentioning:
- when blocks are noncontiguous, we have to place the combined
condition in the outer block to avoid pessimizing carefully crafted
short-circuited te
On 08/10/2024 17:18, Richard Sandiford wrote:
Andrew Carlotti writes:
This includes +fcma as a dependency of +sve, and means that we can
finally support fcma intrinsics on a64fx.
Also add fcma to the Features list in several cpunative testcases that
incorrectly included sve without fcma.
g
> "Tom" == Tom Tromey writes:
Tom> I am working on some changes to GNAT to emit hierarchical DWARF --
Tom> i.e., where entities will have simple names nested in a DW_TAG_module.
Tom> While working on this I found a couple of paths in modified_type_die
Tom> where "mod_scope" should be used, b
On Thu, 24 Oct 2024 12:01:10 -0400
"James K. Lowden" wrote:
> They are not. With --enable-generated-files-in-srcdir, the build
> fails. What do I need to do to fix it? I haven't the faintest idea.
I believe I found it:
diff --git a/gcc/cobol/Make-lang.in b/gcc/cobol/Make-lang.in
index 6a57
OK.
--
Regards
Robin
Wilco Dijkstra writes:
> As shown in the PR, reload may only check the constraint in some cases and
> and not check the predicate is still valid for the resulting instruction.
Yeah, that's by design. constraints have to accept a subset of the
predicates.
> To fix the issue, add a new constraint
From: Tom Tromey
When using minimal encodings, most artificial types do not need to
have their names emitted in the DWARF. This patch changes the
compiler to generally omit these names.
However, a subset of names are needed: when the compiler creates an
artificial type for certain kinds of arra
From: squirek
This patch increases the default tasking stack size for Windows tasking
program to 8 mb to avoid use of pragma Linker_Options in the general case.
gcc/ada/ChangeLog:
* libgnarl/s-taprop__mingw.adb: Modify stack size and update
documentation.
Tested on x86_64-pc-li
From: Tom Tromey
An earlier patch in the "nameless" series caused a regression with
-fgnat-encodings=all. Previously, all artificial types were emitted
in the CU scope in the DWARF, but with the patch, an "XUB" type is
emitted in the function scope. This causes gdb lookups to erroneously
find t
From: Eric Botcazou
This removes the enumeration of the various cases in the comment associated
with the declaration of In_Expanded_Body to prevent synchronization issues.
gcc/ada/ChangeLog:
* freeze.adb (Freeze_Expression.In_Expanded_Body): Tweak comments.
Tested on x86_64-pc-linux-gn
From: Tom Tromey
The types created by record_builtin_type and create_type_stub_decl can
be marked as nameless when using minimal encodings. In this
situation, gdb does not need these type names.
gcc/ada/ChangeLog:
* gcc-interface/utils.cc (record_builtin_type, create_type_stub_decl):
From: Eric Botcazou
If an actual parameter that is a type conversion is passed by reference but
not addressable, the temporary that is created and whose address is passed
instead may need to be in the target type of the conversion to fulfill the
requirements of strict aliasing.
gcc/ada/ChangeLog
From: Javier Miranda
The pragmas Pre_Class and Post_Class are accepted by the compiler
but have no effect at runtime.
gcc/ada/ChangeLog:
* freeze.adb (Freeze_Entity): If the entity is an access-to-subprogram
type declaration that pre/postcondition contracts, build the
wr
From: Tom Tromey
This changes gigi so that standard types are no longer marked
artificial. This change is needed to prevent subsequent patches from
causing standard types to have their names elided. Also, although
DWARF says that DW_AT_artificial is used for "the declaration of an
object or typ
From: Eric Botcazou
This occurs when the call is to a function that is declared in a package
that is nested in the scope where the type declaration is located.
gcc/ada/ChangeLog:
* freeze.adb (Freeze_Expression.In_Expanded_Body): Also return True
for the body of a helper/wrapper
From: Tom Tromey
gdb does not need the name of XUA types. This patch changes the
compiler to unconditionally mark these as artificial; a subsequent
patch will arrange for the name to be omitted.
gcc/ada/ChangeLog:
* gcc-interface/decl.cc (gnat_to_gnu_entity): Pass 'true' to
cre
On Fri, Oct 25, 2024 at 12:22 AM Kugan Vivekanandarajah
wrote:
>
> Hi,
>
> This patch sets param_vect_max_version_for_alias_checks to 15.
> This was causing GCC to miss vectorization opportunities in one internal
> application making it slower than LLVM by about ~14%.
>
> I've tested different pa
It happens from time to time that we run into asserts, esp. for OMP_CLAUSE_DECL.
The reason is that the comment for omp_clause_code implies that arguments
should be appended (misreading the "Don't reorder") and that there was
no crossref to those macros.
This patch adds comments both a generic c
The following places a few strathegic asserts so we do not end up
with COND_EXPRs with a comparison as the first operand during
vectorization.
Bootstrap and regtest running on x86_64-unknown-linux-gnu.
These are the asserts I'd like to keep, I will followup with quite
some dead code removal when
On Wed, 23 Oct 2024 15:12:19 +0200
Richard Biener wrote:
> Note there's --enable-generated-files-in-srcdir specifically to remove
> yacc and flex - can you check whether with this configure flag those
> files are generated in the source directory and thus picked up when
> building the release tar
On Wed, 23 Oct 2024, Jennifer Schmitz wrote:
>
>
> > On 22 Oct 2024, at 13:14, Richard Biener wrote:
> >
> > External email: Use caution opening links or attachments
> >
> >
> > On Tue, 22 Oct 2024, Jennifer Schmitz wrote:
> >
> >>
> >>
> >>> On 22 Oct 2024, at 11:05, Richard Biener wrot
On Fri, Oct 25, 2024 at 7:54 AM Jakub Jelinek wrote:
>
> On Fri, Oct 25, 2024 at 01:25:25PM +0200, Arsen Arsenović wrote:
> > Maybe we should go the other way around? Compressing eight spaces into
> > a tab leads to strange artifacts in diffs (where lines appear
> > misindented because some were
On Wed, 23 Oct 2024, Patrick Palka wrote:
> Bootstrapped and regtested on x86_64-pc-linux-gnu, does this look
> OK for trunk?
>
> -- >8 --
>
> This tree code was added as part of the initial Concepts TS
> implementation to support type-constraints introducing any kind
> of template-parameter, no
On Fri, 25 Oct 2024 at 12:17, Jakub Jelinek wrote:
>
> Hi!
>
> On top of the previously posted leading whitespace patch, this change
> just replaces 8 consecutive spaces in leading whitespace by tab.
> The patch is too large (1MB xz -9e compressed), so I'm not even trying to
> split it up into 4+
On Fri, Oct 25, 2024 at 01:12:15PM +0100, Jonathan Wakely wrote:
> So everything except:
>
> include/pstl/*
> src/c++17/ryu/*
> src/c++17/fast_float/*
Thanks, changed in my copy.
grep 'pstl\|ryu\|fast_float' Q624
is now empty.
Jakub
I'd like to ping 18 C++ patches:
https://gcc.gnu.org/pipermail/gcc-patches/2024-July/658137.html
libcpp, c++: Optimize initializers using #embed in C++
https://gcc.gnu.org/pipermail/gcc-patches/2024-August/659333.html
c++: Speed up compilation of large char array initializers when not using
> On 25 Oct 2024, at 13:46, Richard Sandiford wrote:
>
> Kyrylo Tkachov writes:
>> Thank you for the suggestions! I’m trying them out now.
>>
+ if (rotamnt % BITS_PER_UNIT != 0)
+return NULL_RTX;
+ machine_mode qimode;
+ if (!qimode_for_vec_perm (mode).exists (&qimo
The following tries to finish building proper GIMPLE COND_EXPRs
in vectorizer pattern recognition.
Bootstrapped and tested on x86_64-unknown-linux-gnu.
* tree-vect-patterns.cc (vect_recog_divmod_pattern): Build
separate comparion pattern for the condition of a COND_EXPR
pa
On Thu, Oct 24, 2024 at 4:08 PM wrote:
>
> From: Pan Li
>
> There are sorts of forms for the unsigned SAT_ADD. Some of them are
> complicated while others are cheap. This patch would like to simplify
> the complicated form into the cheap ones. For example as below:
>
> From the form 3 (branch)
Arsen Arsenović writes:
> Hi!
>
> Jakub Jelinek writes:
>
>> Hi!
>>
>> On top of the previously posted leading whitespace patch, this change
>> just replaces 8 consecutive spaces in leading whitespace by tab.
>> The patch is too large (1MB xz -9e compressed), so I'm not even trying to
>> split it
This fixes up vect_recog_ctz_ffs_pattern.
Bootstrap and regtest running on x86_64-unknown-linux-gnu.
* tree-vect-patterns.cc (vect_recog_ctz_ffs_pattern): Create
a separate pattern stmt for the comparison in the generated
COND_EXPR.
---
gcc/tree-vect-patterns.cc | 7 +
Hi!
On Thu, Oct 24, 2024 at 03:33:25PM -0400, Eric Gallager wrote:
> On Thu, Oct 24, 2024 at 4:17 AM Jakub Jelinek wrote:
> > I've tried to build stage3 with
> > -Wleading-whitespace=blanks -Wtrailing-whitespace=blank
> > -Wno-error=leading-whitespace=blanks -Wno-error=trailing-whitespace=blank
On 10/24/24 5:10 PM, Nathaniel Shead wrote:
On Thu, Oct 24, 2024 at 12:05:18PM -0400, Jason Merrill wrote:
On 10/24/24 3:25 AM, Nathaniel Shead wrote:
I wasn't sure whether I should include the ambiguity checking logic from
process_partial_specialization; we don't do this anywhere else in the
m
Tested on x86_64-pc-linux-gnu, does this look OK for trunk/backports?
Also available in PR form at https://forge.sourceware.org/gcc/gcc-TEST/pulls/8
-- >8 --
Views are required to have a amortized O(1) begin(), but our drop_view's
const begin overload is O(n) for non-common ranges. This patch
re
The upcoming move of fold_truth_andor to ifcombine brings with it the
possibility of TRUTH_ANDIF cond exprs. Handle them by splitting the
cond so as to best use both BB insertion points, but only if they're
contiguous.
for gcc/ChangeLog
* tree-ssa-ifcombine.c (ifcombine_replace_cond)
On Wed, 16 Oct 2024, Patrick Palka wrote:
> On Mon, 30 Sep 2024, Patrick Palka wrote:
>
> > This implements the C++23 container adaptors std::flat_map and
> > std::flat_multimap from P0429R9. The implementation is shared
> > as much as possible between the two adaptors via a common base
> > clas
> After we have MASK_LEN_STRIDED_LOAD{STORE} in the middle-end, the
> strided case need to be adjust for IR check.
OK once the middle-end changes are in.
--
Regards
Robin
As shown in the PR, reload may only check the constraint in some cases and
and not check the predicate is still valid for the resulting instruction.
To fix the issue, add a new constraint which matches the predicate exactly.
Passes regress & bootstrap, OK for commit?
gcc/ChangeLog:
PR ta
> +(define_expand "mask_len_strided_store_"
> + [(match_operand 0 "pmode_reg_or_0_operand")
> + (match_operand 1 "pmode_reg_or_0_operand")
> + (match_operand:V 2 "register_operand")
> + (match_operand: 3 "vector_mask_operand")
> + (match_operand 4 "autovec_length_ope
On 8/8/24 4:44 AM, Jakub Jelinek wrote:
This is an attempt to implement the https://wg21.link/p3034r1 paper,
but I'm afraid the wording in the paper is bad for multiple reasons.
I think I understand the intent, that the module name and partition
if any shouldn't come from macros so that they can
On Sun, 2024-10-13 at 20:44 -0400, James K. Lowden wrote:
/* snip */
> In testing the patch with "git am"
Please also use "git gcc-verify". See below for the incorrect changelog
which would be caught by the command.
> I got a warning about a blank line
> at EOF, but I couldn't figure out where
Test was broken until r15-4684-g2d1d6be00257c5 which made it actually
run and r15-4685-g091e45b4e97d1e which applied fixes other than the
trivial rename.
But more is needed: this gets the test working properly in terms of scanning
the dump and handling the interaction w/ LTO with not producing an
On Thu, Oct 24, 2024 at 6:22 PM Li Xu wrote:
>
> From: xuli
>
> When the imm operand op1=1 in the unsigned scalar sat_sub form2 below,
> we can simplify (x != 0 ? x + ~0 : 0) to (x - x != 0), thereby eliminating
> a branch instruction.This simplification also applies to signed integer.
>
> Form2:
On Wed, Oct 23, 2024 at 12:28 AM Andrew Pinski wrote:
>
> On Tue, Oct 22, 2024 at 11:49 PM Richard Biener
> wrote:
> >
> > On Tue, Oct 22, 2024 at 5:31 PM Andrew Pinski
> > wrote:
> > >
> > > This adds quick_emplace_push and safe_emplace_push to vec.
> > > These are like std::vector's emplace_b
On Fri, 25 Oct 2024, Arsen Arsenović wrote:
> Maybe we should go the other way around? Compressing eight spaces into
> a tab leads to strange artifacts in diffs (where lines appear
> misindented because some were aligned by tabs and some by spaces), and
I also agree that spaces are preferable (g
From: Bob Duff
Self-referential with_clauses (as in package body X says "with X;")
cause trouble, such as duplicate nested instantiations when using
container packages. This patch disables most of the processing by
setting the Is_Implicit_With flag. It's not really implicit, but the
subsequent pr
From: Tom Tromey
gdb does not need the name of XUB types. This patch changes the
compiler to omit these names from the DWARF when minimal encodings are
in use.
gcc/ada/ChangeLog:
* gcc-interface/decl.cc (gnat_to_gnu_entity): Set TYPE_NAMELESS on
XUB types.
Tested on x86_64-pc-
Hi Jakub!
Just one item, quickly:
On 2024-10-25T10:19:58+0200, Jakub Jelinek wrote:
> We have currently 3 different definitions of gcc_assert macro, one used most
> of the time (unless --disable-checking) which evaluates the condition at
> runtime and also checks it at runtime, then one for --di
On Fri, 25 Oct 2024, Jakub Jelinek wrote:
> Hi!
>
> I've missed I need to add RAW_DATA_CST support in compare_tree_sccs_1,
> because without that it considers all RAW_DATA_CSTs to be equivalent,
> regardless of their length or content.
>
> Fixed thusly, bootstrapped/regtested on x86_64-linux and
Implement hard register constraints of the form {regname} where regname
must be a valid register name for the target. Such constraints may be
used in asm statements as a replacement for register asm and in machine
descriptions.
Due to optimizations it is not unexpected if two or more inputs requi
This is a follow-up to
https://gcc.gnu.org/pipermail/gcc-patches/2024-September/663238.html
The primary changes are about error handling and documentation updates.
Now, we error out whenever a hard register constraint is used more than
once across an alternative for outputs or inputs. For example
This implements error handling for hard register constraints including
potential conflicts with register asm operands.
In contrast to register asm operands, hard register constraints allow
more than just one register per operand. Even more than just one
register per alternative. For example, a v
Currently a register asm already materializes during expand. This
means, a hard register is allocated for the very first access of a
register asm as e.g. in an assignment. As a consequence this might lead
to suboptimal register allocation if the assignment and the using asm
statement are spread f
Since genoutput has no information about hard register names we cannot
statically verify those names in constraints of the machine description.
Therefore, we have to do it at runtime. Although verification shouldn't
be too expensive, restrict it to checking builds. This should be
sufficient since
On 18/10/2024 16:53, Andre Vieira (lists) wrote:
> Sorry for the delay, some other work popped up in between and this had some
> latent issues. They should all be addressed now in this new patch.
>
>
> When not dealing with the special armv8.1-m.main conditional instructions
> case make sure it
Thank you for the suggestions! I’m trying them out now.
> On 24 Oct 2024, at 21:11, Richard Sandiford wrote:
>
> Kyrylo Tkachov writes:
>> Hi Richard,
>>
>>> On 23 Oct 2024, at 11:30, Richard Sandiford
>>> wrote:
>>>
>>> Kyrylo Tkachov writes:
Hi all,
Some vector rotate ope
Hi!
Jakub Jelinek writes:
> Hi!
>
> On top of the previously posted leading whitespace patch, this change
> just replaces 8 consecutive spaces in leading whitespace by tab.
> The patch is too large (1MB xz -9e compressed), so I'm not even trying to
> split it up into 4+ pieces to fit under the m
On Fri, 25 Oct 2024, Jakub Jelinek wrote:
> On Tue, Oct 15, 2024 at 11:47:45AM +0200, Jakub Jelinek wrote:
> > The following patch adds selftests to genmatch to verify the new printing
> > routine there.
> > So that I can rely on HAVE_DECL_FMEMOPEN (host test), the tests are done
> > solely in sta
Jakub Jelinek writes:
> On Fri, Oct 25, 2024 at 01:25:25PM +0200, Arsen Arsenović wrote:
>> Maybe we should go the other way around? Compressing eight spaces into
>> a tab leads to strange artifacts in diffs (where lines appear
>> misindented because some were aligned by tabs and some by spaces)
Hey,
I have to admit I am not super familiar with long doubles, either than
knowing they are 128-bit FP representations... but bisect has pointed me
to this patch when investigating a regression on aarch64_be-none-elf for
the libstdc++ testcase: 26_numerics/complex/13450.cc
After some reduct
Kyrylo Tkachov writes:
>> On 25 Oct 2024, at 13:46, Richard Sandiford
>> wrote:
>>
>> Kyrylo Tkachov writes:
>>> Thank you for the suggestions! I’m trying them out now.
>>>
> + if (rotamnt % BITS_PER_UNIT != 0)
> +return NULL_RTX;
> + machine_mode qimode;
> + if (!qimod
> On 25 Oct 2024, at 14:39, Richard Biener wrote:
>
> External email: Use caution opening links or attachments
>
>
> On Wed, 23 Oct 2024, Jennifer Schmitz wrote:
>
>>
>>
>>> On 22 Oct 2024, at 13:14, Richard Biener wrote:
>>>
>>> External email: Use caution opening links or attachments
>
1 - 100 of 178 matches
Mail list logo