This is an archive of the discontinued LLVM Phabricator instance.

[mips][FastISel] Disable code generation for unsupported targets through FastISel.
ClosedPublic

Authored by vkalintiris on Aug 4 2015, 6:33 AM.

Details

Summary

Previously, we would check whether the target is supported or not, only in
fastSelectInstruction(). This means that 64-bit targets could use FastISel too.
We fix this by checking every overridden method of the FastISel class and
by falling back to SelectionDAG if the target isn't supported. This change
should have been committed along with r243638, but somehow I missed it.

Diff Detail

Event Timeline

vkalintiris updated this revision to Diff 31325.Aug 4 2015, 6:33 AM
vkalintiris retitled this revision from to [mips][FastISel] Disable code generation for unsupported targets through FastISel..
vkalintiris updated this object.
vkalintiris added a reviewer: dsanders.
vkalintiris added a subscriber: llvm-commits.
dsanders accepted this revision.Aug 4 2015, 6:35 AM
dsanders edited edge metadata.

LGTM. Thanks

This revision is now accepted and ready to land.Aug 4 2015, 6:35 AM
dsanders added a subscriber: hans.Aug 4 2015, 6:37 AM

We should also merge this to the 3.7 release to avoid regressing -O0 for mips64.

Hans: Ok to merge?

This revision was automatically updated to reflect the committed changes.
hans added a comment.Aug 5 2015, 11:44 AM

We should also merge this to the 3.7 release to avoid regressing -O0 for mips64.

Hans: Ok to merge?

Yes. I've merged it in r244092.