This is an archive of the discontinued LLVM Phabricator instance.

[PowerPC] Don't run BV DAG Combine before legalization if it assumes legal types
ClosedPublic

Authored by nemanjai on Jul 9 2018, 7:58 AM.

Details

Summary

When trying to combine a DAG that builds a vector out of sign-extensions of vector extracts, the code assumes legal input types. Due to that, we have to disable this combine prior to legalization.
In some cases, the DAG will look slightly different after legalization so account for that in the matching code.

This is a fix for https://bugs.llvm.org/show_bug.cgi?id=38087

Diff Detail

Repository
rL LLVM

Event Timeline

nemanjai created this revision.Jul 9 2018, 7:58 AM

This fixes the crash in the full test case too.

Ping. The bug this resolves (38087) is marked as a blocker for 7.0. @hfinkel Can you please have a look at this patch when you get the chance?

This is a rather non-controversial change that resolves a release blocker bug. I'm going to commit this fix later today.

lei accepted this revision.Aug 13 2018, 10:13 AM
lei added a subscriber: lei.

LGTM

This revision is now accepted and ready to land.Aug 13 2018, 10:13 AM
This revision was automatically updated to reflect the committed changes.