Re: [PATCH] RISC-V: Support CPUs in -march.

2025-05-31 Thread Fangrui Song
On 2025-05-21, Kito Cheng wrote: On Wed, May 21, 2025 at 10:19 PM Robin Dapp wrote: > I could imagine that is a simpler way to set the march since the march > string becomes terribly long - we have an arch string more than 300 > char...so I support this, although I think this should be discu

Re: [PATCH RFA (diagnostic)] c++: modules and #pragma diagnostic

2025-05-31 Thread Jason Merrill
On 5/29/25 2:57 PM, David Malcolm wrote: On Thu, 2025-05-29 at 09:11 -0400, Jason Merrill wrote: On 5/27/25 5:12 PM, Jason Merrill wrote: On 5/27/25 4:47 PM, Jason Merrill wrote: On 5/27/25 1:33 PM, David Malcolm wrote: On Fri, 2025-05-23 at 16:58 -0400, Jason Merrill wrote: On 4/14/25 9:57

[PATCH] forwprop: Manually rename the virtual mem op for complex and vector loads prop

2025-05-31 Thread Andrew Pinski
There are two places which forwprop replaces an original load to a few different loads. Both can set the vuse manually instead of relying on update_ssa. One is doing a complex load followed by REAL/IMAG_PART only And the other is very similar but for vector loads followed by BIT_FIELD_REF. Since

Re: [PATCH 3/3] xtensa: Remove include of reload.h

2025-05-31 Thread Max Filippov
On Mon, May 26, 2025 at 11:59 PM Takayuki 'January June' Suwa wrote: > > As one of the last steps in removing old reload. > > gcc/ChangeLog: > > * gcc/config/xtensa/xtensa.cc > Remove include of reload.h. > --- > gcc/config/xtensa/xtensa.cc | 1 - > 1 file changed, 1 deletion(-)

Re: [PATCH v1] RISC-V: Fix line too long format issue for autovect.md [NFC]

2025-05-31 Thread Robin Dapp
Inspired by the avg_ceil patches, notice there were even more lines too long from autovec.md. So fix that format issues. OK. -- Regards Robin

[PATCH] c++, coroutines: CWG2563 promise lifetime extension [PR115908].

2025-05-31 Thread Iain Sandoe
Tested on x86_64-darwin, confirmed that the sanitizer test in PR 118074 is fixed but we already have a suitable testcase in PR 115908 which has now been moved to the 'torture' sub-directory to get wider code-gen coverage. OK for trunk? thanks Iain --- 8< --- This implements the final piece of the

[PATCH] c++, coroutines: Some cleanups in build_actor_fn.

2025-05-31 Thread Iain Sandoe
Some small cleanups found while working on other changes, tested on x86_64-darwin, OK for trunk? thanks Iain --- 8< --- We were incorrectly guarding all the frame cleanups on the basis of frame_needs_free (which is always set for the present code-gen since we have no allocation elision). The net

[PATCH] aarch64:sve: Use create_tmp_reg_or_ssa_name instead of create_tmp_var in the folder

2025-05-31 Thread Andrew Pinski
Currently gimple_folder::convert_and_fold calls create_tmp_var; that means while in ssa form, the pass which calls fold_stmt will always have to update the ssa (via TODO_update_ssa or otherwise). This seems not very useful since we know that this will always be a ssa name, using create_tmp_reg_o

[PATCH, libgfortran] PR119856 Part 2 Fix error handling for missing commas in format strings

2025-05-31 Thread Jerry D
Hi all, The attached patch fixes a latent issue where we were saving a parsed and checked format string that had a missing comma. This resulted in the correct error on the first use of the string, but a missed error on subsequent uses of the string. New test case provided. Regression tested

Re: [PATCH] DCE: Only set TODO_update_ssa when cfg has changed

2025-05-31 Thread Richard Biener
> Am 31.05.2025 um 18:29 schrieb Andrew Pinski : > > SSA form is kept up to date except for VOPs when CFG was removed > so only set update ssa TODO if the CFG has changed. This is still > sets the TODO in more cases than it is needed but it reduces enough > to make difference. > > Bootstrappd

[PATCH] DCE: Only set TODO_update_ssa when cfg has changed

2025-05-31 Thread Andrew Pinski
SSA form is kept up to date except for VOPs when CFG was removed so only set update ssa TODO if the CFG has changed. This is still sets the TODO in more cases than it is needed but it reduces enough to make difference. Bootstrappd and tested on x86_64-linux-gnu. gcc/ChangeLog: * tree-ssa

[PATCH v3] c: fix ICE related to tagged types with attributes in diagnostics [PR120380]

2025-05-31 Thread Martin Uecker
I had accidentally swapped dg-warning and dg-error in the test for the last version. I will commit this one if it passes checks. Martin c: fix ICE related to tagged types with attributes in diagnostics [PR120380] get_aka_type will create a new type for diagnostics, but for tagge

Re: [PATCH] CCP: Manually rename the virtual mem op when inserting clobbers

2025-05-31 Thread Richard Biener
On Sat, May 31, 2025 at 11:07 AM Andrew Pinski wrote: > > Right now the only place where CCP needs to have the virtual op renamed is > after inserting clobbers which come right before __builtin_stack_restore. > So let's manually do the correct thing so we can remove the TODO_update_ssa > todo. O

Re: [PATCH] Have TODO_verify_* not set by any pass

2025-05-31 Thread Richard Biener
On Sat, May 31, 2025 at 4:17 AM Andrew Pinski wrote: > > This is a follow up to the patch set starting at > https://gcc.gnu.org/pipermail/gcc-patches/2014-April/386650.html. > > Currently TODO_verify_{il,all} is set by a few passes as TODOs afterwards but > we don't need to do that any more. Thos

[PATCH] CCP: Manually rename the virtual mem op when inserting clobbers

2025-05-31 Thread Andrew Pinski
Right now the only place where CCP needs to have the virtual op renamed is after inserting clobbers which come right before __builtin_stack_restore. So let's manually do the correct thing so we can remove the TODO_update_ssa todo. gcc/ChangeLog: * tree-ssa-ccp.cc (insert_clobber_before_s

[PATCH] Also check function symbol for function declaration

2025-05-31 Thread H.J. Lu
Since not all CALL instructions in RTL passes have a REG_CALL_DECL note, update get_call_fndecl to also check function symbol for function declaration so that it can be used on CALL instructions like (call_insn 39 38 61 7 (set (reg:SI 0 ax) (call (mem:QI (symbol_ref:DI ("foo") [flags 0x3]