Revert r237828 "[X86] Remove unused node after morphing it from shr to and."

This caused assertions during DAG combine: PR23601.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@237843 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Hans Wennborg 2015-05-20 22:31:55 +00:00
parent 0dd9a6767c
commit fa13c712af
2 changed files with 0 additions and 18 deletions

View File

@ -12737,7 +12737,6 @@ SDValue X86TargetLowering::EmitTest(SDValue Op, unsigned X86CC, SDLoc dl,
SDValue New = DAG.getNode(ISD::AND, dl, VT, Op->getOperand(0), SDValue New = DAG.getNode(ISD::AND, dl, VT, Op->getOperand(0),
DAG.getConstant(Mask, dl, VT)); DAG.getConstant(Mask, dl, VT));
DAG.ReplaceAllUsesWith(Op, New); DAG.ReplaceAllUsesWith(Op, New);
DAG.RemoveDeadNode(Op.getNode());
Op = New; Op = New;
} }
break; break;

View File

@ -211,20 +211,3 @@ define zeroext i1 @test15(i32 %bf.load, i32 %n) {
; CHECK: shrl $16, %edi ; CHECK: shrl $16, %edi
; CHECK: cmpl %esi, %edi ; CHECK: cmpl %esi, %edi
} }
; PR23353
define i1 @test16(i32* %a, i1* %b) {
%load = load i32, i32* %a
%trunc = trunc i32 %load to i8
%mul = mul i8 %trunc, 2
%icmp1 = icmp ne i8 %mul, 0
store i1 %icmp1, i1* %b
%and = and i8 %trunc, 127
%icmp2 = icmp ne i8 %and, 0
ret i1 %icmp2
; CHECK-LABEL: test16:
; CHECK-NOT: addb
; CHECK-NOT: andb
; CHECK: testb $127
}