Dylan Baker <dy...@pnwbakers.com> writes: > --- > meson.build | 30 ++++++++++++++++++++++++++---- > meson_options.txt | 7 +++++++ > 2 files changed, 33 insertions(+), 4 deletions(-) > > diff --git a/meson.build b/meson.build > index 0171328bcd7..f6fe141056a 100644 > --- a/meson.build > +++ b/meson.build > @@ -601,13 +601,33 @@ if with_gallium_st_nine > endif > endif > > +if get_option('altivec') != 'false' > + if host_machine.cpu_family() == 'ppc64le' > + if cc.get_id() == 'gcc' and cc.version().version_compare('< 4.8') > + error('Altivec is not supported with gcc version < 4.8.') > + endif > + if cc.compiles(''' > + #include <altivec.h> > + int main() { > + vector unsigned char r; > + vector unsigned int v = vec_splat_u32 (1); > + r = __builtin_vec_vgbbd ((vector unsigned char) v); > + return 0; > + }''', > + name : 'POWER8 intrinsics') > + pre_args += ['-D_ARCH_PWR8', '-mpower8-vector'] > + elif get_option('altivec') == 'true' > + error('Altivec support required but not found.') > + endif > + endif > +endif > +
The autotools build seems to do this test with -mpower8-vector in the cflags, and that seems like it would probably be necessary. > diff --git a/meson_options.txt b/meson_options.txt > index 2c1f514debe..5976e14fc71 100644 > --- a/meson_options.txt > +++ b/meson_options.txt > @@ -298,3 +298,10 @@ option( > choices : ['freedreno', 'glsl', 'intel', 'nir', 'nouveau', 'all'], > description : 'List of tools to build.', > ) > +option( > + 'altivec', > + type : 'combo', > + value : 'auto', > + choices : ['auto', 'true', 'false'], > + description : 'Enable altivec optimizations if supported by host machine.', > +) > -- This should probably be power8 rather than altivec, since altivec predates power8 by a long time.
signature.asc
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev