summaryrefslogtreecommitdiffstats
path: root/llvm/test/Object/archive-format.test
blob: 376eb053c6d2e3ca8aaa5a4a807a9e20842aded8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Test the exact archive format. In particular, test which file names use the
string table or not.

RUN: mkdir -p %t
RUN: cd %t

RUN: echo -n bar. > 0123456789abcde
RUN: echo -n zed. > 0123456789abcdef

RUN: rm -f %t.a
RUN: llvm-ar --format=gnu rc %t.a 0123456789abcde 0123456789abcdef
RUN: cat %t.a | FileCheck -strict-whitespace %s

CHECK:      !<arch>
CHECK-NEXT: //                                              18        `
CHECK-NEXT: 0123456789abcdef/
CHECK-NEXT: 0123456789abcde/0           0     0     644     4         `
CHECK-NEXT: bar./0              0           0     0     644     4         `
CHECK-NEXT: zed.

RUN: rm -f %t.a
RUN: llvm-ar --format=bsd rc %t.a 0123456789abcde 0123456789abcdef
RUN: cat %t.a | FileCheck -strict-whitespace --check-prefix=BSD %s

BSD:      !<arch>
BSD-NEXT: #1/20           0           0     0     644     24        `
BSD-NEXT: 0123456789abcde{{.....}}bar.
BSD-SAME: #1/16           0           0     0     644     20        `
BSD-NEXT: 0123456789abcdefzed.

RUN: rm -f %t.a
RUN: llvm-ar --format=gnu rcT %t.a 0123456789abcde 0123456789abcdef
RUN: cat %t.a | FileCheck -strict-whitespace --check-prefix=THIN %s
THIN: !<thin>
THIN-NEXT: //                                              36        `
THIN-NEXT: 0123456789abcde/
THIN-NEXT: 0123456789abcdef/{{$}}
THIN: {{^$}}
THIN: /0              0           0     0     644     4         `
THIN-NEXT: /17             0           0     0     644     4         `
OpenPOWER on IntegriCloud