Re: [CRIS PATCH] PR rtl-optimization/126276: Restore build on cris-elf.
Jeffrey Law <[email protected]> Mon, 3 Aug 2026 12:36:21 -0600
| Newsgroups | gmane.comp.gcc.patches |
|---|---|
| Message-ID | <[email protected]> |
On 7/30/2026 9:17 AM, Roger Sayle wrote: > FYI, this has now been filed at PR target/126518. So poked at this for a while this morning. Ultimately landing on this newlib change as the culprit for the cris-elf regression). I don't know why (and I'll leave it for Hans-Peter to chase down), but it's unrelated to your work Roger: Author: Jan Dubiec <[email protected]> Date: Sun Jul 12 21:54:53 2026 +0200 H8: Add support for preinit/init/fini array This patch adds support for .preinit_array, .init_array, and .fini_array for the H8 family when binutils and GCC are configured with "--enable-initfini-array". The changes to init.c and fini.c ensure that linker-defined symbols referenced from C code are not affected by target-specific symbol naming conventions. For example, GCC for H8 prefixes external symbol names with an underscore, whereas GCC for ARM does not. The asm keyword is used to associate C identifiers with the corresponding linker-defined symbol names in a target-independent manner. The patch has been tested on H8 wher it enables support for the initialization and finalization arrays and on ARM in order to verify that the changes do not introduce any regressions. Signed-off-by: Jan Dubiec <[email protected]> newlib/libc/misc/fini.c | 6 ++++-- newlib/libc/misc/init.c | 12 ++++++++---- newlib/libc/sys/h8300hms/crt0.S | 6 ++++++ While the newlib patch says it's H8, it also touches those two generic files (fini.c/init.c) and somehow that's the trigger for the cris-elf failures: cris-sim: gcc: c-c++-common/initpri1-lto-static.c -Wc++-compat execution test cris-sim: gcc: c-c++-common/initpri1-lto.c -Wc++-compat execution test cris-sim: gcc: c-c++-common/initpri1-split-static.c -Wc++-compat execution test cris-sim: gcc: c-c++-common/initpri1-split.c -Wc++-compat execution test cris-sim: gcc: c-c++-common/initpri1-static.c -Wc++-compat execution test cris-sim: gcc: c-c++-common/initpri1.c -Wc++-compat execution test cris-sim: gcc: gcc.dg/constructor-1.c execution test cris-sim: gcc: gcc.dg/ipa/pr70306.c execution test I'm swamped with a personal item to address and won't be able to further debug. jeff