[X86] AMD Zen 3: same-reg SSE XMM XORPS is a 1-cycle(!) dep-breaking one-idiom
authorRoman Lebedev <lebedev.ri@gmail.com>
Thu, 13 May 2021 20:54:11 +0000 (23:54 +0300)
committerRoman Lebedev <lebedev.ri@gmail.com>
Thu, 13 May 2021 21:03:36 +0000 (00:03 +0300)
commitaa0dcb3ba4b93e4499208def080ced98f3a89ad5
tree5f049ea65cdee34947a02c4a1dec693b5d60c214
parent6c4596793d43703923552e791716a3d511e28fe0
[X86] AMD Zen 3: same-reg SSE XMM XORPS is a 1-cycle(!) dep-breaking one-idiom

While both the SOG and Agner insist that it is zero-cycle,
i can not confirm that claim. While it clearly breaks the dependency,
i can not come up with a snippet, or measurement approach,
to end up with IPC bigger than 4, which, to me, means that it actually
consumes execution resource of an FP unit for a cycle.
llvm/lib/Target/X86/X86ScheduleZnver3.td
llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-sse-xmm.s