1# REQUIRES: x86, shell 2 3# RUN: rm -rf %t.dir 4# RUN: mkdir -p %t.dir/build1 %t.dir/build2 %t.dir/build3 %t.dir/build4 5# RUN: yaml2obj %p/Inputs/hello32.yaml -o %t.obj 6 7# RUN: cd %t.dir/build1 8# RUN: lld-link %t.obj %p/Inputs/std32.lib /subsystem:console \ 9# RUN: /entry:main@0 /linkrepro:. /out:%t.exe 10# RUN: tar xf repro.tar 11# RUN: diff %t.obj repro/%:t.obj 12# RUN: diff %p/Inputs/std32.lib repro/%:p/Inputs/std32.lib 13# RUN: FileCheck %s --check-prefix=RSP < repro/response.txt 14 15# RUN: cd %t.dir/build1 16# RUN: lld-link %t.obj %p/Inputs/std32.lib /subsystem:console \ 17# RUN: /entry:main@0 /reproduce:repro2.tar /out:%t.exe 18# RUN: tar xf repro2.tar 19# RUN: diff %t.obj repro2/%:t.obj 20# RUN: diff %p/Inputs/std32.lib repro2/%:p/Inputs/std32.lib 21# RUN: FileCheck %s --check-prefix=RSP < repro2/response.txt 22 23# RUN: cd %t.dir/build2 24# RUN: env LLD_REPRODUCE=repro.tar lld-link %t.obj %p/Inputs/std32.lib \ 25# RUN: /subsystem:console /entry:main@0 /out:%t.exe 26# RUN: tar xf repro.tar 27# RUN: diff %t.obj repro/%:t.obj 28# RUN: diff %p/Inputs/std32.lib repro/%:p/Inputs/std32.lib 29# RUN: FileCheck %s --check-prefix=RSP < repro/response.txt 30 31# RUN: cd %t.dir/build3 32# RUN: lld-link %t.obj /libpath:%p/Inputs /defaultlib:std32 /subsystem:console \ 33# RUN: /entry:main@0 /linkrepro:. /out:%t.exe 34# RUN: tar xf repro.tar 35# RUN: diff %t.obj repro/%:t.obj 36# RUN: diff %p/Inputs/std32.lib repro/%:p/Inputs/std32.lib 37# RUN: FileCheck %s --check-prefix=RSP < repro/response.txt 38 39# RUN: cd %t.dir/build4 40# RUN: env LIB=%p/Inputs lld-link %t.obj /defaultlib:std32 /subsystem:console \ 41# RUN: /entry:main@0 /linkrepro:. /out:%t.exe 42# RUN: tar xf repro.tar 43# RUN: diff %t.obj repro/%:t.obj 44# RUN: diff %p/Inputs/std32.lib repro/%:p/Inputs/std32.lib 45# RUN: FileCheck %s --check-prefix=RSP < repro/response.txt 46 47# RSP: /subsystem:console 48# RSP: /entry:main@0 49# RSP-NOT: /linkrepro: 50# RSP: /out: 51# RSP: linkrepro.test.tmp.obj 52# RSP-NOT: defaultlib 53# RSP: std32.lib 54