Under -O3 and -Ofast, the MASSV conversion prevents the sqrt call to be inlined. 
Inline sqrt is faster than MASSV call on leppc.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
| Paths 
 |  Differential  D97487  
Removing sqrtd2 and sqrtf4 from list of vectorizable function with MASSV ClosedPublic Authored by masoud.ataei on Feb 25 2021, 10:14 AM. 
Details Summary Under -O3 and -Ofast, the MASSV conversion prevents the sqrt call to be inlined.  
Diff Detail 
 Event Timeline
 This revision is now accepted and ready to land.Mar 1 2021, 6:40 AM Closed by commit rG5fe0cab79e18: [PowerPC] Removing sqrtd2 and sqrtf4 from list of vectorizable function with… (authored by masoud.ataei).  ·  Explain WhyMar 1 2021, 7:43 AM This revision was automatically updated to reflect the committed changes. 
Revision Contents 
 
Diff 327116 llvm/include/llvm/Analysis/VecFuncs.def
 llvm/test/CodeGen/PowerPC/lower-massv.ll
 llvm/test/Transforms/LoopVectorize/PowerPC/massv-calls.ll
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
I think modifying this and the following tests to ensure following calls are not generated would be useful.
__sqrtd2_massv{{.*}}<2 x double> __sqrtf4_massv{{.*}}<4 x float>