[PATCH] D124616: [TTI][X86] Fix splat-load cost when load+broadcast cannot be combined.

Vasileios Porpodas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 28 07:31:31 PDT 2022


vporpo created this revision.
vporpo added reviewers: vdmitrie, dmgreen, ABataev.
Herald added subscribers: pengfei, hiraditya.
Herald added a project: All.
vporpo requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

This patch fixes the issue with the cost of a combined load+broadcast
when these cannot be combined into a single instruction.

For example, there may be other instructions in between:

  %ld = ...
  <other instructions>
  %vec = broadcast %ld ...

Or they may be in different bbs:
bb1:

  %ld = ...

bb2:

  %vec = broadcast %ld ...

This should fix cost modeling for SLP of such cases.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D124616

Files:
  llvm/lib/Target/X86/X86TargetTransformInfo.cpp
  llvm/test/Analysis/CostModel/X86/shuffle-load.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D124616.425775.patch
Type: text/x-patch
Size: 9054 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220428/b24d564c/attachment.bin>


More information about the llvm-commits mailing list