[X86] SkylakeClientModel - conversion instructions don't use Port015
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 10 Nov 2022 11:58:45 +0000 (11:58 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 10 Nov 2022 12:42:51 +0000 (12:42 +0000)
commit30498cf7c46f90db0f67ff01f0246860e55be0f2
tree4fc9d14da7644654ff490a2e6e6c17b6ad08b8a4
parent956489700e73e57b569337a9689d69b2e00dba26
[X86] SkylakeClientModel - conversion instructions don't use Port015

Fixes a lot of throughput mismatches - the more complicated conversion instructions use SKLPort5+SKLPort01, not SKLPort5+SKLPort015 (SKLPort015 is mainly used for basic Logic + blend ops)

Fixing this should allow us to remove a lot of unnecessary scheduler overrides from SkylakeClientModel

Confirmed by both Agner + uops.info
llvm/lib/Target/X86/X86SchedSkylakeClient.td
llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-avx1.s
llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-f16c.s
llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse1.s
llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-sse2.s