34 lines
2 KiB
C
34 lines
2 KiB
C
|
/// Check that libraries built with the per target runtime directory layout
|
||
|
/// are selected correctly when using variations of Arm triples.
|
||
|
|
||
|
// REQUIRES: arm-registered-target
|
||
|
|
||
|
// RUN: %clang %s --target=arm-unknown-linux-gnueabihf -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMHF %s
|
||
|
/// "armv7l" should be normalised to just "arm".
|
||
|
// RUN: %clang %s --target=armv7l-unknown-linux-gnueabihf -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMHF %s
|
||
|
|
||
|
// RUN: %clang %s --target=arm-unknown-linux-gnueabi -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARM %s
|
||
|
// RUN: %clang %s --target=armv7l-unknown-linux-gnueabi -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARM %s
|
||
|
|
||
|
/// armeb triples should be unmodified.
|
||
|
// RUN: %clang %s --target=armeb-unknown-linux-gnueabihf -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMEBHF %s
|
||
|
// RUN: %clang %s --target=armeb-unknown-linux-gnueabi -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=ARMEB %s
|
||
|
|
||
|
// RUN: %clang %s --target=arm-pc-windows-msvc -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=WINDOWS %s
|
||
|
/// armhf-pc... isn't recognised so just check that the float-abi option is ignored
|
||
|
// RUN: %clang %s --target=arm-pc-windows-msvc -mfloat-abi=hard -print-runtime-dir \
|
||
|
// RUN: -resource-dir=%S/Inputs/arm_float_abi_runtime_path 2>&1 | FileCheck -check-prefix=WINDOWS %s
|
||
|
|
||
|
// ARMHF: lib{{/|\\}}arm-unknown-linux-gnueabihf{{$}}
|
||
|
// ARM: lib{{/|\\}}arm-unknown-linux-gnueabi{{$}}
|
||
|
// ARMEBHF: lib{{/|\\}}armeb-unknown-linux-gnueabihf{{$}}
|
||
|
// ARMEB: lib{{/|\\}}armeb-unknown-linux-gnueabi{{$}}
|
||
|
// WINDOWS: lib{{/|\\}}arm-pc-windows-msvc{{$}}
|