[PATCH] D149889: [TTI] Use users of GEP to guess access type in getGEPCost

Luke Lau via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 21 06:06:34 PDT 2023


luke marked 2 inline comments as done.
luke added a comment.

@nikic @ABataev thanks for the review, and sorry for the long delay here. I've rebased this and have run some benchmarks now that SLP is enabled by default for RISC-V.
I'm still seeing a reduction in the number of small unprofitable VFs on RISC-V with this patch, and it also seems to make a few more VF=8s profitable.
As a rough overview, here's the number vsetivlis on the benchmark before:

  vsetivli : 467 total
  1: 26
  2: 247
  3: 2
  4: 169
  5: 1
  6: 0
  7: 1
  8: 17

And after:

  vsetivli : 454 total
  1: 24
  2: 235
  3: 2
  4: 168
  5: 1
  6: 0
  7: 1
  8: 19



================
Comment at: llvm/include/llvm/Analysis/TargetTransformInfoImpl.h:1009
+        }))
+      return !BaseGV ? TTI::TCC_Free : TTI::TCC_Basic;
+
----------------
nikic wrote:
> ABataev wrote:
> > return BaseGV ? TTI::TCC_Basic : TTI::TCC_Free;
> Why is the BaseGV case not free as well?
This is just to match the behaviour of the previous `if (Operands.empty())` check. I'll refactor this so that they share this logic


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D149889/new/

https://reviews.llvm.org/D149889



More information about the llvm-commits mailing list