Demacro sha256.
authorjsing <jsing@openbsd.org>
Fri, 11 Aug 2023 15:25:36 +0000 (15:25 +0000)
committerjsing <jsing@openbsd.org>
Fri, 11 Aug 2023 15:25:36 +0000 (15:25 +0000)
commitd83e85e7ba16194bbb1bd8cd2cd8e8cd40eae0ee
tree7140b81bd7fb59fc650d50cf25ad075aab88a8dd
parent5c3bbfbbfb236e0b4dfd57daaad8040e8c883637
Demacro sha256.

Replace macros with static inline functions, as well as writing out the
variable rotations instead of trying to outsmart the compiler. Also pull
the message schedule update up and complete it prior to commencement of
the round. Also use rotate right, rather than transposed rotate left.

Overall this is more readable and more closely follows the specification.
On some platforms (e.g. aarch64) there is no noteable change in
performance, while on others there is a significant improvement (more than
25% on arm).

ok miod@ tb@
lib/libcrypto/sha/sha256.c