This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Fix incorrect extend type in vwmulsu combine.
ClosedPublic

Authored by craig.topper on Feb 11 2022, 10:31 PM.

Details

Summary

If while matching widening multiply, we matched an extend from i8->i32,
i16->i64 or i8->i64 we need to reintroduce a narrower extend. If we're
matching a vwmulsu we need to use a sext for op0 and a zext for op1.

This bug exists in LLVM 14 and will need to be backported.

Diff Detail

Event Timeline

craig.topper created this revision.Feb 11 2022, 10:31 PM
craig.topper requested review of this revision.Feb 11 2022, 10:31 PM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 11 2022, 10:31 PM
This revision is now accepted and ready to land.Feb 12 2022, 4:30 AM
This revision was landed with ongoing or failed builds.Feb 12 2022, 12:48 PM
This revision was automatically updated to reflect the committed changes.