HomePhabricator

[LegalizeDAG] When expanding vector SRA/SRL/SHL add the new BUILD_VECTOR to the…

Authored by craig.topper on Mon, Dec 2, 10:50 PM.

Description

[LegalizeDAG] When expanding vector SRA/SRL/SHL add the new BUILD_VECTOR to the Results vector instead of just calling ReplaceNode

The code that processes the Results vector also calls ReplaceNode
and makes ExpandNode return true.

If we don't add it to the Results node, we end up returning false
from ExpandNode. This causes ConvertNodeToLibcall to be called next.
But ConvertNodeToLibcall doesn't do anything for shifts so they
just pass through unmodified. Except for printing a debug message.

Ultimately, I'd like to add more checks to ExpandNode and
ConvertNodeToLibcall to make sure we don't have nodes marked as
Expand that don't have any Expand or libcall handling.

Details

Committed
craig.topperMon, Dec 2, 11:07 PM
Parents
rG4cde2d6b8db6: [NFC][PowerPC] Add the inheritable and additional features to make the…
Branches
Unknown
Tags
Unknown