1REQUIRES: x86 2 3RUN: lld-link /entry:main /subsystem:console /out:%t.exe \ 4RUN: %p/Inputs/ret42.obj 5 6RUN: lld-link /entry:main /subsystem:console /out:%t.exe \ 7RUN: %p/Inputs/ret42.obj /failifmismatch:k1=v1 /failifmismatch:k2=v1 8 9RUN: lld-link /entry:main /subsystem:console /out:%t.exe \ 10RUN: %p/Inputs/ret42.obj /failifmismatch:k1=v1 /failifmismatch:k1=v1 11 12RUN: not lld-link /entry:main /subsystem:console /out:%t.exe \ 13RUN: %p/Inputs/ret42.obj /failifmismatch:k1=v1 /failifmismatch:k1=v2 2>&1 | FileCheck %s 14 15RUN: llc < %p/Inputs/failmismatch1.ll -mtriple x86_64-windows-msvc -filetype obj -o %t1.obj 16RUN: llc < %p/Inputs/failmismatch2.ll -mtriple x86_64-windows-msvc -filetype obj -o %t2.obj 17RUN: not lld-link %t1.obj %t2.obj 2>&1 | FileCheck %s -check-prefix OBJ 18 19RUN: llvm-lib %t1.obj /out:%t.lib 20RUN: not lld-link %t.lib %t2.obj 2>&1 | FileCheck %s -check-prefix LIB 21 22CHECK: lld-link: error: /failifmismatch: mismatch detected for 'k1': 23CHECK-NEXT: >>> cmd-line has value v1 24CHECK-NEXT: >>> cmd-line has value v2 25 26OBJ: lld-link: error: /failifmismatch: mismatch detected for 'TEST': 27OBJ-NEXT: >>> {{.*}}failifmismatch.test.tmp1.obj has value 1 28OBJ-NEXT: >>> {{.*}}failifmismatch.test.tmp2.obj has value 2 29 30LIB: lld-link: error: /failifmismatch: mismatch detected for 'TEST': 31LIB-NEXT: >>> {{.*}}failifmismatch.test.tmp2.obj has value 2 32LIB-NEXT: >>> failifmismatch.test.tmp.lib(failifmismatch.test.tmp1.obj) has value 1 33