On 1/6/25 5:59 PM, Linus Torvalds wrote:
On Mon, 6 Jan 2025 at 16:13, Jeff Law wrote:
But in the case of concurrent accesses, shouldn't these objects be
declared as atomic?
No.
They aren't concurrent accesses to the same variable.
They are concurrent accesses to *different* memory locat
Jeff Law writes:
> On 1/3/25 11:11 AM, Sam James wrote:
>> Sam James writes:
>>
>>> PR117546 was fixed by Eric's r14-10693-gadab597af288d6 change, but
>>> the testcase here is sufficiently different to be worth including
>>> in torture/.
>>>
>>> gcc/testsuite/ChangeLog:
>>> PR ipa/117546
>>
After changing this cost from 1 to 3, the performance of spec2006
401 473 416 465 482 can be improved by about 2% on LA664.
Add option '-maddr-reg-reg-cost='.
gcc/ChangeLog:
* config/loongarch/genopts/loongarch.opt.in: Add
option '-maddr-reg-reg-cost='.
* config/loongarch
Kindly ping for the series.
Pan
-Original Message-
From: Li, Pan2
Sent: Monday, December 23, 2024 3:09 PM
To: gcc-patches@gcc.gnu.org
Cc: richard.guent...@gmail.com; tamar.christ...@arm.com; juzhe.zh...@rivai.ai;
kito.ch...@gmail.com; jeffreya...@gmail.com; rdapp@gmail.com
Subject:
Regtested native x86_64-linux. Also tested mmix-knuth-mmixware,
where it fixes ONE testcase, but one which is a regression on
master. The PR component is currently ipa, changed from the
original middle-end. IIUC this bug-fix doesn't fit the ipa
category IMHO, but rather more general tree-opt
On Jan 6, 2025, at 3:05 PM, Alexandre Oliva wrote:
>
> On Dec 22, 2024, Alexandre Oliva wrote:
>
>> for gcc/testsuite/ChangeLog
>
>> PR testsuite/118025
>> * gcc.dg/field-merge-1.c: Convert constants to desired types.
>> * gcc.dg/field-merge-3.c: Likewise.
>> * gcc.dg/fiel
On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
With non-BWX Alpha implementations we have a problem of data races where
a 8-bit byte or 16-bit word quantity is to be written to memory in that
in those cases we use an unprotected RMW access of a 32-bit longword or
64-bit quadword width. If conten
On 1/3/25 11:11 AM, Sam James wrote:
Sam James writes:
PR117546 was fixed by Eric's r14-10693-gadab597af288d6 change, but
the testcase here is sufficiently different to be worth including
in torture/.
gcc/testsuite/ChangeLog:
PR ipa/117546
* gcc.dg/torture/pr117546.c: New t
On Mon, Jan 06, 2025 at 05:12:57PM -0700, Jeff Law wrote:
>
>
> On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
> > With non-BWX Alpha implementations we have a problem of data races where
> > a 8-bit byte or 16-bit word quantity is to be written to memory in that
> > in those cases we use an unprote
Akram Ahmad writes:
> Hi Richard,
>
> Thanks for the feedback. I've copied in the resulting patch here- if
> this is okay, please could it be committed on my behalf? The patch
> continues below.
>
> Many thanks,
>
> Akram
Thanks. LGTM. Pushed to trunk.
Richard
> ---
>
> GIMPLE code which perfo
From: Tonu Naks
In __gnat_locate_exec_on_path (char *exec_name, int current_dir_on_windows)
the recently added second parameter is for windows only. On non-windows
platforms its usage is removed by the preprocessor and the compiler
reports unused parameter.
gcc/ada/ChangeLog:
* adaint.c
From: Bob Duff
Fix too-long line.
gcc/ada/ChangeLog:
* gen_il-gen.adb: Fix too-long line.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/gen_il-gen.adb | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gcc/ada/gen_il-gen.adb b/gcc/ada/gen_il-gen.a
From: Piotr Trojanek
When validating instances of Ada.Unchecked_Conversion, we explicitly detected
null arrays, because a size of 0 was used to indicate both an unknown size and
an actual size of 0. This limitation has been lifted, so we can remove
detection of null arrays.
Code cleanup; behavio
From: Ronan Desplanques
gcc/ada/ChangeLog:
* doc/gnat_ugn/building_executable_programs_with_gnat.rst: Fix markup.
* gnat_ugn.texi: Regenerate.
Tested on x86_64-pc-linux-gnu, committed on master.
---
.../doc/gnat_ugn/building_executable_programs_with_gnat.rst | 2 +-
gcc/ada/
This patch series fixes some ABI issues in lambdas, with a side effect
of fixing some issues with module streaming. This doesn't completely
fix the ABI for lambdas (in particular, namespace scope aliases are
still broken) but it at least improves the situation.
Successfully bootstrapped and regte
This fixes an issue where lambdas declared in the initializer of a
static data member within the class body do not get a mangling scope of
that variable; this results in mangled names that do not conform to the
ABI spec.
To do this, the patch splits up grokfield for this case specifically,
allowin
Something like this should probably be backported to GCC 14 too, since
my change in r14-9232-g3685fae23bb008 inadvertantly caused ICEs that
this fixes. But without the previous patch this patch will cause ABI
changes, and I'm not sure how easily it would be to divorce those
changes from the fix he
I'm not 100% sure I've handled this properly, any feedback welcome.
In particular, maybe should I use `DECL_IMPLICIT_TYPEDEF_P` in the
mangling logic instead of `!TYPE_DECL_ALIAS_P`? They both seem to work
in this case but not sure which would be clearer.
I also looked into trying do a limited fo
https://github.com/itanium-cxx-abi/cxx-abi/pull/85 clarifies that
mangling a lambda expression should use 'L' rather than "tl". This only
affects C++20 (and later) so no ABI flag is given.
gcc/cp/ChangeLog:
* mangle.cc (write_expression): Update mangling for lambdas.
gcc/testsuite/Chang
Happy to defer this till GCC16 if preferred.
-- >8 --
This fills in a hole left in r15-6378-g9016c5ac94c557 with regards to
detection of TU-local lambdas. Now that LAMBDA_EXPR_EXTRA_SCOPE is
properly set for most lambdas we can use it to detect lambdas that are
TU-local.
Lambdas in concept defi
On Mon, Jan 06, 2025 at 11:59:08AM +0100, Stefan Schulze Frielinghaus wrote:
> For some targets uptr is mapped to unsigned int and size_t to unsigned
> long and sizeof(int)==sizeof(long) holds. Still, these are distinct
> types and type checking may fail. Therefore, replace uptr by
> usize/SIZE_T
PR 118286 points out that some libgo tests are starting to fail
because they use test certificates that expired on January 1. This
libgo patch is a backport of https://go.dev/cl/640237 in the main
repo. It uses the existing config.Time field to avoid these test
failures. Bootstrapped and ran Go t
On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
For the BWX case we have a pessimisation in `alpha_expand_block_move'
for HImode loads where we place the data loaded into a HImode register
as well, therefore losing information that indeed the data loaded has
already been zero-extended to the full
Jennifer Schmitz writes:
>> It would also be good to check for performance regressions, now that we have
>> a patch to test:
>> I will run SPEC2017 with -mcpu=generic and -mcpu=native on Grace, but we
>> would appreciate help with benchmarking on other platforms.
>> Tamar, would you still be wil
> -Original Message-
> From: Richard Sandiford
> Sent: Monday, January 6, 2025 5:54 PM
> To: Jennifer Schmitz
> Cc: Richard Biener ; Richard Biener
> ; Tamar Christina ;
> gcc-patches@gcc.gnu.org; Kyrylo Tkachov
> Subject: Re: [RFC][PATCH] AArch64: Remove
> AARCH64_EXTRA_TUNE_USE_NEW_VEC
On Mon, 6 Jan 2025, Martin Uecker wrote:
>
> Happy new year! Please consider the following patch.
>
> Bootstrapped and regression tested on x86_64.
>
>
> c: Restore warning for incomplete structures declared in parameter list
> [PR117866]
>
> In C23 mode the warning about declari
On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
Now that we have proper alignment determination for block moves in place
the case of copying a block of longword-aligned data has become real, so
implement the merging of loaded data from pairs of SImode registers into
single DImode registers for the
On Dec 22, 2024, Alexandre Oliva wrote:
> for gcc/testsuite/ChangeLog
> PR testsuite/118025
> * gcc.dg/field-merge-1.c: Convert constants to desired types.
> * gcc.dg/field-merge-3.c: Likewise.
> * gcc.dg/field-merge-4.c: Likewise.
> * gcc.dg/field-merge-5.c: Likew
This patch series aims to fix the consistency of the CFG profile for vectorized
early break loops. I.e., if the CFG profile entering the vectorizer is
consistent for a given early break loop, this series aims to ensure that the
final vectorized loop also has a consistent profile.
For SPEC CPU 201
As it stands, scale_loop_profile doesn't correctly handle loops with
multiple exits. In particular, in the case where the expected niters
exceeds iteration_bound, scale_loop_profile attempts to reduce the
number of iterations with a call to scale_loop_frequencies, which
multiplies the count of eac
This adds missing code to correctly set the counts of the exit blocks we
create when building the CFG for a vectorized early break loop.
Tested as a series on aarch64-linux-gnu, arm-linux-gnueabihf, and
x86_64-linux-gnu. OK for trunk?
Thanks,
Alex
gcc/ChangeLog:
PR tree-optimization/11
This patch tries to make the CFG profile consistent when adding a guard
edge to skip the epilog during peeling.
The changes can be summarized as follows:
- We avoid adding the guard edge entirely if the guard condition folds
to false, otherwise the profile will become inconsistent since
the
This adjusts scale_profile_for_vect_loop to DTRT for loops with multiple exits,
namely using scale_loop_profile_hold_exit_counts instead and scaling the
expected niters by 1 / VF.
Tested as a series on aarch64-linux-gnu, arm-linux-gnueabihf, and
x86_64-linux-gnu. OK for trunk?
Thanks,
Alex
gcc/
On Sun, Dec 15, 2024 at 08:02:57PM -0800, Kees Cook wrote:
> When initializing a nonstring char array when compiled with
> -Wunterminated-string-initialization the warning trips even when
> truncating the trailing NUL character from the string constant. Only
> warn about this when running under -Wc
On Mon, 6 Jan 2025 at 16:13, Jeff Law wrote:
>
> But in the case of concurrent accesses, shouldn't these objects be
> declared as atomic?
No.
They aren't concurrent accesses to the same variable.
They are concurrent accesses to *different* memory locations, and the
compiler is not allowed to me
On Sat, 4 Jan 2025, James K. Lowden wrote:
> On Fri, 3 Jan 2025 19:46:38 +0100
> Jakub Jelinek wrote:
>
> > Again, the question is if it needs to be supported everywhere, or
> > just error out on targets which don't have _Float128
>
> Our preference is simply to error out on targets that don't
On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
Contrary to user documentation the `-mbwx', `-mcix', `-mfix', `-mmax'
feature options and their inverse forms are ignored whenever `-mcpu='
option is in effect, either by having been given explicitly or where
configured as the default such as with th
On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
Rename `emit_unlikely_jump' function to `alpha_emit_unlikely_jump', so
as to avoid namespace pollution, updating callers accordingly and export
it for use in the machine description. Make it return the insn emitted.
gcc/
* config/al
On Dec 21, 2024, Alexandre Oliva wrote:
> On Dec 20, 2024, Jakub Jelinek wrote:
>> On Wed, Dec 18, 2024 at 12:59:11AM -0300, Alexandre Oliva wrote:
>>> * gcc.dg/field-merge-16.c: New.
>> Note the test FAILs on i686-linux or on x86_64-linux with -m32.
> Indeed, thanks. Here's a fix.
Ping?
htt
On 1/6/25 6:03 AM, Maciej W. Rozycki wrote:
With non-BWX Alpha implementations we have a problem of data races where
a 8-bit byte or 16-bit word quantity is to be written to memory in that
in those cases we use an unprotected RMW access of a 32-bit longword or
64-bit quadword width. If conten
When analyzing 525 on LoongArch architecture, it was found that the
for loop of hotspot function x264_pixel_satd_8x4 could not be quantized
256-bit due to the cost of vec_construct setting. After re-adjusting
vec_construct, the performance of 525 program was improved by 16.57%.
It was found that
ping?
On Fri, 20 Dec 2024 at 23:53, Christophe Lyon
wrote:
>
> Commit r15-6389-g670df03e5294a3 only partially fixed support for moves
> of large modes: despite the introduction of V2x* and V4x* modes in
> r15-6245-g4f4e13dd235b to support MVE tuples, we still need to support
> TI, OI and XI modes
On Tue, Dec 31, 2024 at 2:04 PM Tamar Christina wrote:
>
> > -Original Message-
> > From: Richard Biener
> > Sent: Wednesday, November 20, 2024 11:28 AM
> > To: Andrew Pinski
> > Cc: gcc-patches@gcc.gnu.org
> > Subject: Re: [PATCH v2 2/3] cfgexpand: Rewrite add_scope_conflicts_2 to use
>
On 1/6/25 10:02 AM, Stafford Horne wrote:
On Mon, Jan 06, 2025 at 07:37:56AM -0700, Jeff Law wrote:
On 1/6/25 6:01 AM, Stafford Horne wrote:
In the OpenRISC build we get the following warning:
ld: warning: __modsi3_s.o: missing .note.GNU-stack section implies
executable stack
On 1/6/25 2:06 AM, Andre Vehreschild wrote:
Hi all,
pinging attached rebased patch.
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
- Andre
On Thu, 12 Dec 2024 14:50:13 +0100
Andre Vehreschild wrote:
Hi all,
attached patch improves analysis of cycles in derived types, i.e. type
On 1/6/25 6:21 AM, Andre Vehreschild wrote:
Hi all,
during looking for something completely different, I figured, that gcc does not
use std::set internally, but its implementation of hash_set. I therefore
adapted the patch to use it. Nothing more changed.
Still regtests ok on x86_64-pc-linux-gn
On 1/6/25 2:08 AM, Andre Vehreschild wrote:
Hi all,
attached patch has been rebased to latest trunk. Just pinging!
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
- Andre
On Fri, 13 Dec 2024 12:10:58 +0100
Andre Vehreschild wrote:
Hi all,
attached patch fixes deep-copying (or r
Hi Richard,
Thanks for the feedback. I've copied in the resulting patch here- if
this is okay, please could it be committed on my behalf? The patch
continues below.
Many thanks,
Akram
---
GIMPLE code which performs a narrowing truncation on the result of a
vector concatenation currently result
On Mon, Jan 06, 2025 at 10:03:50AM -0700, Jeff Law wrote:
>
>
> On 1/6/25 10:02 AM, Stafford Horne wrote:
> > On Mon, Jan 06, 2025 at 07:37:56AM -0700, Jeff Law wrote:
> > >
> > >
> > > On 1/6/25 6:01 AM, Stafford Horne wrote:
> > > > In the OpenRISC build we get the following warning:
> > > >
> -Original Message-
> From: Tamar Christina
> Sent: Tuesday, December 31, 2024 1:04 PM
> To: Richard Biener ; Andrew Pinski
>
> Cc: gcc-patches@gcc.gnu.org
> Subject: RE: [PATCH v2 2/3] cfgexpand: Rewrite add_scope_conflicts_2 to use
> cache and look back further [PR111422]
>
> > -Or
From: Piotr Trojanek
When resolving names in flow contracts, we refine the ordinary analysis by
knowing that an overloaded name must refer to an abstract state and not a
function. However, when all overloadings refer to function, we shouldn't
crash, but instead let the error to be diagnosed later
From: Piotr Trojanek
Code cleanup.
gcc/ada/ChangeLog:
* opt.ads (Ada_Version_Runtime): Now a constant, since it cannot
and should never be modified.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/opt.ads | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
From: Piotr Trojanek
By generating the type of Node_Field_Table with a "not null" qualifier
we check the null exclusion of its elements only once, at the object
declaration.
Tiny performance improvement for the debug builds (because in production
builds checks are disabled anyway); semantics is
From: Viljar Indus
In Ada 2005 even if the formal is using a tagged limited type
then the type should not be considered incomplete.
gcc/ada/ChangeLog:
* sem_ch6.adb (Analyze_Subprogram_Body_Helper):
Exchange_Limited_Views also in Ada 2005.
Tested on x86_64-pc-linux-gnu, committ
From: Eric Botcazou
It comes from a small oversight in the updated implementation for Ada 2022.
gcc/ada/ChangeLog:
PR ada/117956
* sem_util.adb (Is_Known_On_Entry): Be prepared for constants coming
from a renaming declaration.
Tested on x86_64-pc-linux-gnu, committed on
From: Eric Botcazou
This prevents a temporary from being created on the primary stack to hold
the result of the function calls before it is copied to the object being
elaborated in the nonlimited by-reference case.
That's already not done in the nonlimited non-by-reference case and there is
no r
From: Alexandre Oliva
gnat-llvm doesn't support C++ imports, so arrange for the GNAT.CPP*
units to be omitted from gnat-llvm builds.
Drop G++ exception interoperability support from raise-gcc.c, so as to
not require the GNAT.CPP* units that define some of the required
symbols.
Co-Authored-By: O
From: Eric Botcazou
When detecting calls to subprograms specified for aspects of a type, the
entity denoted by the aspects must go through Ultimate_Alias, since that
of the name of the calls did the same.
gcc/ada/ChangeLog:
* exp_ch6.adb (Expand_Call_Helper): Call Ultimate_Alias for the
From: Eric Botcazou
This makes the compiler generate cleanup code to deallocate the memory when
the evaluation of the expression of an allocator raises an exception, if the
expression is a call to a function that may raise, i.e. is not declared with
the No_Raise aspect/pragma. This can also be d
From: Bob Duff
gcc/ada/ChangeLog:
* libgnat/s-imagef.adb (Set_Image_Integer):
Change "RM A.3.10" to be "RM A.10.9".
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/libgnat/s-imagef.adb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/ada/
From: Alexandre Oliva
The initial C++ base-type exception interoperation support change
brought all of GNAT.CPP* along with raise-gcc, because of
[__gnat_]Convert_Caught_Object. Move that private but pragma-exported
function to GNAT.CPP.Std.Type_Info, so that it can rely on the C++
virtual/dispa
From: Bob Duff
In Gen_IL, detect cases where fields could be inherited from
an abstract type instead of being defined in each of two or more
descendants of that type. Raise Illegal when that is the case,
except in specific cases called out as exceptions to this rule.
For every such case, either
From: Eric Botcazou
This moves a few declarations around and tweaks a few comments.
gcc/ada/ChangeLog:
* exp_aggr.adb (Case_Table_Type): Fix reference in comment.
(In_Place_Assign_OK): Move declaration around.
(Is_Build_In_Place_Aggregate_Return): Likewise and adjust.
From: Bob Duff
Documentation updated.
gcc/ada/ChangeLog:
* sinfo.ads (Shift_Count_OK): Update comments.
(Is_Power_Of_2_For_Shift): Likewise.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/sinfo.ads | 34 --
1 file changed, 16 i
From: Javier Miranda
The compiler crashes analyzing a prefix notation call when its
prefix is an access to a class-wide object, an actual parameter
is missing, and the sources are compiled with language extensions
(-gnatX) and full errors (-gnatf).
gcc/ada/ChangeLog:
* sem_ch4.adb (Try_
From: Viljar Indus
A Rule object in the SARIF report does not have a level
attribute. Result objects are the elements in the SARIF
reprot that have a level attribute that ultimately determines
the level of each diagnostic object.
Rules can have a defaultConfiguration attribute which has a level
From: Javier Miranda
Complete previous patch; required to avoid regressions in GNATProve.
gcc/ada/ChangeLog:
* sem_ch6.adb (Analyze_Expression_Function): Set the parent of
the new node to be the parent of the original to get the proper
context, which is needed for comple
From: Tonu Naks
gcc/ada/ChangeLog:
* adaint.c (__gnat_locate_exec_on_path): modify function signature
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/adaint.c | 7 ++-
1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
This ICE was fixed by ensuring that the lambdas had
LAMBDA_EXPR_EXTRA_SCOPE properly set.
PR c++/116568
gcc/testsuite/ChangeLog:
* g++.dg/modules/lambda-8.h: New test.
* g++.dg/modules/lambda-8_a.H: New test.
* g++.dg/modules/lambda-8_b.C: New test.
Signed-off-by
Hi all,
attached patch has been rebased to latest trunk. Just pinging!
Regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
- Andre
On Fri, 13 Dec 2024 12:10:58 +0100
Andre Vehreschild wrote:
> Hi all,
>
> attached patch fixes deep-copying (or rather its former absence) for
> allocatabl
> On Jan 4, 2025, at 12:58, Jeff Law wrote:
>
>
>
> On 1/3/25 10:30 AM, Qing Zhao wrote:
>>> On Jan 3, 2025, at 11:41, Richard Biener wrote:
>>>
>>>
>>>
Am 03.01.2025 um 16:22 schrieb Jeff Law :
So this is an implementation of an idea I had a few years back and
prot
On 1/6/25 6:01 AM, Stafford Horne wrote:
In the OpenRISC build we get the following warning:
ld: warning: __modsi3_s.o: missing .note.GNU-stack section implies
executable stack
ld: NOTE: This behaviour is deprecated and will be removed in a future
version of the linker
Fix this b
Happy new year! Please consider the following patch.
Bootstrapped and regression tested on x86_64.
c: Restore warning for incomplete structures declared in parameter list
[PR117866]
In C23 mode the warning about declaring structures and union in
parameter lists was removed, b
On 1/4/25 11:01 AM, Dimitar Dimitrov wrote:
Add new effective target check for either ILP32E or ILP64E ABI variants.
Initial implementation only checks for RV32E or RV64E ISA, which in turn
implies that ILP32E/ILP64E ABI is used. The RV32I+ILP32E and
RV64I+ILP64E combinations are not yet cau
On Mon, Jan 06, 2025 at 11:01:18AM -0500, Siddhesh Poyarekar wrote:
> Ping!
>
> On 2024-12-19 08:16, Siddhesh Poyarekar wrote:
> > Denormal behaviour is well defined for IEEE128 long doubles, so don't
> > XFAIL some gfortran tests on ppc64le when configured with the IEEE128
> > long double ABI.
>
On Mon, Jan 06, 2025 at 07:37:56AM -0700, Jeff Law wrote:
>
>
> On 1/6/25 6:01 AM, Stafford Horne wrote:
> > In the OpenRISC build we get the following warning:
> >
> > ld: warning: __modsi3_s.o: missing .note.GNU-stack section implies
> > executable stack
> > ld: NOTE: This behaviour
Hi all,
during looking for something completely different, I figured, that gcc does not
use std::set internally, but its implementation of hash_set. I therefore
adapted the patch to use it. Nothing more changed.
Still regtests ok on x86_64-pc-linux-gnu / F41. Ok for mainline?
Regards,
An
On 1/6/25 7:11 AM, Qing Zhao wrote:
Given it doesn't cause user visible UB, we could insert the trap *before* the
UB inducing statement. That would then make the statement unreachable and it'd
get removed avoiding the false positive diagnostic.
Yes, that’s a good idea.
However, in order
This is a followup to
ed49709acda OpenMP: C++ front-end support for dispatch + adjust_args.
The call to cp_parser_omp_dispatch only belongs in cp_parser_omp_construct. In
cp_parser_pragma, handle PRAGMA_OMP_DISPATCH by calling cp_parser_omp_construct.
gcc/cp/ChangeLog:
* parser.cc (cp_pa
Apologies, I forgot to add the testcase. Please find attached an updated
patch.
On 06/01/2025 17:12, Paul-Antoine Arras wrote:
This is a followup to
084ea8ad584 OpenMP: middle-end support for dispatch + adjust_args.
This patch fixes a bug that caused arguments in an OpenMP dispatch call to be
On 1/6/25 9:01 AM, Richard Biener wrote:
Note unrolling doesn't introduce UB - it makes conditional UB
"obvious".
That's fair and it's how I often view these kinds of things when they
pop out via jump threading.
So unless the condition guarding the UB unrolling exposes is visibly
false
> On Jan 6, 2025, at 11:01, Richard Biener wrote:
>
> On Mon, Jan 6, 2025 at 3:43 PM Qing Zhao wrote:
>>
>>
>>
>>> On Jan 6, 2025, at 09:21, Jeff Law wrote:
>>>
>>>
>>>
>>> On 1/6/25 7:11 AM, Qing Zhao wrote:
>
> Given it doesn't cause user visible UB, we could insert the trap
> On 19 Dec 2024, at 14:10, Jennifer Schmitz wrote:
>
>
>
>> On 19 Dec 2024, at 11:14, Richard Sandiford
>> wrote:
>>
>> External email: Use caution opening links or attachments
>>
>>
>> Jennifer Schmitz writes:
>>> @@ -8834,22 +8834,7 @@ vectorizable_store (vec_info *vinfo,
>>>
On 1/5/25 9:40 AM, Maciej W. Rozycki wrote:
Add the same memory clobbers to `builtin_longjmp' for Alpha as with
commit 41439bf6a647 ("builtins.c (expand_builtin_longjmp): Added two
memory clobbers."), to prevent instructions that access memory via the
frame or stack pointer from being moved ac
On 1/5/25 9:40 AM, Maciej W. Rozycki wrote:
Add similar arrangements to `builtin_longjmp' for Alpha as with commit
71b144289c1c ("re PR middle-end/64242 (Longjmp expansion incorrect)")
and commit 511ed59d0b04 ("Fix PR64242 - Longjmp expansion incorrect"),
so as to restore the frame pointer las
> On Jan 6, 2025, at 09:21, Jeff Law wrote:
>
>
>
> On 1/6/25 7:11 AM, Qing Zhao wrote:
>>>
>>> Given it doesn't cause user visible UB, we could insert the trap *before*
>>> the UB inducing statement. That would then make the statement unreachable
>>> and it'd get removed avoiding the fal
On Mon, Jan 6, 2025 at 3:43 PM Qing Zhao wrote:
>
>
>
> > On Jan 6, 2025, at 09:21, Jeff Law wrote:
> >
> >
> >
> > On 1/6/25 7:11 AM, Qing Zhao wrote:
> >>>
> >>> Given it doesn't cause user visible UB, we could insert the trap *before*
> >>> the UB inducing statement. That would then make the
Ping!
On 2024-12-19 08:16, Siddhesh Poyarekar wrote:
Denormal behaviour is well defined for IEEE128 long doubles, so don't
XFAIL some gfortran tests on ppc64le when configured with the IEEE128
long double ABI.
gcc/testsuite/ChangeLog:
PR testsuite/118127
* gfortran.dg/default_f
This is a followup to
084ea8ad584 OpenMP: middle-end support for dispatch + adjust_args.
This patch fixes a bug that caused arguments in an OpenMP dispatch call to be
modified even when no variant substitution occurred.
gcc/ChangeLog:
* gimplify.cc (gimplify_call_expr): Create variable
"Maciej W. Rozycki" writes:
> The next change for Alpha will produce extra labels and branches in
> reload, which in turn requires basic blocks to be split at completion.
> We do this already for functions that can trap, so just extend the
> arrangement with a flag for the backend to use whenev
Add support to the Fortran parser for the new OpenMP syntax that allows a
comma after the directive name and between clauses of declare variant.
The C and C++ parsers already support this syntax so only a new test is added.
gcc/fortran/ChangeLog:
* openmp.cc (gfc_match_omp_declare_variant
Hi,
For later processors, the pipeline went deeper so the penalty for
untaken branch can be larger than before. Add a new parameter
br_mispredict_scale to describe the penalty, and adopt to
noce_max_ifcvt_seq_cost hook to allow longer sequence to be
converted with cmove.
This improves cpu2017 544
On Mon, 6 Jan 2025 at 16:59, Linus Torvalds
wrote:
>
> There is absolutely no gray area here. It was always buggy, and the
> alpha architecture was always completely and fundamentally
> mis-designed.
Note that I really do want to re-emphasize that while I think it's
kind of interesting that Macie
On Mon, Jan 06, 2025 at 10:49:31AM +0100, Jakub Jelinek wrote:
> On Mon, Jan 06, 2025 at 09:55:16AM +0100, Stefan Schulze Frielinghaus wrote:
> > For some targets uptr is mapped to unsigned int and size_t to unsigned
> > long and sizeof(int)==sizeof(long) holds. Still, these are distinct
> > types
For some targets uptr is mapped to unsigned int and size_t to unsigned
long and sizeof(int)==sizeof(long) holds. Still, these are distinct
types and type checking may fail. Therefore, replace uptr by
usize/SIZE_T wherever a size_t is expected.
Part of #116957
Cherry picked from LLVM commit 9a15
From: Vitaly Buka
Fix type in a few related Min() calls.
Follow up to #116957.
Co-authored-by: Stefan Schulze Frielinghaus
Cherry picked from LLVM commit 6dec33834d1fd89f16e271dde9607c1de9554144
(removed memprof part).
PR sanitizer/117725
libsanitizer/ChangeLog:
* asan/asan_intercep
These four cherry picks resolve PR117725, i.e., bootstrap is restored on
s390 -m31. Ok for mainline?
--
2.47.0
This is a follow-up to 6dec33834d1fd89f16e271dde9607c1de9554144 and
#116957 and #119114.
Cherry picked from LLVM commit 65a2eb0b1589590ae78cc1e5f05cd004b3b3bec5.
PR sanitizer/117725
libsanitizer/ChangeLog:
* sanitizer_common/sanitizer_common_interceptors.inc: Cherry
picked from L
For some targets uptr is mapped to unsigned int and size_t to unsigned
long and sizeof(int)==sizeof(long) holds. Still, these are distinct
types and type checking may fail. Therefore, replace uptr by
usize/SIZE_T wherever a size_t is expected.
Part of #116957
Cherry picked from LLVM commit 9a15
Since the sanitizer merge in commit r15-5164-gfa321004f3f628 of GCC
which entails LLVM commit 61a6439f35b6de28ff4aff4450d6fca970292fd5, GCCs
bootstrap is broken on s390 -m31. This is due to commit
ec68dc1ca4d967b599f1202855917d5ec9cae52f which introduces stricter type
checking which is why GCC boot
1 - 100 of 129 matches
Mail list logo