This should always be signed chars, so use int8_t. This fixes a miscompile when
[llvm/stm8.git] / test / CodeGen / X86 / 2010-07-02-asm-alignstack.ll
blob0bbb24f6ecdf33b9f375da3a2f7f3a2514a9cc32
1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin10 | FileCheck %s
3 define void @foo() nounwind ssp {
4 entry:
5 ; CHECK: foo
6 ; CHECK: pushq
7 ; 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
14 return:                                           ; preds = %entry
15   ret void
18 define void @bar() nounwind ssp {
19 entry:
20 ; CHECK: bar
21 ; CHECK-NOT: pushq
22 ; 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
29 return:                                           ; preds = %entry
30   ret void