[all-commits] [llvm/llvm-project] e030be: [CostModel][X86] Add partial CostKinds handling fo...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Sep 22 03:27:15 PDT 2022


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

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/fshl-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshl-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshl-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshl.ll
    M llvm/test/Analysis/CostModel/X86/fshr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshr-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshr.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll

  Log Message:
  -----------
  [CostModel][X86] Add partial CostKinds handling for funnelshifts/rotates

This mainly just adds costs for the targets where we have actual funnelshift/rotate instructions (VBMI2/XOP etc.) - the cases where we expand still need addressing, although for many the default shift+or expansion, especially for uniform cases, isn't that bad.

This was achieved with the 'cost-tables vs llvm-mca' script D103695




More information about the All-commits mailing list