Bug 109741 - swr doesn't build on i386 - simdlib.hpp:594:37: error: static assertion failed: This path only meant for 64-bit code
Summary: swr doesn't build on i386 - simdlib.hpp:594:37: error: static assertion faile...
Status: RESOLVED WONTFIX
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/swr (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Alok Hota
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-02-22 09:01 UTC by Fabio Pedretti
Modified: 2019-02-28 09:09 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fabio Pedretti 2019-02-22 09:01:33 UTC
Full build log:
https://launchpadlibrarian.net/412340387/buildlog_ubuntu-cosmic-i386.mesa_19.1~git1902220944.338dac~oibaf~c_BUILDING.txt.gz

Error:
In file included from ../src/gallium/drivers/swr/rasterizer/common/simdintrin.h:28,
                 from ../src/gallium/drivers/swr/rasterizer/core/format_types.h:31,
                 from ../src/gallium/drivers/swr/rasterizer/core/format_traits.h:32,
                 from ../src/gallium/drivers/swr/rasterizer/core/multisample.h:30,
                 from ../src/gallium/drivers/swr/rasterizer/core/backend.h:33,
                 from src/gallium/drivers/swr/rasterizer/core/backends/gen_BackendPixelRate0.cpp:47:
../src/gallium/drivers/swr/rasterizer/common/simdlib.hpp: In member function ‘uint32_t SIMDVecHash<SIMD_T>::operator()(Integer<SIMD_T>) const’:
../src/gallium/drivers/swr/rasterizer/common/simdlib.hpp:594:37: 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");
                       ~~~~~~~~~~~~~~^~~~
../src/gallium/drivers/swr/rasterizer/common/simdlib.hpp:603:21: 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]);
                     ^~~~~~~~~~~~~
Comment 1 Alok Hota 2019-02-22 23:30:08 UTC
This is unlikely to be fixed in the future. Our intended use case is large-scale scientific visualization, which is rarely, if ever, run on 32-bit machines today. At the moment we are targeting 64-bit platforms.
Comment 2 Gert Wollny 2019-02-28 09:09:53 UTC
There is a patch for this: 
https://patchwork.freedesktop.org/patch/225706/


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.