This is an archive of the discontinued LLVM Phabricator instance.

[X86] X86ISelLowering::combineSextInRegCmov(): also handle i8 CMOV's
ClosedPublic

Authored by lebedev.ri on Mar 15 2019, 6:44 AM.

Diff Detail

Repository
rL LLVM

Event Timeline

lebedev.ri added inline comments.Mar 15 2019, 7:05 AM
test/CodeGen/X86/cmov-promotion.ll
155–157 ↗(On Diff #190817)

And we now have i16 ops, which i think we want to avoid?
Do we want to do all this in i32, and trunc to i16 in the end?

craig.topper added inline comments.Mar 15 2019, 11:58 AM
test/CodeGen/X86/cmov-promotion.ll
155–157 ↗(On Diff #190817)

Yeah. If the VT is i16 we should use i32 instead.

lebedev.ri added inline comments.Mar 15 2019, 12:07 PM
test/CodeGen/X86/cmov-promotion.ll
155–157 ↗(On Diff #190817)

Okay, no surprise there, i'll take a look..

lebedev.ri marked 3 inline comments as done.

Promote i16 CMOV's to i32, truncate afterwards.

This revision is now accepted and ready to land.Mar 15 2019, 1:04 PM

LGTM

Thank you for the review.
Care to stamp D59035 as well?

This revision was automatically updated to reflect the committed changes.