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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
# RUN: yaml2obj %s -o %t
# RUN: llvm-readobj -r %t | FileCheck %s --check-prefix=RELOCS
# RUN: obj2yaml %t | FileCheck %s --check-prefix=YAML
# RELOCS: Relocations [
# RELOCS-NEXT: Section (1) .text {
# RELOCS-NEXT: 0x3 IMAGE_REL_AMD64_REL32 .rdata (0)
# RELOCS-NEXT: 0xA IMAGE_REL_AMD64_REL32 .rdata (1)
# RELOCS-NEXT: 0x11 IMAGE_REL_AMD64_REL32 foo (2)
# RELOCS-NEXT: }
# RELOCS-NEXT: ]
## Check that we usually output relocations with SymbolName.
## For relocations with a non-unique symbol name, output
## SymbolTableIndex instead.
# YAML: Relocations:
# YAML-NEXT: - VirtualAddress: 3
# YAML-NEXT: SymbolTableIndex: 0
# YAML-NEXT: Type: IMAGE_REL_AMD64_REL32
# YAML-NEXT: - VirtualAddress: 10
# YAML-NEXT: SymbolTableIndex: 1
# YAML-NEXT: Type: IMAGE_REL_AMD64_REL32
# YAML-NEXT: - VirtualAddress: 17
# YAML-NEXT: SymbolName: foo
# YAML-NEXT: Type: IMAGE_REL_AMD64_REL32
--- !COFF
header:
Machine: IMAGE_FILE_MACHINE_AMD64
Characteristics: [ ]
sections:
- Name: .text
Characteristics: [ ]
Alignment: 4
SectionData: 488B0500000000488B0500000000488B0500000000
Relocations:
- VirtualAddress: 3
SymbolTableIndex: 0
Type: IMAGE_REL_AMD64_REL32
- VirtualAddress: 10
SymbolTableIndex: 1
Type: IMAGE_REL_AMD64_REL32
- VirtualAddress: 17
SymbolName: foo
Type: IMAGE_REL_AMD64_REL32
- Name: .rdata
Characteristics: [ ]
Alignment: 1
SectionData: '00'
- Name: .rdata
Characteristics: [ ]
Alignment: 1
SectionData: '01'
symbols:
- Name: .rdata
Value: 0
SectionNumber: 2
SimpleType: IMAGE_SYM_TYPE_NULL
ComplexType: IMAGE_SYM_DTYPE_NULL
StorageClass: IMAGE_SYM_CLASS_STATIC
- Name: .rdata
Value: 0
SectionNumber: 3
SimpleType: IMAGE_SYM_TYPE_NULL
ComplexType: IMAGE_SYM_DTYPE_NULL
StorageClass: IMAGE_SYM_CLASS_STATIC
- Name: foo
Value: 0
SectionNumber: 3
SimpleType: IMAGE_SYM_TYPE_NULL
ComplexType: IMAGE_SYM_DTYPE_NULL
StorageClass: IMAGE_SYM_CLASS_EXTERNAL
...
|