This is an archive of the discontinued LLVM Phabricator instance.

[Scalarizer] Add scalarizer support for smul.fix.sat
ClosedPublic

Authored by bjope on Jun 24 2019, 1:52 AM.

Details

Summary

Handle smul.fix.sat in the scalarizer. This is done by
adding smul.fix.sat to the set of "isTriviallyVectorizable"
intrinsics.

The addition of smul.fix.sat in isTriviallyVectorizable and
hasVectorInstrinsicScalarOpd can also be seen as a preparation
to be able to use hasVectorInstrinsicScalarOpd in ConstantFolding.

Event Timeline

bjope created this revision.Jun 24 2019, 1:52 AM
Herald added a project: Restricted Project. · View Herald Transcript
Herald added a subscriber: hiraditya. · View Herald Transcript
RKSimon added inline comments.Jun 24 2019, 4:04 AM
llvm/lib/Analysis/VectorUtils.cpp
41

for the scalar form of the intrinsic, and vectors for all except the ones handled in hasVectorInstrinsicScalarOpd vectors for the vector form of the intrinsic.

bjope updated this revision to Diff 206188.Jun 24 2019, 4:30 AM

Fixup in description of llvm::isTriviallyVectorizable.

rengolin accepted this revision.Jun 24 2019, 4:51 AM

lgtm, thanks!

This revision is now accepted and ready to land.Jun 24 2019, 4:51 AM
This revision was automatically updated to reflect the committed changes.