This is an archive of the discontinued LLVM Phabricator instance.

[SelectionDAG] Extract [US]MULO expansion into TL method; NFC
ClosedPublic

Authored by nikic on Feb 9 2019, 11:40 AM.

Details

Summary

New try at rL353611. The previous version asserted on ARM, because I missed that this code relies on a post-legalization libcall lowering. I've now added a flag for this to makeLibCall.

Diff Detail

Repository
rL LLVM

Event Timeline

nikic created this revision.Feb 9 2019, 11:40 AM
nikic updated this revision to Diff 186497.Feb 12 2019, 9:33 AM

Rebase over changes from D45355.

The change looks ok, but can you describe here or point to a discussion about how this fits in the overall plan for overflow op codegen? Ie, what exactly is enabled by moving this code?

nikic added a comment.Feb 17 2019, 6:38 AM

@spatel This is needed for D57997, to allow mulo expansion during vector op legalization, as the (potentially) resulting unrolled scalar ops still need to be legalized subsequently.

spatel accepted this revision.Feb 17 2019, 6:51 AM

LGTM

This revision is now accepted and ready to land.Feb 17 2019, 6:51 AM
This revision was automatically updated to reflect the committed changes.