[x264-devel] PPC -- vec_splats doesn't exist on Power4 PPC/Apple
Luca Barbato
lu_zero at gentoo.org
Sun Mar 31 19:50:32 CEST 2019
On 31/03/2019 04:26, Ken Cunningham wrote:
> Hi all,
>
> I'm one of the port maintainers over at MacPorts.
>
> Although no-one would try to claim that Apple's old PPC machines are a major market segment any longer, over at MacPorts I try to keep these systems as relevant as I can, and it seems to still have a reasonable following.
>
> I'm running into some troubles with the recent move in x264 to vec_splats(), which errors out on these systems.
>
> I'm not a PPC assembly expert, but I have googled around enough to find out that this function appears to be Power7+ only. It does exist in newer versions of gcc, but when I try to enable it with -maltivec or my other usual tricks, I run into issues with unrecognized assembly mnemonics.
>
> For the moment, I've patched back common/ppc/quant.c to the older, non-vec_splats() version, but I see that there are more files moving in this direction.
>
> Can anyone think of an idea how I might get around this ? Perhaps there is some kind of #define that I might use to emulate this function using the other numerous vec_splat* functions that do seem to exist on PPC Darwin?
>
Replying also on the ml:
Both clang and gcc seem to not guard that intrinsic and clang has it
mapped to its portable simd.
Could you please check that passing the -march/-mcpu for g4 or g5
produces valid code?
lu
More information about the x264-devel
mailing list