From 86bec79b15bdd06ca8475b44e6357ab41f853223 Mon Sep 17 00:00:00 2001 From: Simon Pilgrim Date: Tue, 27 Oct 2020 16:06:19 +0000 Subject: [PATCH] [X86] Regenerate xor tests. NFCI. Merge prefixes where possible, use 'X86' instead of 'X32' (which we try to only use for gnux32 triple tests). --- llvm/test/CodeGen/X86/xor-icmp.ll | 102 ++++----- llvm/test/CodeGen/X86/xor.ll | 344 +++++++++++++++--------------- 2 files changed, 218 insertions(+), 228 deletions(-) diff --git a/llvm/test/CodeGen/X86/xor-icmp.ll b/llvm/test/CodeGen/X86/xor-icmp.ll index 4062e06b4c27..f520544d806f 100644 --- a/llvm/test/CodeGen/X86/xor-icmp.ll +++ b/llvm/test/CodeGen/X86/xor-icmp.ll @@ -1,19 +1,19 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc < %s -mtriple=i686-unknown | FileCheck %s -check-prefix=X32 -; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s -check-prefix=X64 +; RUN: llc < %s -mtriple=i686-unknown | FileCheck %s --check-prefixes=CHECK,X86 +; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s --check-prefixes=CHECK,X64 ; rdar://7367229 define i32 @t(i32 %a, i32 %b) nounwind ssp { -; X32-LABEL: t: -; X32: # %bb.0: # %entry -; X32-NEXT: movb {{[0-9]+}}(%esp), %al -; X32-NEXT: xorb {{[0-9]+}}(%esp), %al -; X32-NEXT: testb $64, %al -; X32-NEXT: je .LBB0_1 -; X32-NEXT: # %bb.2: # %bb1 -; X32-NEXT: jmp bar # TAILCALL -; X32-NEXT: .LBB0_1: # %bb -; X32-NEXT: jmp foo # TAILCALL +; X86-LABEL: t: +; X86: # %bb.0: # %entry +; X86-NEXT: movb {{[0-9]+}}(%esp), %al +; X86-NEXT: xorb {{[0-9]+}}(%esp), %al +; X86-NEXT: testb $64, %al +; X86-NEXT: je .LBB0_1 +; X86-NEXT: # %bb.2: # %bb1 +; X86-NEXT: jmp bar # TAILCALL +; X86-NEXT: .LBB0_1: # %bb +; X86-NEXT: jmp foo # TAILCALL ; ; X64-LABEL: t: ; X64: # %bb.0: # %entry @@ -47,18 +47,18 @@ declare i32 @foo(...) declare i32 @bar(...) define i32 @t2(i32 %x, i32 %y) nounwind ssp { -; X32-LABEL: t2: -; X32: # %bb.0: # %entry -; X32-NEXT: cmpl $0, {{[0-9]+}}(%esp) -; X32-NEXT: sete %al -; X32-NEXT: cmpl $0, {{[0-9]+}}(%esp) -; X32-NEXT: sete %cl -; X32-NEXT: cmpb %al, %cl -; X32-NEXT: je .LBB1_1 -; X32-NEXT: # %bb.2: # %bb -; X32-NEXT: jmp foo # TAILCALL -; X32-NEXT: .LBB1_1: # %return -; X32-NEXT: retl +; X86-LABEL: t2: +; X86: # %bb.0: # %entry +; X86-NEXT: cmpl $0, {{[0-9]+}}(%esp) +; X86-NEXT: sete %al +; X86-NEXT: cmpl $0, {{[0-9]+}}(%esp) +; X86-NEXT: sete %cl +; X86-NEXT: cmpb %al, %cl +; X86-NEXT: je .LBB1_1 +; X86-NEXT: # %bb.2: # %bb +; X86-NEXT: jmp foo # TAILCALL +; X86-NEXT: .LBB1_1: # %return +; X86-NEXT: retl ; ; X64-LABEL: t2: ; X64: # %bb.0: # %entry @@ -92,12 +92,12 @@ return: ; preds = %entry ; https://bugs.llvm.org/show_bug.cgi?id=45703 define i1 @xor_not_bools(i1 zeroext %x, i1 zeroext %y) nounwind { -; X32-LABEL: xor_not_bools: -; X32: # %bb.0: -; X32-NEXT: movb {{[0-9]+}}(%esp), %al -; X32-NEXT: xorb {{[0-9]+}}(%esp), %al -; X32-NEXT: xorb $1, %al -; X32-NEXT: retl +; X86-LABEL: xor_not_bools: +; X86: # %bb.0: +; X86-NEXT: movb {{[0-9]+}}(%esp), %al +; X86-NEXT: xorb {{[0-9]+}}(%esp), %al +; X86-NEXT: xorb $1, %al +; X86-NEXT: retl ; ; X64-LABEL: xor_not_bools: ; X64: # %bb.0: @@ -114,15 +114,15 @@ define i1 @xor_not_bools(i1 zeroext %x, i1 zeroext %y) nounwind { ; This is probably not canonical IR; just testing another possible pattern. define zeroext i1 @xor_not_cmps(i32 %x, i32 %y) nounwind { -; X32-LABEL: xor_not_cmps: -; X32: # %bb.0: -; X32-NEXT: cmpl $42, {{[0-9]+}}(%esp) -; X32-NEXT: setne %cl -; X32-NEXT: cmpl $235, {{[0-9]+}}(%esp) -; X32-NEXT: sete %al -; X32-NEXT: xorb %cl, %al -; X32-NEXT: xorb $1, %al -; X32-NEXT: retl +; X86-LABEL: xor_not_cmps: +; X86: # %bb.0: +; X86-NEXT: cmpl $42, {{[0-9]+}}(%esp) +; X86-NEXT: setne %cl +; X86-NEXT: cmpl $235, {{[0-9]+}}(%esp) +; X86-NEXT: sete %al +; X86-NEXT: xorb %cl, %al +; X86-NEXT: xorb $1, %al +; X86-NEXT: retl ; ; X64-LABEL: xor_not_cmps: ; X64: # %bb.0: @@ -141,18 +141,18 @@ define zeroext i1 @xor_not_cmps(i32 %x, i32 %y) nounwind { } define zeroext i1 @xor_not_cmps_extra_use(i32 %x, i32 %y, i32* %p) nounwind { -; X32-LABEL: xor_not_cmps_extra_use: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: cmpl $42, {{[0-9]+}}(%esp) -; X32-NEXT: setne %dl -; X32-NEXT: cmpl $235, {{[0-9]+}}(%esp) -; X32-NEXT: sete %al -; X32-NEXT: xorb %dl, %al -; X32-NEXT: movzbl %al, %edx -; X32-NEXT: movl %edx, (%ecx) -; X32-NEXT: xorb $1, %al -; X32-NEXT: retl +; X86-LABEL: xor_not_cmps_extra_use: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: cmpl $42, {{[0-9]+}}(%esp) +; X86-NEXT: setne %dl +; X86-NEXT: cmpl $235, {{[0-9]+}}(%esp) +; X86-NEXT: sete %al +; X86-NEXT: xorb %dl, %al +; X86-NEXT: movzbl %al, %edx +; X86-NEXT: movl %edx, (%ecx) +; X86-NEXT: xorb $1, %al +; X86-NEXT: retl ; ; X64-LABEL: xor_not_cmps_extra_use: ; X64: # %bb.0: diff --git a/llvm/test/CodeGen/X86/xor.ll b/llvm/test/CodeGen/X86/xor.ll index e1d6929503f1..6ac06dd314e8 100644 --- a/llvm/test/CodeGen/X86/xor.ll +++ b/llvm/test/CodeGen/X86/xor.ll @@ -1,46 +1,36 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s -check-prefixes=X32 -; RUN: llc < %s -mtriple=x86_64-linux -mattr=+sse2 | FileCheck %s -check-prefixes=X64,X64-LIN -; RUN: llc < %s -mtriple=x86_64-win32 -mattr=+sse2 | FileCheck %s -check-prefixes=X64,X64-WIN +; RUN: llc < %s -mtriple=i686-unknown -mattr=+sse2 | FileCheck %s --check-prefixes=CHECK,X86 +; RUN: llc < %s -mtriple=x86_64-linux -mattr=+sse2 | FileCheck %s --check-prefixes=CHECK,X64,X64-LIN +; RUN: llc < %s -mtriple=x86_64-win32 -mattr=+sse2 | FileCheck %s --check-prefixes=CHECK,X64,X64-WIN ; Though it is undefined, we want xor undef,undef to produce zero. define <4 x i32> @test1() nounwind { -; X32-LABEL: test1: -; X32: # %bb.0: -; X32-NEXT: xorps %xmm0, %xmm0 -; X32-NEXT: retl -; -; X64-LABEL: test1: -; X64: # %bb.0: -; X64-NEXT: xorps %xmm0, %xmm0 -; X64-NEXT: retq +; CHECK-LABEL: test1: +; CHECK: # %bb.0: +; CHECK-NEXT: xorps %xmm0, %xmm0 +; CHECK-NEXT: ret{{[l|q]}} %tmp = xor <4 x i32> undef, undef ret <4 x i32> %tmp } ; Though it is undefined, we want xor undef,undef to produce zero. define i32 @test2() nounwind{ -; X32-LABEL: test2: -; X32: # %bb.0: -; X32-NEXT: xorl %eax, %eax -; X32-NEXT: retl -; -; X64-LABEL: test2: -; X64: # %bb.0: -; X64-NEXT: xorl %eax, %eax -; X64-NEXT: retq +; CHECK-LABEL: test2: +; CHECK: # %bb.0: +; CHECK-NEXT: xorl %eax, %eax +; CHECK-NEXT: ret{{[l|q]}} %tmp = xor i32 undef, undef ret i32 %tmp } define i32 @test3(i32 %a, i32 %b) nounwind { -; X32-LABEL: test3: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: notl %eax -; X32-NEXT: andl {{[0-9]+}}(%esp), %eax -; X32-NEXT: shrl %eax -; X32-NEXT: retl +; X86-LABEL: test3: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: notl %eax +; X86-NEXT: andl {{[0-9]+}}(%esp), %eax +; X86-NEXT: shrl %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: test3: ; X64-LIN: # %bb.0: # %entry @@ -65,22 +55,22 @@ entry: } define i32 @test4(i32 %a, i32 %b) nounwind { -; X32-LABEL: test4: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: .p2align 4, 0x90 -; X32-NEXT: .LBB3_1: # %bb -; X32-NEXT: # =>This Inner Loop Header: Depth=1 -; X32-NEXT: xorl %ecx, %eax -; X32-NEXT: movl %eax, %edx -; X32-NEXT: notl %edx -; X32-NEXT: andl %ecx, %edx -; X32-NEXT: addl %edx, %edx -; X32-NEXT: movl %edx, %ecx -; X32-NEXT: jne .LBB3_1 -; X32-NEXT: # %bb.2: # %bb12 -; X32-NEXT: retl +; X86-LABEL: test4: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: .p2align 4, 0x90 +; X86-NEXT: .LBB3_1: # %bb +; X86-NEXT: # =>This Inner Loop Header: Depth=1 +; X86-NEXT: xorl %ecx, %eax +; X86-NEXT: movl %eax, %edx +; X86-NEXT: notl %edx +; X86-NEXT: andl %ecx, %edx +; X86-NEXT: addl %edx, %edx +; X86-NEXT: movl %edx, %ecx +; X86-NEXT: jne .LBB3_1 +; X86-NEXT: # %bb.2: # %bb12 +; X86-NEXT: retl ; ; X64-LIN-LABEL: test4: ; X64-LIN: # %bb.0: # %entry @@ -129,24 +119,24 @@ bb12: } define i16 @test5(i16 %a, i16 %b) nounwind { -; X32-LABEL: test5: -; X32: # %bb.0: # %entry -; X32-NEXT: movzwl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movzwl {{[0-9]+}}(%esp), %eax -; X32-NEXT: .p2align 4, 0x90 -; X32-NEXT: .LBB4_1: # %bb -; X32-NEXT: # =>This Inner Loop Header: Depth=1 -; X32-NEXT: xorl %ecx, %eax -; X32-NEXT: movl %eax, %edx -; X32-NEXT: notl %edx -; X32-NEXT: andl %ecx, %edx -; X32-NEXT: addl %edx, %edx -; X32-NEXT: testw %dx, %dx -; X32-NEXT: movl %edx, %ecx -; X32-NEXT: jne .LBB4_1 -; X32-NEXT: # %bb.2: # %bb12 -; X32-NEXT: # kill: def $ax killed $ax killed $eax -; X32-NEXT: retl +; X86-LABEL: test5: +; X86: # %bb.0: # %entry +; X86-NEXT: movzwl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movzwl {{[0-9]+}}(%esp), %eax +; X86-NEXT: .p2align 4, 0x90 +; X86-NEXT: .LBB4_1: # %bb +; X86-NEXT: # =>This Inner Loop Header: Depth=1 +; X86-NEXT: xorl %ecx, %eax +; X86-NEXT: movl %eax, %edx +; X86-NEXT: notl %edx +; X86-NEXT: andl %ecx, %edx +; X86-NEXT: addl %edx, %edx +; X86-NEXT: testw %dx, %dx +; X86-NEXT: movl %edx, %ecx +; X86-NEXT: jne .LBB4_1 +; X86-NEXT: # %bb.2: # %bb12 +; X86-NEXT: # kill: def $ax killed $ax killed $eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: test5: ; X64-LIN: # %bb.0: # %entry @@ -200,22 +190,22 @@ bb12: } define i8 @test6(i8 %a, i8 %b) nounwind { -; X32-LABEL: test6: -; X32: # %bb.0: # %entry -; X32-NEXT: movb {{[0-9]+}}(%esp), %cl -; X32-NEXT: movb {{[0-9]+}}(%esp), %al -; X32-NEXT: .p2align 4, 0x90 -; X32-NEXT: .LBB5_1: # %bb -; X32-NEXT: # =>This Inner Loop Header: Depth=1 -; X32-NEXT: xorb %cl, %al -; X32-NEXT: movl %eax, %edx -; X32-NEXT: notb %dl -; X32-NEXT: andb %cl, %dl -; X32-NEXT: addb %dl, %dl -; X32-NEXT: movl %edx, %ecx -; X32-NEXT: jne .LBB5_1 -; X32-NEXT: # %bb.2: # %bb12 -; X32-NEXT: retl +; X86-LABEL: test6: +; X86: # %bb.0: # %entry +; X86-NEXT: movb {{[0-9]+}}(%esp), %cl +; X86-NEXT: movb {{[0-9]+}}(%esp), %al +; X86-NEXT: .p2align 4, 0x90 +; X86-NEXT: .LBB5_1: # %bb +; X86-NEXT: # =>This Inner Loop Header: Depth=1 +; X86-NEXT: xorb %cl, %al +; X86-NEXT: movl %eax, %edx +; X86-NEXT: notb %dl +; X86-NEXT: andb %cl, %dl +; X86-NEXT: addb %dl, %dl +; X86-NEXT: movl %edx, %ecx +; X86-NEXT: jne .LBB5_1 +; X86-NEXT: # %bb.2: # %bb12 +; X86-NEXT: retl ; ; X64-LIN-LABEL: test6: ; X64-LIN: # %bb.0: # %entry @@ -265,22 +255,22 @@ bb12: } define i32 @test7(i32 %a, i32 %b) nounwind { -; X32-LABEL: test7: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: .p2align 4, 0x90 -; X32-NEXT: .LBB6_1: # %bb -; X32-NEXT: # =>This Inner Loop Header: Depth=1 -; X32-NEXT: xorl %ecx, %eax -; X32-NEXT: movl %eax, %edx -; X32-NEXT: xorl $2147483646, %edx # imm = 0x7FFFFFFE -; X32-NEXT: andl %ecx, %edx -; X32-NEXT: addl %edx, %edx -; X32-NEXT: movl %edx, %ecx -; X32-NEXT: jne .LBB6_1 -; X32-NEXT: # %bb.2: # %bb12 -; X32-NEXT: retl +; X86-LABEL: test7: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: .p2align 4, 0x90 +; X86-NEXT: .LBB6_1: # %bb +; X86-NEXT: # =>This Inner Loop Header: Depth=1 +; X86-NEXT: xorl %ecx, %eax +; X86-NEXT: movl %eax, %edx +; X86-NEXT: xorl $2147483646, %edx # imm = 0x7FFFFFFE +; X86-NEXT: andl %ecx, %edx +; X86-NEXT: addl %edx, %edx +; X86-NEXT: movl %edx, %ecx +; X86-NEXT: jne .LBB6_1 +; X86-NEXT: # %bb.2: # %bb12 +; X86-NEXT: retl ; ; X64-LIN-LABEL: test7: ; X64-LIN: # %bb.0: # %entry @@ -330,11 +320,11 @@ bb12: ; rdar://7553032 define i32 @test8(i32 %a) nounwind { -; X32-LABEL: test8: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: notl %eax -; X32-NEXT: retl +; X86-LABEL: test8: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: notl %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: test8: ; X64-LIN: # %bb.0: # %entry @@ -354,12 +344,12 @@ entry: } define i32 @test9(i32 %a) nounwind { -; X32-LABEL: test9: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: notl %eax -; X32-NEXT: andl $4096, %eax # imm = 0x1000 -; X32-NEXT: retl +; X86-LABEL: test9: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: notl %eax +; X86-NEXT: andl $4096, %eax # imm = 0x1000 +; X86-NEXT: retl ; ; X64-LIN-LABEL: test9: ; X64-LIN: # %bb.0: @@ -381,10 +371,10 @@ define i32 @test9(i32 %a) nounwind { ; PR15948 define <4 x i32> @test10(<4 x i32> %a) nounwind { -; X32-LABEL: test10: -; X32: # %bb.0: -; X32-NEXT: andnps {{\.LCPI.*}}, %xmm0 -; X32-NEXT: retl +; X86-LABEL: test10: +; X86: # %bb.0: +; X86-NEXT: andnps {{\.LCPI.*}}, %xmm0 +; X86-NEXT: retl ; ; X64-LIN-LABEL: test10: ; X64-LIN: # %bb.0: @@ -402,17 +392,17 @@ define <4 x i32> @test10(<4 x i32> %a) nounwind { } define i32 @PR17487(i1 %tobool) { -; X32-LABEL: PR17487: -; X32: # %bb.0: -; X32-NEXT: movd {{.*#+}} xmm0 = mem[0],zero,zero,zero -; X32-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,1,0,1] -; X32-NEXT: pandn {{\.LCPI.*}}, %xmm0 -; X32-NEXT: pshufd {{.*#+}} xmm0 = xmm0[2,3,2,3] -; X32-NEXT: movd %xmm0, %ecx -; X32-NEXT: xorl %eax, %eax -; X32-NEXT: cmpl $1, %ecx -; X32-NEXT: setne %al -; X32-NEXT: retl +; X86-LABEL: PR17487: +; X86: # %bb.0: +; X86-NEXT: movd {{.*#+}} xmm0 = mem[0],zero,zero,zero +; X86-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,1,0,1] +; X86-NEXT: pandn {{\.LCPI.*}}, %xmm0 +; X86-NEXT: pshufd {{.*#+}} xmm0 = xmm0[2,3,2,3] +; X86-NEXT: movd %xmm0, %ecx +; X86-NEXT: xorl %eax, %eax +; X86-NEXT: cmpl $1, %ecx +; X86-NEXT: setne %al +; X86-NEXT: retl ; ; X64-LIN-LABEL: PR17487: ; X64-LIN: # %bb.0: @@ -436,12 +426,12 @@ define i32 @PR17487(i1 %tobool) { } define i32 @test11(i32 %b) { -; X32-LABEL: test11: -; X32: # %bb.0: -; X32-NEXT: movb {{[0-9]+}}(%esp), %cl -; X32-NEXT: movl $-2, %eax -; X32-NEXT: roll %cl, %eax -; X32-NEXT: retl +; X86-LABEL: test11: +; X86: # %bb.0: +; X86-NEXT: movb {{[0-9]+}}(%esp), %cl +; X86-NEXT: movl $-2, %eax +; X86-NEXT: roll %cl, %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: test11: ; X64-LIN: # %bb.0: @@ -466,14 +456,14 @@ define i32 @test11(i32 %b) { %union.v = type { i64 } define %struct.ref_s* @test12(%struct.ref_s* %op, i64 %osbot, i64 %intval) { -; X32-LABEL: test12: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: notl %eax -; X32-NEXT: leal (%eax,%eax,2), %eax -; X32-NEXT: shll $2, %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: retl +; X86-LABEL: test12: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: notl %eax +; X86-NEXT: leal (%eax,%eax,2), %eax +; X86-NEXT: shll $2, %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: test12: ; X64-LIN: # %bb.0: @@ -498,13 +488,13 @@ define %struct.ref_s* @test12(%struct.ref_s* %op, i64 %osbot, i64 %intval) { } define i32 @PR39657(i8* %p, i64 %x) { -; X32-LABEL: PR39657: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: notl %ecx -; X32-NEXT: movl (%eax,%ecx,4), %eax -; X32-NEXT: retl +; X86-LABEL: PR39657: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: notl %ecx +; X86-NEXT: movl (%eax,%ecx,4), %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: PR39657: ; X64-LIN: # %bb.0: @@ -526,12 +516,12 @@ define i32 @PR39657(i8* %p, i64 %x) { } define i32 @add_of_not(i32 %x, i32 %y) { -; X32-LABEL: add_of_not: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: notl %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: retl +; X86-LABEL: add_of_not: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: notl %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: add_of_not: ; X64-LIN: # %bb.0: @@ -554,12 +544,12 @@ define i32 @add_of_not(i32 %x, i32 %y) { } define i32 @add_of_not_decrement(i32 %x, i32 %y) { -; X32-LABEL: add_of_not_decrement: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: notl %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: retl +; X86-LABEL: add_of_not_decrement: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: notl %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: retl ; ; X64-LIN-LABEL: add_of_not_decrement: ; X64-LIN: # %bb.0: @@ -582,12 +572,12 @@ define i32 @add_of_not_decrement(i32 %x, i32 %y) { } define <4 x i32> @vec_add_of_not(<4 x i32> %x, <4 x i32> %y) { -; X32-LABEL: vec_add_of_not: -; X32: # %bb.0: -; X32-NEXT: pcmpeqd %xmm2, %xmm2 -; X32-NEXT: pxor %xmm1, %xmm2 -; X32-NEXT: paddd %xmm2, %xmm0 -; X32-NEXT: retl +; X86-LABEL: vec_add_of_not: +; X86: # %bb.0: +; X86-NEXT: pcmpeqd %xmm2, %xmm2 +; X86-NEXT: pxor %xmm1, %xmm2 +; X86-NEXT: paddd %xmm2, %xmm0 +; X86-NEXT: retl ; ; X64-LIN-LABEL: vec_add_of_not: ; X64-LIN: # %bb.0: @@ -608,12 +598,12 @@ define <4 x i32> @vec_add_of_not(<4 x i32> %x, <4 x i32> %y) { } define <4 x i32> @vec_add_of_not_decrement(<4 x i32> %x, <4 x i32> %y) { -; X32-LABEL: vec_add_of_not_decrement: -; X32: # %bb.0: -; X32-NEXT: pcmpeqd %xmm2, %xmm2 -; X32-NEXT: pxor %xmm1, %xmm2 -; X32-NEXT: paddd %xmm2, %xmm0 -; X32-NEXT: retl +; X86-LABEL: vec_add_of_not_decrement: +; X86: # %bb.0: +; X86-NEXT: pcmpeqd %xmm2, %xmm2 +; X86-NEXT: pxor %xmm1, %xmm2 +; X86-NEXT: paddd %xmm2, %xmm0 +; X86-NEXT: retl ; ; X64-LIN-LABEL: vec_add_of_not_decrement: ; X64-LIN: # %bb.0: @@ -634,12 +624,12 @@ define <4 x i32> @vec_add_of_not_decrement(<4 x i32> %x, <4 x i32> %y) { } define <4 x i32> @vec_add_of_not_with_undef(<4 x i32> %x, <4 x i32> %y) { -; X32-LABEL: vec_add_of_not_with_undef: -; X32: # %bb.0: -; X32-NEXT: psubd %xmm1, %xmm0 -; X32-NEXT: pcmpeqd %xmm1, %xmm1 -; X32-NEXT: paddd %xmm1, %xmm0 -; X32-NEXT: retl +; X86-LABEL: vec_add_of_not_with_undef: +; X86: # %bb.0: +; X86-NEXT: psubd %xmm1, %xmm0 +; X86-NEXT: pcmpeqd %xmm1, %xmm1 +; X86-NEXT: paddd %xmm1, %xmm0 +; X86-NEXT: retl ; ; X64-LIN-LABEL: vec_add_of_not_with_undef: ; X64-LIN: # %bb.0: @@ -661,12 +651,12 @@ define <4 x i32> @vec_add_of_not_with_undef(<4 x i32> %x, <4 x i32> %y) { } define <4 x i32> @vec_add_of_not_with_undef_decrement(<4 x i32> %x, <4 x i32> %y) { -; X32-LABEL: vec_add_of_not_with_undef_decrement: -; X32: # %bb.0: -; X32-NEXT: psubd %xmm1, %xmm0 -; X32-NEXT: pcmpeqd %xmm1, %xmm1 -; X32-NEXT: psubd %xmm1, %xmm0 -; X32-NEXT: retl +; X86-LABEL: vec_add_of_not_with_undef_decrement: +; X86: # %bb.0: +; X86-NEXT: psubd %xmm1, %xmm0 +; X86-NEXT: pcmpeqd %xmm1, %xmm1 +; X86-NEXT: psubd %xmm1, %xmm0 +; X86-NEXT: retl ; ; X64-LIN-LABEL: vec_add_of_not_with_undef_decrement: ; X64-LIN: # %bb.0: