This is an archive of the discontinued LLVM Phabricator instance.

[SLP]Use original vector if need to shuffle truncated root.
ClosedPublic

Authored by ABataev on Jun 16 2022, 7:56 AM.

Details

Summary

If the root scalar is mapped to to the smallest bit width, the vector is
truncated and the types between original buildvector and extracted value
mismatched. For extract, we emit sext/zext instructions, for shuffles we
can reuse oringal vector instead of the truncated one.

Diff Detail

Event Timeline

ABataev created this revision.Jun 16 2022, 7:56 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 16 2022, 7:56 AM
ABataev requested review of this revision.Jun 16 2022, 7:56 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 16 2022, 7:56 AM
scui added a comment.Jun 16 2022, 9:55 AM

LGTM. Thanks for the quick fix!

scui accepted this revision.Jun 16 2022, 9:57 AM
This revision is now accepted and ready to land.Jun 16 2022, 9:57 AM
This revision was landed with ongoing or failed builds.Jun 16 2022, 10:41 AM
This revision was automatically updated to reflect the committed changes.