[X86] SkylakeServerModel - conversion instructions don't use Port015
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 12 Nov 2022 12:39:59 +0000 (12:39 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 12 Nov 2022 12:39:59 +0000 (12:39 +0000)
commit07c8f3dd0f6b4890e48ac9c07eb9059478030b7a
tree4e4f1d8281fa764f38b8e252bfac6c5018ddc0ee
parentb31a5d7270e06920132333908907536cd848d8c1
[X86] SkylakeServerModel - conversion instructions don't use Port015

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

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

Confirmed by both Agner + uops.info
llvm/lib/Target/X86/X86SchedSkylakeServer.td
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx1.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dq.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512dqvl.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-avx512vl.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-sse1.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-sse2.s