When removing a function from the function set and adding it to deferred, we
[llvm.git] / test / Assembler / alignstack.ll
blob9f2059f722fa984ff701ed30d567e7e20e09751e
1 ; RUN: llvm-as < %s | llvm-dis | FileCheck %s
2 target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
3 target triple = "i386-apple-darwin10.0"
5 define void @test1() nounwind {
6 ; CHECK: test1
7 ; CHECK: sideeffect
8 ; CHECK-NOT: alignstack
9         tail call void asm sideeffect "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
10         ret void
11 ; CHECK: ret
13 define void @test2() nounwind {
14 ; CHECK: test2
15 ; CHECK: sideeffect
16 ; CHECK: alignstack
17         tail call void asm sideeffect alignstack "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
18         ret void
19 ; CHECK: ret
21 define void @test3() nounwind {
22 ; CHECK: test3
23 ; CHECK-NOT: sideeffect
24 ; CHECK: alignstack
25         tail call void asm alignstack "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
26         ret void
27 ; CHECK: ret
29 define void @test4() nounwind {
30 ; CHECK: test4
31 ; CHECK-NOT: sideeffect
32 ; CHECK-NOT: alignstack
33         tail call void asm  "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
34         ret void
35 ; CHECK: ret