xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGen/mips-byval-arg.c (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc // RUN: %clang -target mipsel-unknown-linux -O3 -S -o - -emit-llvm %s | FileCheck %s -check-prefix=O32
2*f4a2713aSLionel Sambuc // RUN: %clang -target mips64el-unknown-linux -O3 -S -mabi=n64 -o - -emit-llvm %s | FileCheck %s -check-prefix=N64
3*f4a2713aSLionel Sambuc 
4*f4a2713aSLionel Sambuc typedef struct {
5*f4a2713aSLionel Sambuc   float f[3];
6*f4a2713aSLionel Sambuc } S0;
7*f4a2713aSLionel Sambuc 
8*f4a2713aSLionel Sambuc extern void foo2(S0);
9*f4a2713aSLionel Sambuc 
10*f4a2713aSLionel Sambuc // O32-LABEL: define void @foo1(i32 %a0.coerce0, i32 %a0.coerce1, i32 %a0.coerce2)
11*f4a2713aSLionel Sambuc // N64-LABEL: define void @foo1(i64 %a0.coerce0, i32 %a0.coerce1)
12*f4a2713aSLionel Sambuc 
13*f4a2713aSLionel Sambuc void foo1(S0 a0) {
14*f4a2713aSLionel Sambuc   foo2(a0);
15*f4a2713aSLionel Sambuc }
16