Recommit "rL366894: [yaml2obj] - Allow custom fields for the SHT_UNDEF sections."
[llvm-complete.git] / test / tools / llvm-ar / mri-end.test
bloba00f2f53aee2653d28e90d743046c06b6f21f48f
1 # The END MRI command is optional. Scripts that omit
2 # or include END should be handled by llvm-ar.
3 RUN: rm -rf %t && mkdir -p %t
5 # Empty File
6 RUN: yaml2obj %S/Inputs/elf.yaml -o %t/elf.o
8 RUN: touch %t/empty.mri
9 RUN: llvm-ar -M < %t/empty.mri
11 RUN: echo "END" > %t/empty-end.mri
12 RUN: llvm-ar -M < %t/empty-end.mri
14 # Comment only
15 RUN: echo "; a comment" > %t/comment.mri
16 RUN: llvm-ar -M < %t/comment.mri
18 RUN: echo "; a comment" > %t/comment-end.mri
19 RUN: echo "END" > %t/comment-end.mri
20 RUN: llvm-ar -M < %t/comment-end.mri
22 # Without Save
23 RUN: echo "create %t/mri.ar" > %t/no-save.mri
24 RUN: echo "addmod %t/elf.o" >> %t/no-save.mri
25 RUN: llvm-ar -M < %t/no-save.mri
26 RUN: test ! -e %t/mri.ar
28 RUN: echo "create %t/mri.ar" > %t/no-save-end.mri
29 RUN: echo "addmod %t/elf.o" >> %t/no-save-end.mri
30 RUN: echo "END" > %t/no-save-end.mri
31 RUN: llvm-ar -M < %t/no-save-end.mri
32 RUN: test ! -e %t/mri.ar
34 # With Save
35 RUN: echo "create %t/mri.ar" > %t/save.mri
36 RUN: echo "addmod %t/elf.o" >> %t/save.mri
37 RUN: echo "save" >> %t/save.mri
38 RUN: llvm-ar -M < %t/save.mri
39 RUN: llvm-ar t %t/mri.ar | FileCheck %s
41 RUN: echo "create %t/mri.ar" > %t/save-end.mri
42 RUN: echo "addmod %t/elf.o" >> %t/save-end.mri
43 RUN: echo "save" >> %t/save-end.mri
44 RUN: echo "END" > %t/no-save-end.mri
45 RUN: llvm-ar -M < %t/save-end.mri
46 RUN: llvm-ar t %t/mri.ar | FileCheck %s
48 CHECK: elf.o