This should always be signed chars, so use int8_t. This fixes a miscompile when
[llvm/stm8.git] / test / CodeGen / X86 / byval.ll
blob185eda1566d48900d4bd56cdf370e6f97d8af602
1 ; RUN: llc < %s -mtriple=x86_64-linux | FileCheck -check-prefix=X86-64 %s
2 ; Win64 has not supported byval yet.
3 ; RUN: llc < %s -march=x86 | FileCheck -check-prefix=X86 %s
5 ; X86: movl     4(%esp), %eax
6 ; X86: movl     8(%esp), %edx
8 ; X86-64: movq  8(%rsp), %rax
10 %struct.s = type { i64, i64, i64 }
12 define i64 @f(%struct.s* byval %a) {
13 entry:
14         %tmp2 = getelementptr %struct.s* %a, i32 0, i32 0
15         %tmp3 = load i64* %tmp2, align 8
16         ret i64 %tmp3