@@ -4129,7 +4129,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
4129
4129
const void * XXH_RESTRICT secret)
4130
4130
{
4131
4131
/* presumed aligned */
4132
- unsigned long long * const xacc = (unsigned long long *) acc;
4132
+ unsigned int * const xacc = (unsigned int *) acc;
4133
4133
xxh_u64x2 const * const xinput = (xxh_u64x2 const *) input; /* no alignment restriction */
4134
4134
xxh_u64x2 const * const xsecret = (xxh_u64x2 const *) secret; /* no alignment restriction */
4135
4135
xxh_u64x2 const v32 = { 32 , 32 };
@@ -4145,7 +4145,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
4145
4145
/* product = ((xxh_u64x2)data_key & 0xFFFFFFFF) * ((xxh_u64x2)shuffled & 0xFFFFFFFF); */
4146
4146
xxh_u64x2 const product = XXH_vec_mulo ((xxh_u32x4)data_key, shuffled);
4147
4147
/* acc_vec = xacc[i]; */
4148
- xxh_u64x2 acc_vec = vec_xl (0 , xacc + 2 * i);
4148
+ xxh_u64x2 acc_vec = (xxh_u64x2) vec_xl (0 , xacc + 4 * i);
4149
4149
acc_vec += product;
4150
4150
4151
4151
/* swap high and low halves */
@@ -4155,7 +4155,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
4155
4155
acc_vec += vec_xxpermdi (data_vec, data_vec, 2 );
4156
4156
#endif
4157
4157
/* xacc[i] = acc_vec; */
4158
- vec_xst (acc_vec, 0 , xacc + 2 * i);
4158
+ vec_xst ((xxh_u32x4) acc_vec, 0 , xacc + 4 * i);
4159
4159
}
4160
4160
}
4161
4161
0 commit comments