[all-commits] [llvm/llvm-project] 4994f8: [X86] Fix bdver2 128-bit shuffles throughputs

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Sat Sep 10 09:57:51 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4994f87ca1d9c266936ae8352872fcc5271b1dd4
      https://github.com/llvm/llvm-project/commit/4994f87ca1d9c266936ae8352872fcc5271b1dd4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2022-09-10 (Sat, 10 Sep 2022)

  Changed paths:
    M llvm/lib/Target/X86/X86ScheduleBdVer2.td
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-3dnow.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-mmx.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse1.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-sse41.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-ssse3.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/resources-xop.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-2.s
    M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms-avx-256.s
    M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-1.s
    M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-2.s

  Log Message:
  -----------
  [X86] Fix bdver2 128-bit shuffles throughputs

Noticed while trying to get vector ctpop/ctlz/cttz costs fixed using the script from D103695 - all of these are full-rate but the throughput costs were weirdly high for bdver2

Matches AMD 15h SoG, Agner and instlatx64


  Commit: 10edf88458383280fb2e08cb94489ef8f6ce465f
      https://github.com/llvm/llvm-project/commit/10edf88458383280fb2e08cb94489ef8f6ce465f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2022-09-10 (Sat, 10 Sep 2022)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/ctpop-latency.ll
    M llvm/test/Analysis/CostModel/X86/ctpop.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ctpop.ll

  Log Message:
  -----------
  [CostModel][X86] Update CTPOP costs

With the bdver2 model updates, many of the AVX1 costs were far too high - it also helped expose some costs mismatches for Atom/Silvermont


Compare: https://github.com/llvm/llvm-project/compare/7785bd34e744...10edf8845838


More information about the All-commits mailing list