81 lines · yaml
1# UNSUPPORTED: system-windows2 3# RUN: %clang --multi-lib-config=%s -no-canonical-prefixes -x c %s -### -o /dev/null 2>&1 \4# RUN: --target=thumbv8m.main-none-eabi -mfpu=none --sysroot= \5# RUN: | FileCheck --check-prefix=CHECK-DEFAULT %s6 7# CHECK-DEFAULT: "-cc1" "-triple" "thumbv8m.main-unknown-none-eabi"8# CHECK-DEFAULT-SAME: "-internal-isystem" "[[SYSROOT:[^"]*]]/bin/../lib/clang-runtimes/arm-none-eabi/thumb/v8-m.main/nofp/include"9# CHECK-DEFAULT-NEXT: "-L[[SYSROOT]]/bin/../lib/clang-runtimes/arm-none-eabi/thumb/v8-m.main/nofp/lib"10 11# RUN: %clang --multi-lib-config=%s -no-canonical-prefixes -x c %s -### -o /dev/null 2>&1 \12# RUN: --target=thumbv8m.main-none-eabi -mfpu=none -fmultilib-flag=no-multithreaded --sysroot= \13# RUN: | FileCheck --check-prefix=CHECK-NOMULTI %s14 15# CHECK-NOMULTI: "-cc1" "-triple" "thumbv8m.main-unknown-none-eabi"16# CHECK-NOMULTI-SAME: "-internal-isystem" "[[SYSROOT:[^"]*]]/bin/../lib/clang-runtimes/arm-none-eabi/thumb/v8-m.main/nofp/include"17# CHECK-NOMULTI-NEXT: "-L[[SYSROOT]]/bin/../lib/clang-runtimes/arm-none-eabi/thumb/v8-m.main/nofp/lib"18 19# RUN: %clang --multi-lib-config=%s -no-canonical-prefixes -x c %s -### -o /dev/null 2>&1 \20# RUN: --target=thumbv8m.main-none-eabi -mfpu=none -fmultilib-flag=multithreaded --sysroot= \21# RUN: | FileCheck --check-prefix=CHECK-MULTI %s22 23# CHECK-MULTI: "-cc1" "-triple" "thumbv8m.main-unknown-none-eabi"24# CHECK-MULTI-SAME: "-internal-isystem" "[[SYSROOT:[^"]*]]/bin/../lib/clang-runtimes/arm-none-eabi/multithreaded/thumb/v8-m.main/nofp/include"25# CHECK-MULTI-NEXT: "-L[[SYSROOT]]/bin/../lib/clang-runtimes/arm-none-eabi/multithreaded/thumb/v8-m.main/nofp/lib"26 27# RUN: not %clang --multi-lib-config=%s -no-canonical-prefixes -x c %s -### -o /dev/null 2>&1 \28# RUN: --target=thumbv8m.main-none-eabi -mfpu=none -fmultilib-flag=singlethreaded -fmultilib-flag=no-io --sysroot= \29# RUN: | FileCheck --check-prefix=CHECK-ERROR %s30# CHECK-ERROR-DAG: error: unsupported option '-fmultilib-flag=singlethreaded'31# CHECK-ERROR-DAG: error: unsupported option '-fmultilib-flag=no-io'; did you mean '-fmultilib-flag=io-none'?32 33# RUN: %clang --multi-lib-config=%s -no-canonical-prefixes -x c %s -### -o /dev/null 2>&1 \34# RUN: --target=thumbv8m.main-none-eabi -mfpu=none -print-multi-lib --sysroot= \35# RUN: | FileCheck --check-prefix=CHECK-PRINT-MULTI-LIB %s36# CHECK-PRINT-MULTI-LIB: arm-none-eabi/thumb/v8-m.main/nofp;@-target=thumbv8m.main-unknown-none-eabi@mfpu=none@fmultilib-flag=no-multithreaded37# CHECK-PRINT-MULTI-LIB: arm-none-eabi/multithreaded/thumb/v8-m.main/nofp;@-target=thumbv8m.main-unknown-none-eabi@mfpu=none@fmultilib-flag=multithreaded38 39# RUN: %clang --target=arm-none-eabi --multi-lib-config=%s -x c %s -fmultilib-flag=no-multithreaded -### -o /dev/null 2>&1 \40# RUN: | FileCheck --check-prefix=CHECK-MACRODEFINES-NOMULTI %s41# CHECK-MACRODEFINES-NOMULTI: "-D" "__SINGLE_THREAD__"42 43# RUN: %clang --target=arm-none-eabi --multi-lib-config=%s -x c %s -fmultilib-flag=io-semihosting -### -o /dev/null 2>&1 \44# RUN: | FileCheck --check-prefix=CHECK-MACRODEFINES-IO-SEMIHOSTING %s45# CHECK-MACRODEFINES-IO-SEMIHOSTING: "-D" "SEMIHOSTING"46 47# RUN: %clang --target=arm-none-eabi --multi-lib-config=%s -x c %s -fmultilib-flag=io-linux-syscalls -### -o /dev/null 2>&1 \48# RUN: | FileCheck --check-prefix=CHECK-MACRODEFINES-IO-LINUX %s49# CHECK-MACRODEFINES-IO-LINUX: "-D" "LINUX_SYSCALLS"50# CHECK-MACRODEFINES-IO-LINUX-SAME: "-D" "HOSTED"51 52---53MultilibVersion: 1.054 55Groups:56- Name: stdlib57 Type: Exclusive58 59Variants:60- Dir: arm-none-eabi/thumb/v8-m.main/nofp61 Flags: [--target=thumbv8m.main-unknown-none-eabi, -mfpu=none, -fmultilib-flag=no-multithreaded]62 Group: stdlib63- Dir: arm-none-eabi/multithreaded/thumb/v8-m.main/nofp64 Flags: [--target=thumbv8m.main-unknown-none-eabi, -mfpu=none, -fmultilib-flag=multithreaded]65 Group: stdlib66 67Flags:68 - Name: multithreading69 Values:70 - Name: no-multithreaded71 MacroDefines: [__SINGLE_THREAD__]72 - Name: multithreaded73 Default: no-multithreaded74 - Name: io75 Values:76 - Name: io-none77 - Name: io-semihosting78 MacroDefines: [SEMIHOSTING]79 - Name: io-linux-syscalls80 MacroDefines: [LINUX_SYSCALLS, HOSTED]81 Default: io-none