summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/mips64-padding-arg.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGen/mips64-padding-arg.c')
-rw-r--r--clang/test/CodeGen/mips64-padding-arg.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/CodeGen/mips64-padding-arg.c b/clang/test/CodeGen/mips64-padding-arg.c
index b2403b2b778..2d635c332f2 100644
--- a/clang/test/CodeGen/mips64-padding-arg.c
+++ b/clang/test/CodeGen/mips64-padding-arg.c
@@ -1,5 +1,6 @@
// RUN: %clang -target mipsel-unknown-linux -O3 -S -o - -emit-llvm %s | FileCheck %s -check-prefix=O32
// RUN: %clang -target mips64el-unknown-linux -O3 -S -mabi=n64 -o - -emit-llvm %s | FileCheck %s -check-prefix=N64
+// RUN: %clang -target mipsel-unknown-linux -mfp64 -O3 -S -o - -emit-llvm %s | FileCheck %s -check-prefix=O32-FP64
typedef struct {
double d;
@@ -53,3 +54,20 @@ void foo7(float a0, double a1) {
foo8(a0 + 1.0f, a1 + 2.0);
}
+// O32-LABEL: define void @foo9()
+// O32: declare void @foo10(i32, i32
+// O32-FP64-LABEL: define void @foo9()
+// O32-FP64: declare void @foo10(i32, i96
+
+typedef struct __attribute__((aligned(16))) {
+ int a;
+} S16;
+
+S16 s16;
+
+void foo10(int, S16);
+
+void foo9(void) {
+ foo10(1, s16);
+}
+
OpenPOWER on IntegriCloud