[PATCH] D80744: DAGCombiner optimization for pow(x, 0.75) even in case massv function is asked

Masoud Ataei via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 28 10:56:58 PDT 2020


masoud.ataei created this revision.
masoud.ataei added reviewers: nemanjai, jsji, kbarton, etiotto, pjeeva01, Whitney, PowerPC.
masoud.ataei added projects: LLVM, PowerPC.
Herald added subscribers: llvm-commits, hiraditya.

Here, I am proposing to handle massv powf4 function (SIMD counterpart 
of powf function in MASSV library) in PPCISelLowing to get earlier 
optimizations like conversion from pow(x,0.75) to sequence of sqrt's in 
the DAGCombiner in vector float case. My reason for doing this is: the 
optimized pow(x,0.75) to sequence of sqrt's is faster than powf4 on P8 <https://reviews.llvm.org/P8> 
and P9 <https://reviews.llvm.org/P9>.

In case MASSV functions is called, and if the exponent of pow is 0.75, 
we will get the sequence of sqrt's and if exponent is not 0.75 we will 
get the appropriate MASSV function.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D80744

Files:
  llvm/lib/Analysis/TargetLibraryInfo.cpp
  llvm/lib/Target/PowerPC/PPCISelLowering.cpp
  llvm/lib/Target/PowerPC/PPCISelLowering.h
  llvm/test/CodeGen/PowerPC/pow_massv_0.75exp.ll
  llvm/test/Transforms/LoopVectorize/PowerPC/massv-calls.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D80744.266943.patch
Type: text/x-patch
Size: 10549 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200528/31649ad6/attachment.bin>


More information about the llvm-commits mailing list