1 | // RUN: %clang_cc1 -triple mipsel-unknown-linux -O3 -S -o - -emit-llvm %s | FileCheck %s -check-prefix=O32 |
2 | // RUN: %clang_cc1 -triple mips64el-unknown-linux -O3 -S -target-abi n64 -o - -emit-llvm %s | FileCheck %s -check-prefix=N64 |
3 | |
4 | typedef struct { |
5 | float f[3]; |
6 | } S0; |
7 | |
8 | extern void foo2(S0); |
9 | |
10 | // O32-LABEL: define void @foo1(i32 inreg %a0.coerce0, i32 inreg %a0.coerce1, i32 inreg %a0.coerce2) |
11 | // N64-LABEL: define void @foo1(i64 inreg %a0.coerce0, i32 inreg %a0.coerce1) |
12 | |
13 | void foo1(S0 a0) { |
14 | foo2(a0); |
15 | } |
16 | |