Bug 109023

Summary: error: inlining failed in call to always_inline ‘__m512 _mm512_and_ps(__m512, __m512)’: target specific option mismatch
Product: Mesa Reporter: Vinson Lee <vlee>
Component: OtherAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact: mesa-dev
Severity: normal    
Priority: medium CC: baker.dylan.c
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 109323    

Description Vinson Lee 2018-12-12 05:31:32 UTC
Build error with meson.

In file included from /usr/lib/gcc/x86_64-redhat-linux/8/include/immintrin.h:57,
                 from /usr/lib/gcc/x86_64-redhat-linux/8/include/x86intrin.h:48,
                 from ../src/gallium/drivers/swr/rasterizer/common/os.h:99,
                 from ../src/gallium/drivers/swr/rasterizer/core/clip.cpp:31:
/usr/lib/gcc/x86_64-redhat-linux/8/include/avx512dqintrin.h: In static member function ‘static SIMDImpl::SIMD512Impl::Float SIMDImpl::SIMD512Impl::AVX512Impl::and_ps(SIMDImpl::SIMD512Impl::Float, SIMDImpl::SIMD512Impl::Float)’:
/usr/lib/gcc/x86_64-redhat-linux/8/include/avx512dqintrin.h:564:1: error: inlining failed in call to always_inline ‘__m512 _mm512_and_ps(__m512, __m512)’: target specific option mismatch
 _mm512_and_ps (__m512 __A, __m512 __B)
 ^~~~~~~~~~~~~
In file included from ../src/gallium/drivers/swr/rasterizer/common/simdlib.hpp:172,
                 from ../src/gallium/drivers/swr/rasterizer/common/simdintrin.h:28,
                 from ../src/gallium/drivers/swr/rasterizer/core/clip.h:30,
                 from ../src/gallium/drivers/swr/rasterizer/core/clip.cpp:32:
../src/gallium/drivers/swr/rasterizer/common/simdlib_512_avx512_core.inl:38:88: note: called from here
     static SIMDINLINE Float SIMDCALL op(Float a, Float b) { return _mm512_##intrin(a, b); }
                                                                                        ^
../src/gallium/drivers/swr/rasterizer/common/simdlib_512_avx512_core.inl:39:28: note: in expansion of macro ‘SIMD_WRAPPER_2_’
 #define SIMD_WRAPPER_2(op) SIMD_WRAPPER_2_(op, op)
                            ^~~~~~~~~~~~~~~
../src/gallium/drivers/swr/rasterizer/common/simdlib_512_avx512_core.inl:122:1: note: in expansion of macro ‘SIMD_WRAPPER_2’
 SIMD_WRAPPER_2(and_ps);    // return a & b       (float treated as int)
 ^~~~~~~~~~~~~~
Comment 1 Vinson Lee 2018-12-13 19:17:14 UTC
Build command to reproduce.

meson builddir -Dgallium-drivers=swr -Dswr-arches=avx,avx2,knl,skx
ninja -C builddir

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.