Hi! On 2023-04-29T09:06:54-0600, Jeff Law via Gcc-patches <gcc-patches@gcc.gnu.org> wrote: > On 4/29/23 07:37, Roger Sayle wrote: >> >> Segher Boessenkool wrote: >>> I send this patch now so that people can start testing. >>> >>> --- a/gcc/config/nvptx/nvptx.cc >>> +++ b/gcc/config/nvptx/nvptx.cc >>> @@ -7601,9 +7601,6 @@ nvptx_asm_output_def_from_decls (FILE *stream, tree >>> name, tree value) >>> #undef TARGET_ATTRIBUTE_TABLE >>> #define TARGET_ATTRIBUTE_TABLE nvptx_attribute_table >>> >>> -#undef TARGET_LRA_P >>> -#define TARGET_LRA_P hook_bool_void_false >>> - >>> #undef TARGET_LEGITIMATE_ADDRESS_P >>> #define TARGET_LEGITIMATE_ADDRESS_P nvptx_legitimate_address_p >> >> I've tested Segher's patch on nvptx-none with make and make -k check and >> can confirm there are no new regressions.
Confirmed. Also, no change in nvptx target libraries built. As expected. >> Nvptx is unique in that it >> doesn't >> use register allocation, i.e. GCC's only TARGET_NO_REGISTER_ALLOCATION >> target, >> so it's a little odd that it specifies which register allocator it doesn't >> use. >> >> I hope this helps, > > It does. Consider a patch which flips the nvptx port to LRA as > pre-approved. Pushed to master branch commit f7e3123638712773e8c01e17aae9dc64d9342016 "Flip the nvptx port to LRA", see attached. Grüße Thomas ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
>From f7e3123638712773e8c01e17aae9dc64d9342016 Mon Sep 17 00:00:00 2001 From: Segher Boessenkool <seg...@kernel.crashing.org> Date: Sun, 23 Apr 2023 16:47:52 +0000 Subject: [PATCH] Flip the nvptx port to LRA ... understanding that "turn on LRA" is an exaggeration here, given that nvptx isn't actually doing register allocation ('TARGET_NO_REGISTER_ALLOCATION'). gcc/ * config/nvptx/nvptx.cc (TARGET_LRA_P): Remove. Co-authored-by: Thomas Schwinge <tho...@codesourcery.com> --- gcc/config/nvptx/nvptx.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/gcc/config/nvptx/nvptx.cc b/gcc/config/nvptx/nvptx.cc index e3b0304d5376..16ed78030d73 100644 --- a/gcc/config/nvptx/nvptx.cc +++ b/gcc/config/nvptx/nvptx.cc @@ -7633,9 +7633,6 @@ nvptx_asm_output_def_from_decls (FILE *stream, tree name, tree value) #undef TARGET_ATTRIBUTE_TABLE #define TARGET_ATTRIBUTE_TABLE nvptx_attribute_table -#undef TARGET_LRA_P -#define TARGET_LRA_P hook_bool_void_false - #undef TARGET_LEGITIMATE_ADDRESS_P #define TARGET_LEGITIMATE_ADDRESS_P nvptx_legitimate_address_p -- 2.39.2