1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/test/Object/archive-toc.test
Fangrui Song c1f3443f19 [llvm-ar] Implement the O modifier: display member offsets inside the archive
Since GNU ar 2.31, the 't' operation prints member offsets beside file
names if the 'O' modifier is specified. 'O' is ignored for thin
archives.

Reviewed By: gbreynoo, ruiu

Differential Revision: https://reviews.llvm.org/D69087

llvm-svn: 375106
2019-10-17 11:34:29 +00:00

63 lines
2.9 KiB
Plaintext

RUN: cd %p
Test reading an archive created by gnu ar
RUN: env TZ=GMT llvm-ar tv Inputs/GNU.a | FileCheck %s --check-prefix=GNU -strict-whitespace
GNU: rw-r--r-- 500/500 8 Nov 19 02:57 2004 evenlen
GNU-NEXT: rw-r--r-- 500/500 7 Nov 19 02:57 2004 oddlen
GNU-NEXT: rwxr-xr-x 500/500 1465 Nov 19 03:01 2004 very_long_bytecode_file_name.bc
GNU-NEXT: rw-r--r-- 500/500 2280 Nov 19 03:04 2004 IsNAN.o
Test reading an archive createdy by Mac OS X ar
RUN: env TZ=GMT llvm-ar tv Inputs/MacOSX.a | FileCheck %s --check-prefix=OSX -strict-whitespace
OSX-NOT: __.SYMDEF
OSX: rw-r--r-- 501/501 8 Nov 19 02:57 2004 evenlen
OSX-NEXT: rw-r--r-- 501/501 8 Nov 19 02:57 2004 oddlen
OSX-NEXT: rw-r--r-- 502/502 1465 Feb 4 06:59 2010 very_long_bytecode_file_name.bc
OSX-NEXT: rw-r--r-- 501/501 2280 Nov 19 04:32 2004 IsNAN.o
Test reading an archive created on Solaris by /usr/ccs/bin/ar
RUN: env TZ=GMT llvm-ar tv Inputs/SVR4.a | FileCheck %s -strict-whitespace
Test reading an archive created on Solaris by /usr/xpg4/bin/ar
RUN: env TZ=GMT llvm-ar tv Inputs/xpg4.a | FileCheck %s -strict-whitespace
CHECK: rw-r--r-- 1002/102 8 Nov 19 03:24 2004 evenlen
CHECK-NEXT: rw-r--r-- 1002/102 7 Nov 19 03:24 2004 oddlen
CHECK-NEXT: rwxr-xr-x 1002/102 1465 Nov 19 03:24 2004 very_long_bytecode_file_name.bc
CHECK-NEXT: rw-r--r-- 1002/102 2280 Nov 19 03:24 2004 IsNAN.o
Test reading a thin archive created by gnu ar
RUN: env TZ=GMT llvm-ar tv Inputs/thin.a | FileCheck %s --check-prefix=THIN -strict-whitespace
THIN: rw-r--r-- 1000/1000 8 Dec 16 00:56 2014 Inputs/evenlen
THIN-NEXT: rw-r--r-- 1000/1000 7 Dec 16 00:56 2014 Inputs/oddlen
THIN-NEXT: rwxr-xr-x 1000/1000 1465 Dec 16 00:56 2014 Inputs/very_long_bytecode_file_name.bc
THIN-NEXT: rw-r--r-- 1000/1000 2280 Dec 16 00:56 2014 Inputs/IsNAN.o
Test reading an archive with just a symbol table. We use to reject them.
RUN: llvm-ar tv Inputs/symtab-only.a | FileCheck --allow-empty --check-prefix=EMPTY %s
EMPTY-NOT: {{.}}
Test reading a thin archive with directory names.
RUN: env TZ=GMT llvm-ar tv Inputs/thin-path.a | FileCheck %s --check-prefix=THINPATH -strict-whitespace
THINPATH: rw-r--r-- 0/0 1224 Jan 1 00:00 1970 Inputs/test.o
THINPATH-NEXT: rw-r--r-- 0/0 1224 Jan 1 00:00 1970 Inputs/t/test2.o
RUN: llvm-ar tO Inputs/GNU.a | FileCheck %s --check-prefix=GNU-O --strict-whitespace
GNU-O: {{^}}evenlen 0x10c
GNU-O-NEXT: {{^}}oddlen 0x150
GNU-O-NEXT: {{^}}very_long_bytecode_file_name.bc 0x194
GNU-O-NEXT: {{^}}IsNAN.o 0x78a
RUN: env TZ=GMT llvm-ar tvO Inputs/GNU.a | FileCheck %s --check-prefix=GNU-VO --strict-whitespace
GNU-VO: rw-r--r-- 500/500 8 Nov 19 02:57 2004 evenlen 0x10c
GNU-VO-NEXT: rw-r--r-- 500/500 7 Nov 19 02:57 2004 oddlen 0x150
GNU-VO-NEXT: rwxr-xr-x 500/500 1465 Nov 19 03:01 2004 very_long_bytecode_file_name.bc 0x194
GNU-VO-NEXT: rw-r--r-- 500/500 2280 Nov 19 03:04 2004 IsNAN.o 0x78a