[X86] X86ISelLowering::combineSextInRegCmov(): also handle i8 CMOV's
authorRoman Lebedev <lebedev.ri@gmail.com>
Fri, 15 Mar 2019 21:18:05 +0000 (21:18 +0000)
committerRoman Lebedev <lebedev.ri@gmail.com>
Fri, 15 Mar 2019 21:18:05 +0000 (21:18 +0000)
commit9f377906088f1c26134d96353857e4c3dd5e8f34
tree60b07293f4a9a11bcfdd146974feb475955cae23
parentb6e376ddfa1715c0ea0e975fc7fb033da2814661
[X86] X86ISelLowering::combineSextInRegCmov(): also handle i8 CMOV's

Summary:
As noted by @andreadb in https://reviews.llvm.org/D59035#inline-525780

If we have `sext (trunc (cmov C0, C1) to i8)`,
we can instead do `cmov (sext (trunc C0 to i8)), (sext (trunc C1 to i8))`

Reviewers: craig.topper, andreadb, RKSimon

Reviewed By: craig.topper

Subscribers: llvm-commits, andreadb

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D59412

llvm-svn: 356301
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/cmov-promotion.ll