This is an archive of the discontinued LLVM Phabricator instance.

[PowerPC] Legalize masked gather/scatter intrinsics
AbandonedPublic

Authored by syzaara on Apr 11 2022, 9:55 AM.

Details

Summary

This patch experimentally enables the gather/scatter intrinsics for PowerPC to catch more LoopVectorize and SLPVectorize opportunities.
Both LoopVectorize and SLPVectorize call a query called isLegalMaskedGather. By setting this to true, we can enable more vectorization. We currently do not have any lowering for these instrinsics, so this patch also sets the hook forceScalarizeMaskedGather to true. The pass ScalarizeMaskedMemIntrin will then lower the intrinsic by scalarizing it. The next steps will be to implement more optimal lowering rather than relying on ScalarizeMaskedMemIntrin.

Diff Detail

Event Timeline

syzaara created this revision.Apr 11 2022, 9:55 AM
syzaara requested review of this revision.Apr 11 2022, 9:55 AM
Herald added a project: Restricted Project. · View Herald TranscriptApr 11 2022, 9:55 AM
syzaara abandoned this revision.Jun 24 2022, 8:46 AM