diff options
| author | riastradh <riastradh@NetBSD.org> | 2023-03-29 13:07:46 +0000 |
|---|---|---|
| committer | riastradh <riastradh@NetBSD.org> | 2023-03-29 13:07:46 +0000 |
| commit | b50068aedcf440f2870f54b2b97b4882954793ac (patch) | |
| tree | 24d59e90d997b349b96651b6ad572b982fe5a5bc /sys/dev/microcode/rum/microcode.h | |
| parent | e4ef49ffa3b81d240148aab9cf712bd58d23fc05 (diff) | |
openssl: Remove local micro-optimization on AMD (but not Intel).
Upstream OpenSSL changed
loop 1b
to
dec %rcx
jnz 1b
which has mostly the same semantics, in this change:
https://github.com/openssl/openssl/pull/4743
For some reason, in one of the OpenSSL updates, we ended up with a
local change to revert this.
The Intel and AMD optimization guides are silent on the LOOP
instruction, but Agner Fog's tables shows that while LOOP is one
cycle shorter than DEC;JNZ on AMD Zen microarchitectures, it is a
good half dozen cycles longer than DEC;JNZ on recent Intel
microarchitectures.
The history of the OpenSSL change suggests it was intended, and I
can't find any indication other than `merge conflicts' that we
intended to keep the LOOP version. So let's reduce the local diff by
nixing it.
Diffstat (limited to 'sys/dev/microcode/rum/microcode.h')
0 files changed, 0 insertions, 0 deletions
