[x86] don't require a zext when forming ADC/SBB
authorSanjay Patel <spatel@rotateright.com>
Sat, 4 Mar 2017 20:35:19 +0000 (20:35 +0000)
committerSanjay Patel <spatel@rotateright.com>
Sat, 4 Mar 2017 20:35:19 +0000 (20:35 +0000)
commitb974be5ef49680b3cfee484a91da9b11169c3f68
treeb3270580fea49c69acd747275b8932dea3e0b510
parent066f3208bf12e1c7910aeca21823148429c315b8
[x86] don't require a zext when forming ADC/SBB

The larger goal is to move the ADC/SBB transforms currently in
combineX86SetCC() to combineAddOrSubToADCOrSBB() because we're
creating ADC/SBB in lots of places where we shouldn't.

This was intended to be an NFC change, but avx-512 has something
strange going on. It doesn't seem like any of the affected tests
should really be using SET+TEST or ADC; a simple ADD could replace
several instructions. But that's another bug...

llvm-svn: 296978
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/avx512-insert-extract.ll