Fix compilation on RHEL 7 ppc64le (gcc 4.8)

Fixes GH-10077
Closes GH-10078
This commit is contained in:
Mattias Ellert 2021-11-30 23:19:38 +01:00 committed by Ilija Tovilo
parent 8a221e2763
commit a83923044c
No known key found for this signature in database
GPG Key ID: A4F5D403F118200A
2 changed files with 4 additions and 3 deletions

1
NEWS
View File

@ -211,6 +211,7 @@ PHP NEWS
- Hash:
. Fixed bug #81738: buffer overflow in hash_update() on long parameter.
(CVE-2022-37454) (nicky at mouha dot be)
. Fixed bug GH-10077: Fix compilation on RHEL 7 ppc64le. (Mattias Ellert)
- Intl:
. Update all grandfathered language tags with preferred values

View File

@ -4129,7 +4129,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
const void* XXH_RESTRICT secret)
{
/* presumed aligned */
unsigned long long* const xacc = (unsigned long long*) acc;
unsigned int* const xacc = (unsigned int*) acc;
xxh_u64x2 const* const xinput = (xxh_u64x2 const*) input; /* no alignment restriction */
xxh_u64x2 const* const xsecret = (xxh_u64x2 const*) secret; /* no alignment restriction */
xxh_u64x2 const v32 = { 32, 32 };
@ -4145,7 +4145,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
/* product = ((xxh_u64x2)data_key & 0xFFFFFFFF) * ((xxh_u64x2)shuffled & 0xFFFFFFFF); */
xxh_u64x2 const product = XXH_vec_mulo((xxh_u32x4)data_key, shuffled);
/* acc_vec = xacc[i]; */
xxh_u64x2 acc_vec = vec_xl(0, xacc + 2 * i);
xxh_u64x2 acc_vec = (xxh_u64x2)vec_xl(0, xacc + 4 * i);
acc_vec += product;
/* swap high and low halves */
@ -4155,7 +4155,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
acc_vec += vec_xxpermdi(data_vec, data_vec, 2);
#endif
/* xacc[i] = acc_vec; */
vec_xst(acc_vec, 0, xacc + 2 * i);
vec_xst((xxh_u32x4)acc_vec, 0, xacc + 4 * i);
}
}