150
|
1 # REQUIRES: x86, shell
|
|
2
|
|
3 # RUN: rm -rf %t.dir
|
|
4 # RUN: mkdir -p %t.dir/build1 %t.dir/build2 %t.dir/build3
|
|
5 # RUN: yaml2obj < %p/Inputs/hello32.yaml > %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: lld-link %t.obj /libpath:%p/Inputs /defaultlib:std32 /subsystem:console \
|
|
25 # RUN: /entry:main@0 /linkrepro:. /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: env LIB=%p/Inputs lld-link %t.obj /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 # RSP: /subsystem:console
|
|
40 # RSP: /entry:main@0
|
|
41 # RSP-NOT: /linkrepro:
|
|
42 # RSP: /out:
|
|
43 # RSP: linkrepro.test.tmp.obj
|
|
44 # RSP-NOT: defaultlib
|
|
45 # RSP: std32.lib
|