150
|
1 // REQUIRES: powerpc-registered-target
|
|
2
|
|
3 // Verify ABI selection by the front end
|
|
4
|
|
5 // RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm -o - %s \
|
|
6 // RUN: | FileCheck %s --check-prefix=CHECK-ELFv1
|
|
7 // RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm -o - %s \
|
|
8 // RUN: -target-abi elfv1 | FileCheck %s --check-prefix=CHECK-ELFv1
|
|
9 // RUN: %clang_cc1 -triple powerpc64-unknown-linux-gnu -emit-llvm -o - %s \
|
|
10 // RUN: -target-abi elfv2 | FileCheck %s --check-prefix=CHECK-ELFv2
|
|
11 // RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm -o - %s \
|
|
12 // RUN: | FileCheck %s --check-prefix=CHECK-ELFv2
|
|
13 // RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm -o - %s \
|
|
14 // RUN: -target-abi elfv1 | FileCheck %s --check-prefix=CHECK-ELFv1
|
|
15 // RUN: %clang_cc1 -triple powerpc64le-unknown-linux-gnu -emit-llvm -o - %s \
|
|
16 // RUN: -target-abi elfv2 | FileCheck %s --check-prefix=CHECK-ELFv2
|
|
17
|
207
|
18 // CHECK-ELFv1: define{{.*}} void @func_fab(%struct.fab* noalias sret(%struct.fab) align 4 %agg.result, i64 %x.coerce)
|
|
19 // CHECK-ELFv2: define{{.*}} [2 x float] @func_fab([2 x float] %x.coerce)
|
150
|
20 struct fab { float a; float b; };
|
|
21 struct fab func_fab(struct fab x) { return x; }
|