[all-commits] [llvm/llvm-project] 10e0f3: [CostModel][X86] Add CostKinds handling for ctpop ops

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Tue Sep 6 09:27:51 PDT 2022


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

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

  Log Message:
  -----------
  [CostModel][X86] Add CostKinds handling for ctpop ops

This was achieved with an updated version of the 'cost-tables vs llvm-mca' script D103695 (although it still struggles with avx512 predicate numbers which had to be done manually)

Some of the pre-AVX values still aren't great - atom/slm worst case numbers for ctpop expansion really affect these (especially throughput/latency), so we need to clean them up in a more consistent way - its a pity we don't have models for more older cpus (merom/nehalem etc.) as other examples.




More information about the All-commits mailing list