[PATCH] D94980: [PowerPC] Do not emit HW loop with half precision operations

Nemanja Ivanovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 19 09:40:04 PST 2021


nemanjai created this revision.
nemanjai added reviewers: vchuravy, PowerPC.
Herald added subscribers: shchenz, kbarton, hiraditya.
nemanjai requested review of this revision.
Herald added a project: LLVM.

If a loop has any operations on half precision values, there will be calls to library functions on Power8. Even on Power9, there is a small subset of instructions that are actually supported for the type.

This patch disables HW loops whenever any operations on the type are found (other than the handfull of supported ones when compiling for Power9). Fixes a few PR's opened by Julia:

https://bugs.llvm.org/show_bug.cgi?id=48785
https://bugs.llvm.org/show_bug.cgi?id=48786
https://bugs.llvm.org/show_bug.cgi?id=48519


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D94980

Files:
  llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
  llvm/test/CodeGen/PowerPC/pr48519.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D94980.317605.patch
Type: text/x-patch
Size: 12885 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210119/797c627b/attachment.bin>


More information about the llvm-commits mailing list