1# REQUIRES: x86 2 3# RUN: not ld.lld --unknown1 --unkn=own2 -m foo /no/such/file -lnosuchlib \ 4# RUN: 2>&1 | FileCheck -check-prefix=UNKNOWN %s 5 6# UNKNOWN: unknown argument '--unknown1' 7# UNKNOWN: unknown argument '--unkn=own2' 8# UNKNOWN: unknown emulation: foo 9# UNKNOWN: cannot open /no/such/file 10# UNKNOWN: unable to find library -lnosuchlib 11 12# RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux %s -o %t 13# RUN: not ld.lld %t -o /no/such/file 2>&1 | FileCheck -check-prefix=MISSING %s 14# MISSING: cannot open output file /no/such/file 15 16# RUN: ld.lld --help 2>&1 | FileCheck -check-prefix=HELP %s 17# HELP: USAGE: 18# HELP: : supported targets:{{.*}} elf 19 20# RUN: ld.lld --version 2>&1 | FileCheck -check-prefix=VERSION %s 21# RUN: ld.lld -v 2>&1 | FileCheck -check-prefix=VERSION %s 22# RUN: not ld.lld -v xyz 2>&1 | FileCheck -check-prefix=VERSION %s 23# VERSION: LLD {{.*}} (compatible with GNU linkers) 24 25# RUN: not ld.lld --versin 2>&1 | FileCheck -check-prefix=SPELLVERSION %s 26# SPELLVERSION: unknown argument '--versin', did you mean '--version' 27 28## Attempt to link DSO with -r 29# RUN: ld.lld -shared %t -o %t.so 30# RUN: not ld.lld -r %t.so %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR %s 31# ERR: attempted static link of dynamic object 32 33## Attempt to use -r and -shared together 34# RUN: not ld.lld -r -shared %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR2 %s 35# ERR2: -r and -shared may not be used together 36 37## Attempt to use -r and --gdb-index together 38# RUN: not ld.lld -r --gdb-index %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR4 %s 39# ERR4: -r and --gdb-index may not be used together 40 41## Attempt to use -r and --icf together 42# RUN: not ld.lld -r --icf=all %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR5 %s 43# ERR5: -r and --icf may not be used together 44 45## Attempt to use -r and -pie together 46# RUN: not ld.lld -r -pie %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR6 %s 47# ERR6: -r and -pie may not be used together 48 49## Attempt to use -shared and -pie together 50# RUN: not ld.lld -shared -pie %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR7 %s 51# ERR7: -shared and -pie may not be used together 52 53## "--output=foo" is equivalent to "-o foo". 54# RUN: not ld.lld %t --output=/no/such/file 2>&1 | FileCheck -check-prefix=ERR8 %s 55# ERR8: cannot open output file /no/such/file 56 57## "-output=foo" is equivalent to "-o utput=foo". 58# RUN: not ld.lld %t -output=/no/such/file 2>&1 | FileCheck -check-prefix=ERR9 %s 59# ERR9: cannot open output file utput=/no/such/file 60 61# RUN: not ld.lld %t -z foo 2>&1 | FileCheck -check-prefix=ERR10 %s 62# RUN: not ld.lld %t -z foo --version 2>&1 | FileCheck -check-prefix=ERR10 %s 63# ERR10: unknown -z value: foo 64 65## Check we report "unknown -z value" error even with -v. 66# RUN: not ld.lld %t -z foo -v 2>&1 | FileCheck -check-prefix=ERR10 %s 67 68# RUN: not ld.lld %t -z max-page-size 2>&1 | FileCheck -check-prefix=ERR11 %s 69# ERR11: unknown -z value: max-page-size 70 71## Attempt to use -r and --export-dynamic together 72# RUN: not ld.lld -r -export-dynamic %t -o /dev/null 2>&1 | FileCheck -check-prefix=ERR12 %s 73# ERR12: -r and --export-dynamic may not be used together 74 75.globl _start 76_start: 77 nop 78