Re: Glob to match bare-metal SuperH target triple in config.gcc seems wrong (sh*-superh-elf)?
John Paul Adrian Glaubitz <[email protected]> Tue, 14 Apr 2026 08:42:35 +0200
| Newsgroups | gmane.linux.debian.ports.superh,gmane.comp.gcc.devel |
|---|---|
| Message-ID | <227995e2a9846e9f07457ae7f7bdc55ad4690ee1.camel@physik.fu-berlin.de> |
Hi John, On Tue, 2026-04-14 at 02:38 +0000, John Scott wrote: > I noticed at https://forge.sourceware.org/gcc/gcc-mirror/src/branch/maste= r/gcc/config.gcc#L3399 that > a glob expression "sh*-superh-elf" is used, and it's apparently intended = to match embedded SuperH > targets. However, the use of the "superh" token in the target triple appe= ars to be serving as a > manufacturer name. This looks like it could be a mistake; for example, I = simply use the target tripl > "sh-elf" when building Debian's bare-metal toolchain, and so this clause = wouldn't take effect. It's > also weird to see SuperH used in the manufacturer field anyway (Hitachi a= nd Renesas would be more > fitting if this were intended). It actually makes sense since there used to be a company called "SuperH" ba= ck then, see: https://www.eetimes.com/hitachi-and-stmicro-form-superh-company/ > On the other hand, such as at lines 3429 and 3466 there, it seems like "s= h-superh-*" is intended to be > the same as "sh4-*", but only if there is no suffix on the CPU name. For = example, sh2-superh-elf > wouldn't get this "magic" treatment of being promoted to sh4. Sounds like just a minor convenience feature to default the SH target to sh= 4. > This is, at the very least, confusing, and if it's on purpose some in-lin= e commentary would be helpful. > Maybe there was a historical reason for this? Otherwise it would be fitti= ng if the matching expression > didn't include a manufacturer/vendor name because that is imprecise and d= oesn't make a lot of sense here. Is sh4-superh-elf actually a bare-metal target? Adrian --=20 .''`. John Paul Adrian Glaubitz : :' : Debian Developer `. `' Physicist `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913