Follow up to d0858bffa11, add missing REQUIRES x86
[llvm-project.git] / llvm / test / tools / llvm-ar / mri-addmod.test
blob824e6f13a1504a6e915bbd4867a8ced5b6bf9964
1 ## Test the ADDMOD MRI command.
3 # RUN: rm -rf %t && split-file %s %t
4 # RUN: cd %t
5 # RUN: yaml2obj %s -o f.o
7 # RUN: llvm-ar -M < add-mod.mri
8 # RUN: llvm-nm --print-armap add-mod.a | FileCheck --check-prefix=SYMS %s
9 # RUN: llvm-ar t add-mod.a | FileCheck --check-prefix=FILES %s
11 # SYMS: f in {{.*}}
12 # FILES: f.o
14 ## No create command.
15 # RUN: not llvm-ar -M < no-create.mri 2>&1 | FileCheck --check-prefix=NOCREATE %s
17 # NOCREATE: error: script line 1: no output archive has been opened
19 ## ADDMOD with missing file.
20 # RUN: not llvm-ar -M < missing.mri 2>&1 | FileCheck -DMSG=%errc_ENOENT %s --check-prefix=MISSING
21 # RUN: not ls missing.a
23 # MISSING: error: script line 2: missing.o: [[MSG]]
25 ## ADD same file twice.
26 # RUN: llvm-ar -M < duplicate.mri
27 # RUN: llvm-nm --print-armap duplicate.a | FileCheck --check-prefix=SYMS2 %s
28 # RUN: llvm-ar t duplicate.a | FileCheck --check-prefix=FILES2 %s
30 # SYMS2-COUNT-2: f in {{.*}}
31 # FILES2-COUNT-2: f.o
33 #--- f.yaml
34 --- !ELF
35 FileHeader:
36   Class:   ELFCLASS64
37   Data:    ELFDATA2LSB
38   Type:    ET_REL
39   Machine: EM_X86_64
40 Sections:
41   - Name: .text
42     Type: SHT_PROGBITS
43 Symbols:
44     - Name:    f
45       Binding: STB_GLOBAL
46       Section: .text
47 ...
48 #--- add-mod.mri
49 CREATE add-mod.a
50 ADDMOD f.o
51 SAVE
53 #--- no-create.mri
54 ADDMOD f.o
55 SAVE
57 #--- missing.mri
58 CREATE missing.a
59 ADDMOD missing.o
60 SAVE
62 #--- duplicate.mri
63 CREATE duplicate.a
64 ADDMOD f.o
65 ADDMOD f.o
66 SAVE