[all-commits] [llvm/llvm-project] bbfdb8: [CostModel][X86] Add scalar rotate-by-immediate costs

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Jul 27 08:54:54 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bbfdb8cc2d3606f9aa6017a74def37f29945c071
      https://github.com/llvm/llvm-project/commit/bbfdb8cc2d3606f9aa6017a74def37f29945c071
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2023-07-27 (Thu, 27 Jul 2023)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    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-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshr.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fshl-rot.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fshr-rot.ll

  Log Message:
  -----------
  [CostModel][X86] Add scalar rotate-by-immediate costs

As noted on #63980 rotate by immediate amounts is much cheaper than variable amounts.

This still needs to be expanded to vector rotate cases, and we need to add reasonable funnel-shift costs as well (very tricky as there's a huge range in CPU behaviour for these).




More information about the All-commits mailing list