150
|
1 // RUN: %clang -target x86_64-apple-darwin -arch armv6m -resource-dir=%S/Inputs/resource_dir %s -### 2> %t
|
|
2 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
3 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -mfloat-abi=soft -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
4
|
|
5 // RUN: %clang -target x86_64-apple-darwin -arch armv7m -fPIC -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
6 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -fPIC -mfloat-abi=hard -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
7 // RUN: %clang -target x86_64-apple-darwin -arch armv7em -fPIC -mfloat-abi=softfp -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
8 // RUN: %clang -target x86_64-apple-none-macho -arch armv7 -mhard-float -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
9 // RUN: %clang -target x86_64-apple-none-macho -arch armv7 -msoft-float -fPIC -resource-dir=%S/Inputs/resource_dir %s -### 2>> %t
|
|
10
|
|
11
|
|
12 // RUN: FileCheck %s < %t
|
|
13
|
|
14 // ARMv6m has no float
|
|
15 // CHECK-LABEL: Target:
|
|
16 // CHECK-NOT: warning: unknown platform
|
|
17 // CHECK: "-mfloat-abi" "soft"
|
|
18 // CHECK: libclang_rt.soft_static.a
|
|
19
|
|
20 // ARMv7em does
|
|
21 // CHECK-LABEL: Target:
|
|
22 // CHECK-NOT: warning: unknown platform
|
|
23 // CHECK: "-mfloat-abi" "hard"
|
|
24 // CHECK: libclang_rt.hard_static.a
|
|
25
|
|
26 // but the ABI can be overridden
|
|
27 // CHECK-LABEL: Target:
|
|
28 // CHECK-NOT: warning: unknown platform
|
|
29 // CHECK: "-target-feature" "+soft-float"
|
|
30 // CHECK: "-mfloat-abi" "soft"
|
|
31 // CHECK: libclang_rt.soft_static.a
|
|
32
|
|
33 // ARMv7m has no float either
|
|
34 // CHECK-LABEL: Target:
|
|
35 // CHECK-NOT: warning: unknown platform
|
|
36 // CHECK: "-mfloat-abi" "soft"
|
|
37 // CHECK: libclang_rt.soft_pic.a
|
|
38
|
|
39 // But it can be enabled on ARMv7em
|
|
40 // CHECK-LABEL: Target:
|
|
41 // CHECK-NOT: warning: unknown platform
|
|
42 // CHECK: "-mfloat-abi" "hard"
|
|
43 // CHECK: libclang_rt.hard_pic.a
|
|
44
|
|
45 // "softfp" must link against a soft-float library since that's what the
|
|
46 // callers we're compiling will expect.
|
|
47 // CHECK-LABEL: Target:
|
|
48 // CHECK-NOT: warning: unknown platform
|
|
49 // CHECK: "-mfloat-abi" "soft"
|
|
50 // CHECK: libclang_rt.soft_pic.a
|
|
51
|
|
52 // -arch "armv7" (== embedded v7a) can be used in a couple of variants:
|
|
53 // CHECK-LABEL: Target:
|
|
54 // CHECK-NOT: warning: unknown platform
|
|
55 // CHECK: "-mfloat-abi" "hard"
|
|
56 // CHECK: libclang_rt.hard_static.a
|
|
57
|
|
58 // CHECK-LABEL: Target:
|
|
59 // CHECK-NOT: warning: unknown platform
|
|
60 // CHECK: "-mfloat-abi" "soft"
|
|
61 // CHECK: libclang_rt.soft_pic.a
|