Teach fasthash_accum to use platform endianness for bytewise loads

John Naylor <john.naylor@postgresql.org>

Commit: 0c25fee35903ef08af6d6b0c0fdb90fc01e37fa1
Author: John Naylor <john.naylor@postgresql.org>
Date: 2024-04-06T10:14:28Z
Releases: 17.0
Teach fasthash_accum to use platform endianness for bytewise loads

This function previously used a mix of word-wise loads and bytewise
loads. The bytewise loads happened to be little-endian regardless of
platform. This in itself is not a problem. However, a future commit
will require the same result whether A) the input is loaded as a
word with the relevent bytes masked-off, or B) the input is loaded
one byte at a time.

While at it, improve debuggability of the internal hash state.

Discussion: https://postgr.es/m/CANWCAZZpuV1mES1mtSpAq8tWJewbrv4gEz6R_k4gzNG8GZ5gag%40mail.gmail.com

Files

PathChange+/−
src/include/common/hashfn_unstable.h modified +39 −5

Discussion