Stackmap shadows should consider call returns a branch target.
[oota-llvm.git] / test / CodeGen / X86 / fast-isel-tailcall.ll
1 ; RUN: llc < %s -fast-isel -tailcallopt -march=x86 | FileCheck %s
2 ; CHECK-NOT: add
3 ; PR4154
4
5 ; On x86, -tailcallopt changes the ABI so the caller shouldn't readjust
6 ; the stack pointer after the call in this code.
7
8 define i32 @stub(i8* %t0) nounwind {
9 entry:
10         %t1 = load i32* inttoptr (i32 139708680 to i32*)         ; <i32> [#uses=1]
11         %t2 = bitcast i8* %t0 to i32 (i32)*               ; <i32 (i32)*> [#uses=1]
12         %t3 = call fastcc i32 %t2(i32 %t1)         ; <i32> [#uses=1]
13         ret i32 %t3
14 }