1f64ea095SDale Johannesen; RUN: llvm-as < %s | llvm-dis | FileCheck %s
2*c8eccd11SDuncan P. N. Exon Smith; RUN: verify-uselistorder %s
3f64ea095SDale Johannesentarget 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"
4f64ea095SDale Johannesentarget triple = "i386-apple-darwin10.0"
5f64ea095SDale Johannesen
6f64ea095SDale Johannesendefine void @test1() nounwind {
7f64ea095SDale Johannesen; CHECK: test1
8f64ea095SDale Johannesen; CHECK: sideeffect
9f64ea095SDale Johannesen; CHECK-NOT: alignstack
10f64ea095SDale Johannesen	tail call void asm sideeffect "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
11f64ea095SDale Johannesen	ret void
12f64ea095SDale Johannesen; CHECK: ret
13f64ea095SDale Johannesen}
14f64ea095SDale Johannesendefine void @test2() nounwind {
15f64ea095SDale Johannesen; CHECK: test2
16f64ea095SDale Johannesen; CHECK: sideeffect
17f64ea095SDale Johannesen; CHECK: alignstack
18f64ea095SDale Johannesen	tail call void asm sideeffect alignstack "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
19f64ea095SDale Johannesen	ret void
20f64ea095SDale Johannesen; CHECK: ret
21f64ea095SDale Johannesen}
22f64ea095SDale Johannesendefine void @test3() nounwind {
23f64ea095SDale Johannesen; CHECK: test3
24f64ea095SDale Johannesen; CHECK-NOT: sideeffect
25f64ea095SDale Johannesen; CHECK: alignstack
26f64ea095SDale Johannesen	tail call void asm alignstack "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
27f64ea095SDale Johannesen	ret void
28f64ea095SDale Johannesen; CHECK: ret
29f64ea095SDale Johannesen}
30f64ea095SDale Johannesendefine void @test4() nounwind {
31f64ea095SDale Johannesen; CHECK: test4
32f64ea095SDale Johannesen; CHECK-NOT: sideeffect
33f64ea095SDale Johannesen; CHECK-NOT: alignstack
34f64ea095SDale Johannesen	tail call void asm  "mov", "~{dirflag},~{fpsr},~{flags}"() nounwind
35f64ea095SDale Johannesen	ret void
36f64ea095SDale Johannesen; CHECK: ret
37f64ea095SDale Johannesen}
38