Creating release candidate final from release_500 branch

llvm-svn: 312559
llvm-svn: 312558
llvm-svn: 312557
llvm-svn: 312556
llvm-svn: 312555
llvm-svn: 312554
llvm-svn: 312553
llvm-svn: 312552
llvm-svn: 312551
llvm-svn: 312549
llvm-svn: 312548
Merging r312285:
------------------------------------------------------------------------
r312285 | ctopper | 2017-08-31 14:39:23 -0700 (Thu, 31 Aug 2017) | 11 lines

[X86] Don't pull carry through X86ISD::ADD carryin, -1 if we can't guranteed we're really using the carry flag from the add.

Prior to this patch we had a DAG combine that tried to bypass an X86ISD::ADD with -1 being added to the carry flag of some previous operation. We would then pass the carry flag directly to user.

But this is only safe if the user is looking for the carry flag and not the zero flag.

So we need to only do this combine in a context where we know what flag the consumer is using.

Fixes PR34381.

Differential Revision: https://reviews.llvm.org/D37317
------------------------------------------------------------------------

llvm-svn: 312333
1 file changed