swr driver failing mesa build on 32 bit
Submitted by n3rdopolis
Assigned to mes..@..op.org
Link to original bug (#106401)
Description
Hi
I am trying to rebuild mesa master on a 32 bit chroot. It looks like a recent change now it is trying to compile in something that is 64 bits.
I am getting this error,
CXX rasterizer/core/libswrAVX2_la-backend_clear.lo
CXX rasterizer/core/libswrAVX2_la-backend_sample.lo
In file included from ./rasterizer/common/simdintrin.h:28:0,
from ./rasterizer/core/format_types.h:31,
from ./rasterizer/core/format_traits.h:32,
from ./rasterizer/core/multisample.h:30,
from rasterizer/core/backend.h:33,
from rasterizer/core/backend.cpp:32:
./rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>
::operator()(Integer<SIMD_T>
) const’:
./rasterizer/common/simdlib.hpp:610:9: error: static assertion failed: This path only meant for 64-bit code
static_assert(sizeof(void*) == 8, "This path only meant for 64-bit code");
^~~~~~~~~~~~~
./rasterizer/common/simdlib.hpp:619:50: error: there are no arguments to ‘_mm_crc32_u64’ that depend on a template parameter, so a declaration of ‘_mm_crc32_u64’ must be available [-fpermissive]
crc32 = _mm_crc32_u64(crc32, pData[i]);
^
./rasterizer/common/simdlib.hpp:619:50: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
In file included from ./rasterizer/common/simdintrin.h:28:0,
from ./rasterizer/core/format_types.h:31,
from ./rasterizer/core/format_traits.h:32,
from ./rasterizer/core/multisample.h:30,
from ./rasterizer/core/backend.h:33,
from rasterizer/core/api.cpp:35:
./rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>
::operator()(Integer<SIMD_T>
) const’:
./rasterizer/common/simdlib.hpp:610:9: error: static assertion failed: This path only meant for 64-bit code
static_assert(sizeof(void*) == 8, "This path only meant for 64-bit code");
^~~~~~~~~~~~~
./rasterizer/common/simdlib.hpp:619:50: error: there are no arguments to ‘_mm_crc32_u64’ that depend on a template parameter, so a declaration of ‘_mm_crc32_u64’ must be available [-fpermissive]
crc32 = _mm_crc32_u64(crc32, pData[i]);
^
./rasterizer/common/simdlib.hpp:619:50: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
CXX rasterizer/core/libswrAVX2_la-backend_singlesample.lo
CXX rasterizer/core/libswrAVX2_la-binner.lo
Makefile:3101: recipe for target 'rasterizer/core/libswrAVX2_la-backend.lo' failed
make[5]: *** [rasterizer/core/libswrAVX2_la-backend.lo] Error 1
make[5]: *** Waiting for unfinished jobs....
Makefile:3094: recipe for target 'rasterizer/core/libswrAVX2_la-api.lo' failed
make[5]: *** [rasterizer/core/libswrAVX2_la-api.lo] Error 1
In file included from ./rasterizer/common/simdintrin.h:28:0,
from ./rasterizer/core/format_types.h:31,
from ./rasterizer/core/format_traits.h:32,
from ./rasterizer/core/multisample.h:30,
from rasterizer/core/backend.h:33,
from rasterizer/core/backend_sample.cpp:32:
./rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>
::operator()(Integer<SIMD_T>
) const’:
./rasterizer/common/simdlib.hpp:610:9: error: static assertion failed: This path only meant for 64-bit code
static_assert(sizeof(void*) == 8, "This path only meant for 64-bit code");
^~~~~~~~~~~~~
./rasterizer/common/simdlib.hpp:619:50: error: there are no arguments to ‘_mm_crc32_u64’ that depend on a template parameter, so a declaration of ‘_mm_crc32_u64’ must be available [-fpermissive]
crc32 = _mm_crc32_u64(crc32, pData[i]);
^
./rasterizer/common/simdlib.hpp:619:50: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
In file included from ./rasterizer/common/simdintrin.h:28:0,
from rasterizer/core/conservativeRast.h:28,
from rasterizer/core/binner.h:29,
from rasterizer/core/binner.cpp:29:
./rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>
::operator()(Integer<SIMD_T>
) const’:
./rasterizer/common/simdlib.hpp:610:9: error: static assertion failed: This path only meant for 64-bit code
static_assert(sizeof(void*) == 8, "This path only meant for 64-bit code");
^~~~~~~~~~~~~
./rasterizer/common/simdlib.hpp:619:50: error: there are no arguments to ‘_mm_crc32_u64’ that depend on a template parameter, so a declaration of ‘_mm_crc32_u64’ must be available [-fpermissive]
crc32 = _mm_crc32_u64(crc32, pData[i]);
^
./rasterizer/common/simdlib.hpp:619:50: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
In file included from ./rasterizer/common/simdintrin.h:28:0,
from ./rasterizer/core/format_types.h:31,
from ./rasterizer/core/format_traits.h:32,
from ./rasterizer/core/multisample.h:30,
from rasterizer/core/backend.h:33,
from rasterizer/core/backend_clear.cpp:32:
./rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>
::operator()(Integer<SIMD_T>
) const’:
./rasterizer/common/simdlib.hpp:610:9: error: static assertion failed: This path only meant for 64-bit code
static_assert(sizeof(void*) == 8, "This path only meant for 64-bit code");
^~~~~~~~~~~~~
./rasterizer/common/simdlib.hpp:619:50: error: there are no arguments to ‘_mm_crc32_u64’ that depend on a template parameter, so a declaration of ‘_mm_crc32_u64’ must be available [-fpermissive]
crc32 = _mm_crc32_u64(crc32, pData[i]);
^
./rasterizer/common/simdlib.hpp:619:50: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
In file included from ./rasterizer/common/simdintrin.h:28:0,
from ./rasterizer/core/format_types.h:31,
from ./rasterizer/core/format_traits.h:32,
from ./rasterizer/core/multisample.h:30,
from rasterizer/core/backend.h:33,
from rasterizer/core/backend_singlesample.cpp:32:
./rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>
::operator()(Integer<SIMD_T>
) const’:
./rasterizer/common/simdlib.hpp:610:9: error: static assertion failed: This path only meant for 64-bit code
static_assert(sizeof(void*) == 8, "This path only meant for 64-bit code");
^~~~~~~~~~~~~
./rasterizer/common/simdlib.hpp:619:50: error: there are no arguments to ‘_mm_crc32_u64’ that depend on a template parameter, so a declaration of ‘_mm_crc32_u64’ must be available [-fpermissive]
crc32 = _mm_crc32_u64(crc32, pData[i]);
^
./rasterizer/common/simdlib.hpp:619:50: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
Makefile:3108: recipe for target 'rasterizer/core/libswrAVX2_la-backend_clear.lo' failed
make[5]: *** [rasterizer/core/libswrAVX2_la-backend_clear.lo] Error 1
Thanks
Version: git