Teach fasthash_accum to use platform endianness for bytewise loads
commit0c25fee35903ef08af6d6b0c0fdb90fc01e37fa1
authorJohn Naylor <john.naylor@postgresql.org>
Sat, 6 Apr 2024 09:59:28 +0000 (6 16:59 +0700)
committerJohn Naylor <john.naylor@postgresql.org>
Sat, 6 Apr 2024 10:14:28 +0000 (6 17:14 +0700)
tree66735d44117e08c0cf07bcb4a2c6c798caff4adf
parent98f320eb2ef05072b6fe67fcdcdc26c226e6cea4
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
src/include/common/hashfn_unstable.h