This is an archive of the discontinued LLVM Phabricator instance.

[WebAssembly] Custom combine splat build_vectors into swizzles
Changes PlannedPublic

Authored by tlively on Jul 10 2020, 7:49 PM.

Details

Reviewers
aheejin
dschuff
Summary

Some splat build_vectors can be lowered to swizzles, but only if all
of their lanes but one are undefined. This patch adds a custom combine
to turn these build_vectors into swizzles before their undefined lanes
are combined away by the combine introduced in D83606.

Depends on D83606.

Diff Detail

Event Timeline

tlively created this revision.Jul 10 2020, 7:49 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 10 2020, 7:49 PM
aheejin accepted this revision.Jul 15 2020, 8:11 PM

LGTM, but I posted a question on whether we need performBUILD_VECTORCombine in D83606.

This revision is now accepted and ready to land.Jul 15 2020, 8:11 PM
tlively planned changes to this revision.Jul 21 2020, 2:11 PM