From: Simon Pilgrim Date: Mon, 9 Nov 2020 14:45:48 +0000 (+0000) Subject: [X86] Replace X32 check-prefix with X86 and remove unused X64 common prefix X-Git-Tag: llvmorg-13-init~6699 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b3251c09143e1319549a97436df320a6ed465aaa;p=platform%2Fupstream%2Fllvm.git [X86] Replace X32 check-prefix with X86 and remove unused X64 common prefix We try to use X32 for gnux32 triple tests --- diff --git a/llvm/test/CodeGen/X86/add.ll b/llvm/test/CodeGen/X86/add.ll index 7681c7c..9785ae2 100644 --- a/llvm/test/CodeGen/X86/add.ll +++ b/llvm/test/CodeGen/X86/add.ll @@ -1,7 +1,7 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc < %s -mtriple=i686-unknown-unknown | FileCheck %s --check-prefix=X32 -; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s --check-prefixes=X64,X64-LINUX -; RUN: llc < %s -mtriple=x86_64-win32 | FileCheck %s --check-prefixes=X64,X64-WIN32 +; RUN: llc < %s -mtriple=i686-unknown-unknown | FileCheck %s --check-prefix=X86 +; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s --check-prefix=X64-LINUX +; RUN: llc < %s -mtriple=x86_64-win32 | FileCheck %s --check-prefix=X64-WIN32 declare {i32, i1} @llvm.sadd.with.overflow.i32(i32, i32) declare {i32, i1} @llvm.uadd.with.overflow.i32(i32, i32) @@ -9,10 +9,10 @@ declare {i32, i1} @llvm.uadd.with.overflow.i32(i32, i32) ; The immediate can be encoded in a smaller way if the ; instruction is a sub instead of an add. define i32 @test1(i32 inreg %a) nounwind { -; X32-LABEL: test1: -; X32: # %bb.0: # %entry -; X32-NEXT: subl $-128, %eax -; X32-NEXT: retl +; X86-LABEL: test1: +; X86: # %bb.0: # %entry +; X86-NEXT: subl $-128, %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test1: ; X64-LINUX: # %bb.0: # %entry @@ -31,12 +31,12 @@ entry: } define i32 @test1b(i32* %p) nounwind { -; X32-LABEL: test1b: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl (%eax), %eax -; X32-NEXT: subl $-128, %eax -; X32-NEXT: retl +; X86-LABEL: test1b: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl (%eax), %eax +; X86-NEXT: subl $-128, %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test1b: ; X64-LINUX: # %bb.0: # %entry @@ -56,11 +56,11 @@ entry: } define i64 @test2(i64 inreg %a) nounwind { -; X32-LABEL: test2: -; X32: # %bb.0: # %entry -; X32-NEXT: addl $-2147483648, %eax # imm = 0x80000000 -; X32-NEXT: adcl $0, %edx -; X32-NEXT: retl +; X86-LABEL: test2: +; X86: # %bb.0: # %entry +; X86-NEXT: addl $-2147483648, %eax # imm = 0x80000000 +; X86-NEXT: adcl $0, %edx +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test2: ; X64-LINUX: # %bb.0: # %entry @@ -78,11 +78,11 @@ entry: ret i64 %b } define i64 @test3(i64 inreg %a) nounwind { -; X32-LABEL: test3: -; X32: # %bb.0: # %entry -; X32-NEXT: addl $128, %eax -; X32-NEXT: adcl $0, %edx -; X32-NEXT: retl +; X86-LABEL: test3: +; X86: # %bb.0: # %entry +; X86-NEXT: addl $128, %eax +; X86-NEXT: adcl $0, %edx +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test3: ; X64-LINUX: # %bb.0: # %entry @@ -99,14 +99,14 @@ entry: } define i64 @test3b(i64* %p) nounwind { -; X32-LABEL: test3b: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movl 4(%ecx), %edx -; X32-NEXT: movl $128, %eax -; X32-NEXT: addl (%ecx), %eax -; X32-NEXT: adcl $0, %edx -; X32-NEXT: retl +; X86-LABEL: test3b: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movl 4(%ecx), %edx +; X86-NEXT: movl $128, %eax +; X86-NEXT: addl (%ecx), %eax +; X86-NEXT: adcl $0, %edx +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test3b: ; X64-LINUX: # %bb.0: # %entry @@ -126,17 +126,17 @@ entry: } define i1 @test4(i32 %v1, i32 %v2, i32* %X) nounwind { -; X32-LABEL: test4: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: jo .LBB5_2 -; X32-NEXT: # %bb.1: # %normal -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl $0, (%eax) -; X32-NEXT: .LBB5_2: # %overflow -; X32-NEXT: xorl %eax, %eax -; X32-NEXT: retl +; X86-LABEL: test4: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: jo .LBB5_2 +; X86-NEXT: # %bb.1: # %normal +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl $0, (%eax) +; X86-NEXT: .LBB5_2: # %overflow +; X86-NEXT: xorl %eax, %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test4: ; X64-LINUX: # %bb.0: # %entry @@ -172,17 +172,17 @@ overflow: } define i1 @test5(i32 %v1, i32 %v2, i32* %X) nounwind { -; X32-LABEL: test5: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: jb .LBB6_2 -; X32-NEXT: # %bb.1: # %normal -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl $0, (%eax) -; X32-NEXT: .LBB6_2: # %carry -; X32-NEXT: xorl %eax, %eax -; X32-NEXT: retl +; X86-LABEL: test5: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: jb .LBB6_2 +; X86-NEXT: # %bb.1: # %normal +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl $0, (%eax) +; X86-NEXT: .LBB6_2: # %carry +; X86-NEXT: xorl %eax, %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test5: ; X64-LINUX: # %bb.0: # %entry @@ -218,12 +218,12 @@ carry: } define i64 @test6(i64 %A, i32 %B) nounwind { -; X32-LABEL: test6: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl {{[0-9]+}}(%esp), %edx -; X32-NEXT: addl {{[0-9]+}}(%esp), %edx -; X32-NEXT: retl +; X86-LABEL: test6: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl {{[0-9]+}}(%esp), %edx +; X86-NEXT: addl {{[0-9]+}}(%esp), %edx +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test6: ; X64-LINUX: # %bb.0: # %entry @@ -246,12 +246,12 @@ entry: } define {i32, i1} @test7(i32 %v1, i32 %v2) nounwind { -; X32-LABEL: test7: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: setb %dl -; X32-NEXT: retl +; X86-LABEL: test7: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: setb %dl +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test7: ; X64-LINUX: # %bb.0: # %entry @@ -273,14 +273,14 @@ entry: ; PR5443 define {i64, i1} @test8(i64 %left, i64 %right) nounwind { -; X32-LABEL: test8: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl {{[0-9]+}}(%esp), %edx -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: adcl {{[0-9]+}}(%esp), %edx -; X32-NEXT: setb %cl -; X32-NEXT: retl +; X86-LABEL: test8: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl {{[0-9]+}}(%esp), %edx +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: adcl {{[0-9]+}}(%esp), %edx +; X86-NEXT: setb %cl +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test8: ; X64-LINUX: # %bb.0: # %entry @@ -308,14 +308,14 @@ entry: } define i32 @test9(i32 %x, i32 %y) nounwind readnone { -; X32-LABEL: test9: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: xorl %ecx, %ecx -; X32-NEXT: cmpl $10, {{[0-9]+}}(%esp) -; X32-NEXT: sete %cl -; X32-NEXT: subl %ecx, %eax -; X32-NEXT: retl +; X86-LABEL: test9: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: xorl %ecx, %ecx +; X86-NEXT: cmpl $10, {{[0-9]+}}(%esp) +; X86-NEXT: sete %cl +; X86-NEXT: subl %ecx, %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test9: ; X64-LINUX: # %bb.0: # %entry @@ -342,12 +342,12 @@ entry: } define i1 @test10(i32 %x) nounwind { -; X32-LABEL: test10: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: incl %eax -; X32-NEXT: seto %al -; X32-NEXT: retl +; X86-LABEL: test10: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: incl %eax +; X86-NEXT: seto %al +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test10: ; X64-LINUX: # %bb.0: # %entry @@ -367,10 +367,10 @@ entry: } define void @test11(i32* inreg %a) nounwind { -; X32-LABEL: test11: -; X32: # %bb.0: # %entry -; X32-NEXT: subl $-128, (%eax) -; X32-NEXT: retl +; X86-LABEL: test11: +; X86: # %bb.0: # %entry +; X86-NEXT: subl $-128, (%eax) +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test11: ; X64-LINUX: # %bb.0: # %entry @@ -389,11 +389,11 @@ entry: } define void @test12(i64* inreg %a) nounwind { -; X32-LABEL: test12: -; X32: # %bb.0: # %entry -; X32-NEXT: addl $-2147483648, (%eax) # imm = 0x80000000 -; X32-NEXT: adcl $0, 4(%eax) -; X32-NEXT: retl +; X86-LABEL: test12: +; X86: # %bb.0: # %entry +; X86-NEXT: addl $-2147483648, (%eax) # imm = 0x80000000 +; X86-NEXT: adcl $0, 4(%eax) +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test12: ; X64-LINUX: # %bb.0: # %entry @@ -412,11 +412,11 @@ entry: } define void @test13(i64* inreg %a) nounwind { -; X32-LABEL: test13: -; X32: # %bb.0: # %entry -; X32-NEXT: addl $128, (%eax) -; X32-NEXT: adcl $0, 4(%eax) -; X32-NEXT: retl +; X86-LABEL: test13: +; X86: # %bb.0: # %entry +; X86-NEXT: addl $128, (%eax) +; X86-NEXT: adcl $0, 4(%eax) +; X86-NEXT: retl ; ; X64-LINUX-LABEL: test13: ; X64-LINUX: # %bb.0: # %entry @@ -435,11 +435,11 @@ entry: } define i32 @inc_not(i32 %a) { -; X32-LABEL: inc_not: -; X32: # %bb.0: -; X32-NEXT: xorl %eax, %eax -; X32-NEXT: subl {{[0-9]+}}(%esp), %eax -; X32-NEXT: retl +; X86-LABEL: inc_not: +; X86: # %bb.0: +; X86-NEXT: xorl %eax, %eax +; X86-NEXT: subl {{[0-9]+}}(%esp), %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: inc_not: ; X64-LINUX: # %bb.0: @@ -458,26 +458,26 @@ define i32 @inc_not(i32 %a) { } define <4 x i32> @inc_not_vec(<4 x i32> %a) nounwind { -; X32-LABEL: inc_not_vec: -; X32: # %bb.0: -; X32-NEXT: pushl %edi -; X32-NEXT: pushl %esi -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: xorl %ecx, %ecx -; X32-NEXT: xorl %edx, %edx -; X32-NEXT: subl {{[0-9]+}}(%esp), %edx -; X32-NEXT: xorl %esi, %esi -; X32-NEXT: subl {{[0-9]+}}(%esp), %esi -; X32-NEXT: xorl %edi, %edi -; X32-NEXT: subl {{[0-9]+}}(%esp), %edi -; X32-NEXT: subl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movl %ecx, 12(%eax) -; X32-NEXT: movl %edi, 8(%eax) -; X32-NEXT: movl %esi, 4(%eax) -; X32-NEXT: movl %edx, (%eax) -; X32-NEXT: popl %esi -; X32-NEXT: popl %edi -; X32-NEXT: retl $4 +; X86-LABEL: inc_not_vec: +; X86: # %bb.0: +; X86-NEXT: pushl %edi +; X86-NEXT: pushl %esi +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: xorl %ecx, %ecx +; X86-NEXT: xorl %edx, %edx +; X86-NEXT: subl {{[0-9]+}}(%esp), %edx +; X86-NEXT: xorl %esi, %esi +; X86-NEXT: subl {{[0-9]+}}(%esp), %esi +; X86-NEXT: xorl %edi, %edi +; X86-NEXT: subl {{[0-9]+}}(%esp), %edi +; X86-NEXT: subl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movl %ecx, 12(%eax) +; X86-NEXT: movl %edi, 8(%eax) +; X86-NEXT: movl %esi, 4(%eax) +; X86-NEXT: movl %edx, (%eax) +; X86-NEXT: popl %esi +; X86-NEXT: popl %edi +; X86-NEXT: retl $4 ; ; X64-LINUX-LABEL: inc_not_vec: ; X64-LINUX: # %bb.0: @@ -497,15 +497,15 @@ define <4 x i32> @inc_not_vec(<4 x i32> %a) nounwind { } define void @uaddo1_not(i32 %a, i32* %p0, i1* %p1) { -; X32-LABEL: uaddo1_not: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: xorl %edx, %edx -; X32-NEXT: subl {{[0-9]+}}(%esp), %edx -; X32-NEXT: movl %edx, (%ecx) -; X32-NEXT: setae (%eax) -; X32-NEXT: retl +; X86-LABEL: uaddo1_not: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: xorl %edx, %edx +; X86-NEXT: subl {{[0-9]+}}(%esp), %edx +; X86-NEXT: movl %edx, (%ecx) +; X86-NEXT: setae (%eax) +; X86-NEXT: retl ; ; X64-LINUX-LABEL: uaddo1_not: ; X64-LINUX: # %bb.0: @@ -530,11 +530,11 @@ define void @uaddo1_not(i32 %a, i32* %p0, i1* %p1) { } define i32 @add_to_sub(i32 %a, i32 %b) { -; X32-LABEL: add_to_sub: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: subl {{[0-9]+}}(%esp), %eax -; X32-NEXT: retl +; X86-LABEL: add_to_sub: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: subl {{[0-9]+}}(%esp), %eax +; X86-NEXT: retl ; ; X64-LINUX-LABEL: add_to_sub: ; X64-LINUX: # %bb.0: @@ -558,19 +558,19 @@ declare void @bar_i64(i64) ; Make sure we can use sub -128 for add 128 when the flags are used. define void @add_i32_128_flag(i32 %x) { -; X32-LABEL: add_i32_128_flag: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: subl $-128, %eax -; X32-NEXT: je .LBB19_2 -; X32-NEXT: # %bb.1: # %if.then -; X32-NEXT: pushl %eax -; X32-NEXT: .cfi_adjust_cfa_offset 4 -; X32-NEXT: calll bar_i32 -; X32-NEXT: addl $4, %esp -; X32-NEXT: .cfi_adjust_cfa_offset -4 -; X32-NEXT: .LBB19_2: # %if.end -; X32-NEXT: retl +; X86-LABEL: add_i32_128_flag: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: subl $-128, %eax +; X86-NEXT: je .LBB19_2 +; X86-NEXT: # %bb.1: # %if.then +; X86-NEXT: pushl %eax +; X86-NEXT: .cfi_adjust_cfa_offset 4 +; X86-NEXT: calll bar_i32 +; X86-NEXT: addl $4, %esp +; X86-NEXT: .cfi_adjust_cfa_offset -4 +; X86-NEXT: .LBB19_2: # %if.end +; X86-NEXT: retl ; ; X64-LINUX-LABEL: add_i32_128_flag: ; X64-LINUX: # %bb.0: # %entry @@ -604,25 +604,25 @@ if.end: ; Make sure we can use sub -128 for add 128 when the flags are used. define void @add_i64_128_flag(i64 %x) { -; X32-LABEL: add_i64_128_flag: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movl $128, %eax -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: adcl $0, %ecx -; X32-NEXT: movl %eax, %edx -; X32-NEXT: orl %ecx, %edx -; X32-NEXT: je .LBB20_2 -; X32-NEXT: # %bb.1: # %if.then -; X32-NEXT: pushl %ecx -; X32-NEXT: .cfi_adjust_cfa_offset 4 -; X32-NEXT: pushl %eax -; X32-NEXT: .cfi_adjust_cfa_offset 4 -; X32-NEXT: calll bar_i64 -; X32-NEXT: addl $8, %esp -; X32-NEXT: .cfi_adjust_cfa_offset -8 -; X32-NEXT: .LBB20_2: # %if.end -; X32-NEXT: retl +; X86-LABEL: add_i64_128_flag: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movl $128, %eax +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: adcl $0, %ecx +; X86-NEXT: movl %eax, %edx +; X86-NEXT: orl %ecx, %edx +; X86-NEXT: je .LBB20_2 +; X86-NEXT: # %bb.1: # %if.then +; X86-NEXT: pushl %ecx +; X86-NEXT: .cfi_adjust_cfa_offset 4 +; X86-NEXT: pushl %eax +; X86-NEXT: .cfi_adjust_cfa_offset 4 +; X86-NEXT: calll bar_i64 +; X86-NEXT: addl $8, %esp +; X86-NEXT: .cfi_adjust_cfa_offset -8 +; X86-NEXT: .LBB20_2: # %if.end +; X86-NEXT: retl ; ; X64-LINUX-LABEL: add_i64_128_flag: ; X64-LINUX: # %bb.0: # %entry @@ -656,25 +656,25 @@ if.end: ; Make sure we can use sub -2147483648 for add 2147483648 when the flags are used. define void @add_i64_2147483648_flag(i64 %x) { -; X32-LABEL: add_i64_2147483648_flag: -; X32: # %bb.0: # %entry -; X32-NEXT: movl {{[0-9]+}}(%esp), %ecx -; X32-NEXT: movl $-2147483648, %eax # imm = 0x80000000 -; X32-NEXT: addl {{[0-9]+}}(%esp), %eax -; X32-NEXT: adcl $0, %ecx -; X32-NEXT: movl %eax, %edx -; X32-NEXT: orl %ecx, %edx -; X32-NEXT: je .LBB21_2 -; X32-NEXT: # %bb.1: # %if.then -; X32-NEXT: pushl %ecx -; X32-NEXT: .cfi_adjust_cfa_offset 4 -; X32-NEXT: pushl %eax -; X32-NEXT: .cfi_adjust_cfa_offset 4 -; X32-NEXT: calll bar_i64 -; X32-NEXT: addl $8, %esp -; X32-NEXT: .cfi_adjust_cfa_offset -8 -; X32-NEXT: .LBB21_2: # %if.end -; X32-NEXT: retl +; X86-LABEL: add_i64_2147483648_flag: +; X86: # %bb.0: # %entry +; X86-NEXT: movl {{[0-9]+}}(%esp), %ecx +; X86-NEXT: movl $-2147483648, %eax # imm = 0x80000000 +; X86-NEXT: addl {{[0-9]+}}(%esp), %eax +; X86-NEXT: adcl $0, %ecx +; X86-NEXT: movl %eax, %edx +; X86-NEXT: orl %ecx, %edx +; X86-NEXT: je .LBB21_2 +; X86-NEXT: # %bb.1: # %if.then +; X86-NEXT: pushl %ecx +; X86-NEXT: .cfi_adjust_cfa_offset 4 +; X86-NEXT: pushl %eax +; X86-NEXT: .cfi_adjust_cfa_offset 4 +; X86-NEXT: calll bar_i64 +; X86-NEXT: addl $8, %esp +; X86-NEXT: .cfi_adjust_cfa_offset -8 +; X86-NEXT: .LBB21_2: # %if.end +; X86-NEXT: retl ; ; X64-LINUX-LABEL: add_i64_2147483648_flag: ; X64-LINUX: # %bb.0: # %entry