On Fri, Oct 28, 2022 at 10:07:41PM +0200, Jan-Benedict Glaw wrote:
> On Fri, 2022-10-28 14:19:10 -0500, Segher Boessenkool
> <[email protected]> wrote:
> > Why do you use powerpc64-linux_altivec? This things (normally spelled
> > with a dash, not and underscore, btw) was made for 32-bit targets. It
> > never has done anything useful for 64-bit targets, afaik?
>
> Because it's listed in ./contrib/config-list.mk:
>
> /var/cache/git/gcc [master] # make -f contrib/config-list.mk show | tr ' '
> $'\n' | grep altivec
> powerpc-eabisimaltivec
> powerpc-eabialtivec
> powerpc64-linux_altivec
Huh. Okay, that is a bug. Has that target ever worked (or
alternatively, has it ever existed at all, other than it is recognised
by config.gcc by not very tight REs)?
> It seems to be on the target list since the very beginning, when
> config-list.mk was created by Joern Rennecke. So somebody cared about
> this configuration I guess?
No idea. rs6000_altivec_abi is always forced on on any linux
configuration that has VMX or VSX or 64 bit enabled:
===
/* The AltiVec ABI is the default for PowerPC-64 GNU/Linux. For
PowerPC-32 GNU/Linux, -maltivec implies the AltiVec ABI. It can
be explicitly overridden in either case. */
if (TARGET_ELF)
{
if (!OPTION_SET_P (rs6000_altivec_abi)
&& (TARGET_64BIT || TARGET_ALTIVEC || TARGET_VSX))
{
if (main_target_opt != NULL &&
!main_target_opt->x_rs6000_altivec_abi)
error ("target attribute or pragma changes AltiVec ABI");
else
rs6000_altivec_abi = 1;
}
}
===
> If this configuration isn't ment to be used, we'd just drop it from
> the list I guess.
Yeah, the config makes no sense.
Thanks,
Segher