| 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 | |