diff options
author | Hans Wennborg <hans@hanshq.net> | 2016-09-09 22:37:27 +0000 |
---|---|---|
committer | Hans Wennborg <hans@hanshq.net> | 2016-09-09 22:37:27 +0000 |
commit | 6ecf619be99be4181cb677f066159bc05901d720 (patch) | |
tree | 74a553b6e4eaaa296d11d88677d03cc60b0fb267 /llvm/test | |
parent | 0efdd06b22e697ae072bbe76071cb53b8ffb1ee0 (diff) | |
download | bcm5719-llvm-6ecf619be99be4181cb677f066159bc05901d720.tar.gz bcm5719-llvm-6ecf619be99be4181cb677f066159bc05901d720.zip |
X86: Fold tail calls into conditional branches also for 64-bit (PR26302)
This extends the optimization in r280832 to also work for 64-bit. The only
quirk is that we can't do this for 64-bit Windows (yet).
Differential Revision: https://reviews.llvm.org/D24423
llvm-svn: 281113
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/X86/conditional-tailcall.ll | 1 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/shrink-compare.ll | 6 |
2 files changed, 4 insertions, 3 deletions
diff --git a/llvm/test/CodeGen/X86/conditional-tailcall.ll b/llvm/test/CodeGen/X86/conditional-tailcall.ll index a317017311a..5dfdfd49ceb 100644 --- a/llvm/test/CodeGen/X86/conditional-tailcall.ll +++ b/llvm/test/CodeGen/X86/conditional-tailcall.ll @@ -1,4 +1,5 @@ ; RUN: llc < %s -mtriple=i686-linux -show-mc-encoding | FileCheck %s +; RUN: llc < %s -mtriple=x86_64-linux -show-mc-encoding | FileCheck %s declare void @foo() declare void @bar() diff --git a/llvm/test/CodeGen/X86/shrink-compare.ll b/llvm/test/CodeGen/X86/shrink-compare.ll index 0efa073cb19..41f5d2d5be2 100644 --- a/llvm/test/CodeGen/X86/shrink-compare.ll +++ b/llvm/test/CodeGen/X86/shrink-compare.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=x86-64 | FileCheck %s +; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s declare void @bar() @@ -93,7 +93,7 @@ if.end: ; CHECK-LABEL: test2_1: ; CHECK: movzbl ; CHECK: cmpl $256 -; CHECK: jne +; CHECK: je bar define void @test2_1(i32 %X) nounwind minsize { entry: %and = and i32 %X, 255 @@ -223,7 +223,7 @@ if.end: ; CHECK-LABEL: test_sext_i8_icmp_255: ; CHECK: movb $1, ; CHECK: testb -; CHECK: jne +; CHECK: je bar define void @test_sext_i8_icmp_255(i8 %x) nounwind minsize { entry: %sext = sext i8 %x to i32 |