This is an archive of the discontinued LLVM Phabricator instance.

[X86] Don't compare i128 through vector if construction not cheap (PR41971)
ClosedPublic

Authored by nikic on May 21 2019, 2:50 PM.

Details

Summary

Fix for https://bugs.llvm.org/show_bug.cgi?id=41971. Make the combineVectorSizedSetCCEquality() transform more conservative by checking that the bitcast to the vector type will be cheap/free for both operands. I'm considering it cheap if it's a constant, a load or already a vector. I've dropped the explicit check for f128 because it should fall out naturally (in the cases where it'd be detrimental).

Diff Detail

Event Timeline

nikic created this revision.May 21 2019, 2:50 PM
Herald added a project: Restricted Project. · View Herald TranscriptMay 21 2019, 2:50 PM
spatel accepted this revision.May 21 2019, 3:35 PM

LGTM

This revision is now accepted and ready to land.May 21 2019, 3:35 PM
This revision was automatically updated to reflect the committed changes.