[PATCH] D140087: [X86] Replace (31/63 -/^ X) with (NOT X) and ignore (32/64 ^ X) when computing shift count
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 20 11:31:05 PST 2022
craig.topper added a comment.
>> 3,782,331 port0
>> 3,207,023 port1
>> 1,001,220 port23
>> 3,216,022 port5
>> 4,940,975 port6
>> 11,575,101 port49
I'm having trouble accounting for these numbers. As far as I know
shlx is 1 uop
mov is 1 uop
shr is 1 uop
and with load+store is 4 uops
dec is 1 uop
bnz is 1uop and could possibly be macrofused with the dec.
so that's 9 or maybe 8 with macrofusion uops per iteration. what am I missing?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D140087/new/
https://reviews.llvm.org/D140087
More information about the llvm-commits
mailing list