blob: 0bbb24f6ecdf33b9f375da3a2f7f3a2514a9cc32 [file] [log] [blame]
Dale Johannesenf1e309e2010-07-02 20:16:09 +00001; RUN: llc < %s -mtriple=x86_64-apple-darwin10 | FileCheck %s
2
3define void @foo() nounwind ssp {
4entry:
5; CHECK: foo
Evan Cheng7158e082011-01-03 22:53:22 +00006; CHECK: pushq
Dale Johannesenf1e309e2010-07-02 20:16:09 +00007; CHECK: int $3
8 call void asm sideeffect alignstack "# top of block", "~{dirflag},~{fpsr},~{flags},~{edi},~{esi},~{edx},~{ecx},~{eax}"() nounwind
9 call void asm sideeffect alignstack ".file \22small.c\22", "~{dirflag},~{fpsr},~{flags}"() nounwind
10 call void asm sideeffect alignstack ".line 3", "~{dirflag},~{fpsr},~{flags}"() nounwind
11 call void asm sideeffect alignstack "int $$3", "~{dirflag},~{fpsr},~{flags},~{memory}"() nounwind
12 br label %return
13
14return: ; preds = %entry
15 ret void
16}
17
18define void @bar() nounwind ssp {
19entry:
20; CHECK: bar
Evan Cheng7158e082011-01-03 22:53:22 +000021; CHECK-NOT: pushq
Dale Johannesenf1e309e2010-07-02 20:16:09 +000022; CHECK: int $3
23 call void asm sideeffect "# top of block", "~{dirflag},~{fpsr},~{flags},~{edi},~{esi},~{edx},~{ecx},~{eax}"() nounwind
24 call void asm sideeffect ".file \22small.c\22", "~{dirflag},~{fpsr},~{flags}"() nounwind
25 call void asm sideeffect ".line 3", "~{dirflag},~{fpsr},~{flags}"() nounwind
26 call void asm sideeffect "int $$3", "~{dirflag},~{fpsr},~{flags},~{memory}"() nounwind
27 br label %return
28
29return: ; preds = %entry
30 ret void
31}