]> git.ipfire.org Git - thirdparty/zstd.git/commit
dec: adjust seqSymbol load on aarch64 3141/head
authorJun He <jun.he@arm.com>
Mon, 23 May 2022 06:25:10 +0000 (14:25 +0800)
committerJun He <jun.he@arm.com>
Mon, 30 May 2022 14:01:38 +0000 (22:01 +0800)
commit2491c65937d42561ef9238422929213751adcc10
treef07abc8094c116856ce4357eaa19a8617a088ebe
parentfda537b299bfa598e65b47ef77c412dc09313445
dec: adjust seqSymbol load on aarch64

ZSTD_seqSymbol is a structure with total of 64 bits
wide. So it can be loaded in one operation and
extract its fields by simply shifting or extracting
on aarch64.
GCC doesn't recognize this and generates more
unnecessary ldr/ldrb/ldrh operations that cause
performance drop.
With this change it is observed 2~4% uplift of
silesia and 2.5~6% of cantrbry @L8 on Arm N1.

Signed-off-by: Jun He <jun.he@arm.com>
Change-Id: I7748909204cf78a17eb9d4f2333692d53239daa8
lib/decompress/zstd_decompress_block.c