[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Driver / arm-float-abi-runtime-path.c
blobd4a48601a04b454dd93d4bef2ce27f32f131218b
1 /// Check that libraries built with the per target runtime directory layout
2 /// are selected correctly when using variations of Arm triples.
4 // REQUIRES: arm-registered-target
6 // RUN: %clang %s --target=arm-unknown-linux-gnueabihf -print-runtime-dir \
7 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMHF %s
8 /// "armv7l" should be normalised to just "arm".
9 // RUN: %clang %s --target=armv7l-unknown-linux-gnueabihf -print-runtime-dir \
10 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMHF %s
12 // RUN: %clang %s --target=arm-unknown-linux-gnueabi -print-runtime-dir \
13 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARM %s
14 // RUN: %clang %s --target=armv7l-unknown-linux-gnueabi -print-runtime-dir \
15 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARM %s
17 /// armeb triples should be unmodified.
18 // RUN: %clang %s --target=armeb-unknown-linux-gnueabihf -print-runtime-dir \
19 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMEBHF %s
20 // RUN: %clang %s --target=armeb-unknown-linux-gnueabi -print-runtime-dir \
21 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMEB %s
23 // RUN: %clang %s --target=arm-pc-windows-msvc -print-runtime-dir \
24 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=WINDOWS %s
25 /// armhf-pc... isn't recognised so just check that the float-abi option is ignored
26 // RUN: %clang %s --target=arm-pc-windows-msvc -mfloat-abi=hard -print-runtime-dir \
27 // RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=WINDOWS %s
29 // ARMHF: lib{{/|\\}}arm-unknown-linux-gnueabihf{{$}}
30 // ARM: lib{{/|\\}}arm-unknown-linux-gnueabi{{$}}
31 // ARMEBHF: lib{{/|\\}}armeb-unknown-linux-gnueabihf{{$}}
32 // ARMEB: lib{{/|\\}}armeb-unknown-linux-gnueabi{{$}}
33 // WINDOWS: lib{{/|\\}}arm-pc-windows-msvc{{$}}