Imported Upstream version 5.18.0.246

Former-commit-id: 0c7ce5b1a7851e13f22acfd379b7f9fb304e4833
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2019-01-23 08:21:40 +00:00
parent a7724cd563
commit 279aa8f685
28482 changed files with 3866972 additions and 44 deletions

Binary file not shown.

View File

@@ -0,0 +1,55 @@
--- !COFF
header:
Machine: IMAGE_FILE_MACHINE_AMD64
Characteristics: [ ]
sections:
- Name: .text
Characteristics: [ IMAGE_SCN_CNT_CODE, IMAGE_SCN_MEM_EXECUTE, IMAGE_SCN_MEM_READ ]
Alignment: 4
SectionData: ''
- Name: .data
Characteristics: [ IMAGE_SCN_CNT_INITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
Alignment: 4
SectionData: ''
- Name: .bss
Characteristics: [ IMAGE_SCN_CNT_UNINITIALIZED_DATA, IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_WRITE ]
Alignment: 4
SectionData: ''
symbols:
- Name: .text
Value: 0
SectionNumber: 1
SimpleType: IMAGE_SYM_TYPE_NULL
ComplexType: IMAGE_SYM_DTYPE_NULL
StorageClass: IMAGE_SYM_CLASS_STATIC
SectionDefinition:
Length: 0
NumberOfRelocations: 0
NumberOfLinenumbers: 0
CheckSum: 0
Number: 1
- Name: .data
Value: 0
SectionNumber: 2
SimpleType: IMAGE_SYM_TYPE_NULL
ComplexType: IMAGE_SYM_DTYPE_NULL
StorageClass: IMAGE_SYM_CLASS_STATIC
SectionDefinition:
Length: 0
NumberOfRelocations: 0
NumberOfLinenumbers: 0
CheckSum: 0
Number: 2
- Name: .bss
Value: 0
SectionNumber: 3
SimpleType: IMAGE_SYM_TYPE_NULL
ComplexType: IMAGE_SYM_DTYPE_NULL
StorageClass: IMAGE_SYM_CLASS_STATIC
SectionDefinition:
Length: 0
NumberOfRelocations: 0
NumberOfLinenumbers: 0
CheckSum: 0
Number: 3
...

View File

@@ -0,0 +1,26 @@
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_X86_64
Sections:
- Name: .text
Type: SHT_PROGBITS
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
AddressAlign: 0x0000000000000004
Content: ''
- Name: .comment
Type: SHT_PROGBITS
Flags: [ SHF_MERGE, SHF_STRINGS ]
AddressAlign: 0x0000000000000001
Content: 00636C616E672076657273696F6E20332E392E3020287472756E6B203237333632342920286C6C766D2F7472756E6B203237333633362900
- Name: .note.GNU-stack
Type: SHT_PROGBITS
AddressAlign: 0x0000000000000001
Content: ''
Symbols:
Local:
- Name: '-'
Type: STT_FILE
...

View File

@@ -0,0 +1,45 @@
--- !mach-o
FileHeader:
magic: 0xFEEDFACF
cputype: 0x01000007
cpusubtype: 0x00000003
filetype: 0x00000001
ncmds: 1
sizeofcmds: 152
flags: 0x00002000
reserved: 0x00000000
LoadCommands:
- cmd: LC_SEGMENT_64
cmdsize: 152
segname: ''
vmaddr: 0
vmsize: 0
fileoff: 184
filesize: 0
maxprot: 7
initprot: 7
nsects: 1
flags: 0
Sections:
- sectname: __text
segname: __TEXT
addr: 0x0000000000000000
size: 0
offset: 0x000000B8
align: 0
reloff: 0x00000000
nreloc: 0
flags: 0x80000000
reserved1: 0x00000000
reserved2: 0x00000000
reserved3: 0x00000000
LinkEditData:
ExportTrie:
TerminalSize: 0
NodeOffset: 0
Name: ''
Flags: 0x0000000000000000
Address: 0x0000000000000000
Other: 0x0000000000000000
ImportName: ''
...

View File

@@ -0,0 +1,2 @@
!<arch>
library.dll/ 28800 0 0 `

View File

@@ -0,0 +1,20 @@
MSVC's lib.exe produces archives with absolute paths to the members. It's useful
for llvm-ar to extract them to their basename in the CWD, since usually the
directories in the path in the archive won't exist during archive extraction.
Get a temp clean cwd to extract into.
RUN: rm -rf %t && mkdir %t && cd %t
RUN: llvm-ar t %S/Inputs/absolute-paths.lib | FileCheck %s --check-prefix=CHECK-LIST
CHECK-LIST: C:/src/llvm-project/build/dne/b.o
CHECK-LIST: C:/src/llvm-project/build/dne/a.o
Check that a.o comes out and defines foo.
RUN: llvm-ar x %S/Inputs/absolute-paths.lib 'C:/src/llvm-project/build/dne/a.o'
RUN: llvm-nm a.o | FileCheck %s --check-prefix=CHECK-A
CHECK-A: T foo
Check that b.o comes out and defines bar.
RUN: llvm-ar x %S/Inputs/absolute-paths.lib C:/src/llvm-project/build/dne/b.o
RUN: llvm-nm b.o | FileCheck %s --check-prefix=CHECK-B
CHECK-B: T bar

View File

@@ -0,0 +1,18 @@
RUN: yaml2obj %S/Inputs/macho.yaml -o %t-macho.o
RUN: yaml2obj %S/Inputs/coff.yaml -o %t-coff.o
RUN: rm -f %t.ar
RUN: llvm-ar crs %t.ar %t-macho.o
RUN: grep -q __.SYMDEF %t.ar
Test that an option string prefixed by a dash works.
RUN: llvm-ar -crs %t.ar %t-coff.o
RUN: grep -q __.SYMDEF %t.ar
RUN: rm -f %t.ar
RUN: llvm-ar crs %t.ar %t-coff.o
RUN: not grep -q __.SYMDEF %t.ar
RUN: llvm-ar crs %t.ar %t-macho.o
RUN: not grep -q __.SYMDEF %t.ar
Ensure that we select the existing format when updating.

View File

@@ -0,0 +1,10 @@
RUN: yaml2obj %S/Inputs/coff.yaml -o %t.obj
RUN: rm -f %t.ar
RUN: llvm-ar crs %t.ar %t.obj
RUN: not grep -q __.SYMDEF %t.ar
Ensure that we generate a GNU style archive for COFF by default. The GNU linker
expects that it will be in GNU format. The lib format on Windows is compatible
with the GNU format.

View File

@@ -0,0 +1,9 @@
RUN: yaml2obj %S/Inputs/elf.yaml -o %t.o
RUN: rm -f %t.ar
RUN: llvm-ar crs %t.ar %t.o
RUN: not grep -q __.SYMDEF %t.ar
Ensure that we generate a GNU style archive for ELF by default. The GNU linker
expects that it will be in GNU format.

View File

@@ -0,0 +1,9 @@
RUN: yaml2obj %S/Inputs/macho.yaml -o %t.o
RUN: rm -f %t.ar
RUN: llvm-ar crs %t.ar %t.o
RUN: grep -q __.SYMDEF %t.ar
Ensure that we generate a BSD style archive for MachO by default. ld64 expects
that it will be in BSD format.

View File

@@ -0,0 +1,3 @@
RUN: llvm-ar tv %S/Inputs/msvc-import.lib | FileCheck %s
CHECK: --------- 0/0 0 1970-01-01 {{[0-9:.]+}} library.dll

View File

@@ -0,0 +1,5 @@
Test that llvm-ar exits with 1 when there is an error.
RUN: not llvm-ar e 2>&1 | FileCheck %s
CHECK: unknown option e.
CHECK: OVERVIEW: LLVM Archiver (llvm-ar)

View File

@@ -0,0 +1,8 @@
RUN: yaml2obj %S/Inputs/macho.yaml -o %t.o
RUN: rm -f %t.ar
RUN: llvm-ar -format gnu crs %t.ar %t.o
RUN: not grep -q __.SYMDEF %t.ar
Ensure that we honour a specific request