[all-commits] [llvm/llvm-project] 37c87d: [LV][AArch64] LoopVectorizer allows scalable frem ...

Paschalis Mpeis via All-commits all-commits at lists.llvm.org
Thu Jan 18 00:33:06 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 37c87d5689134392ba801a9eb28785f9f0b3e5f7
      https://github.com/llvm/llvm-project/commit/37c87d5689134392ba801a9eb28785f9f0b3e5f7
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2024-01-18 (Thu, 18 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Analysis/CostModel/AArch64/arith-fp-frem.ll

  Log Message:
  -----------
  [LV][AArch64] LoopVectorizer allows scalable frem instructions (#76247)

LoopVectorizer is aware when a target can replace a scalable frem
instruction with a vector library call for a given VF and it returns the
relevant cost. Otherwise, it returns an invalid cost (as previously).

Add test that check costs on AArch64, when there is no vector library
available and when there is (with and without tail-folding).

NOTE: Invoking CostModel directly (not through LV) would still return
invalid costs.




More information about the All-commits mailing list