[all-commits] [llvm/llvm-project] 5cd427: [TTI] Start process of merging OperandValueKind an...

Philip Reames via All-commits all-commits at lists.llvm.org
Mon Aug 22 09:49:20 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5cd427106dd25949b716639c9c1e6559f77fb697
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2022-08-22 (Mon, 22 Aug 2022)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  [TTI] Start process of merging OperandValueKind and OperandValueProperties [nfc]

OperandValueKind and OperandValueProperties both provide facts about the operands of an instruction for purposes of cost modeling.  We've discussed merging them several times; before I plumb through more flags, let's go ahead and do so.

This change only adds the client side interface for getArithmeticInstrCost and makes a couple of minor changes in client code to prove that it works.  Target TTI implementations still use the split flags.  I'm deliberately splitting what could be one big change into a series of smaller ones so that I can lean on the compiler to catch errors along the way.

More information about the All-commits mailing list