mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-16 21:58:21 +02:00
swr/rast: fix invalid sign masks in avx512 simdlib code
Should be 0x80000000 instead of 0x8000000.
Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
(cherry picked from commit 396c006d90)
This commit is contained in:
parent
23539c0fa1
commit
6aea554308
3 changed files with 3 additions and 3 deletions
|
|
@ -270,7 +270,7 @@ static SIMDINLINE Float SIMDCALL mask_i32gather_ps(Float old, float const* p, In
|
|||
{
|
||||
__mmask16 m = 0xf;
|
||||
m = _mm512_mask_test_epi32_mask(m, _mm512_castps_si512(__conv(mask)),
|
||||
_mm512_set1_epi32(0x8000000));
|
||||
_mm512_set1_epi32(0x80000000));
|
||||
return __conv(_mm512_mask_i32gather_ps(
|
||||
__conv(old),
|
||||
m,
|
||||
|
|
|
|||
|
|
@ -271,7 +271,7 @@ static SIMDINLINE Float SIMDCALL mask_i32gather_ps(Float old, float const* p, In
|
|||
{
|
||||
__mmask16 m = 0xff;
|
||||
m = _mm512_mask_test_epi32_mask(m, _mm512_castps_si512(__conv(mask)),
|
||||
_mm512_set1_epi32(0x8000000));
|
||||
_mm512_set1_epi32(0x80000000));
|
||||
return __conv(_mm512_mask_i32gather_ps(
|
||||
__conv(old),
|
||||
m,
|
||||
|
|
|
|||
|
|
@ -540,7 +540,7 @@ static SIMDINLINE uint32_t SIMDCALL movemask_pd(Double a)
|
|||
}
|
||||
static SIMDINLINE uint32_t SIMDCALL movemask_ps(Float a)
|
||||
{
|
||||
__mmask16 m = _mm512_test_epi32_mask(castps_si(a), set1_epi32(0x8000000));
|
||||
__mmask16 m = _mm512_test_epi32_mask(castps_si(a), set1_epi32(0x80000000));
|
||||
return static_cast<uint32_t>(m);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue