Creating release candidate rc5 from release_500 branch

llvm-svn: 312378
llvm-svn: 312377
llvm-svn: 312376
llvm-svn: 312375
llvm-svn: 312374
llvm-svn: 312373
llvm-svn: 312372
llvm-svn: 312371
llvm-svn: 312370
llvm-svn: 312368
llvm-svn: 312367
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