forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			142 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			142 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
# The binary blobs in this file were created like this:
 | 
						|
# llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu Inputs/elf-packed-relocs1.s -o - | obj2yaml | grep Content:
 | 
						|
 | 
						|
# RUN: yaml2obj --docnum=1 %s | llvm-readobj --relocations - | FileCheck --check-prefix=LLVM1 %s
 | 
						|
# LLVM1:      Section (1) .rela.dyn {
 | 
						|
# LLVM1-NEXT:   0x1100 R_X86_64_RELATIVE - 0x0
 | 
						|
# LLVM1-NEXT:   0x1180 R_X86_64_RELATIVE - 0x0
 | 
						|
# LLVM1-NEXT:   0x1188 R_X86_64_64 sym1 0x0
 | 
						|
# LLVM1-NEXT:   0x1190 R_X86_64_64 sym2 0x0
 | 
						|
# LLVM1-NEXT:   0x1191 R_X86_64_64 sym1 0x8
 | 
						|
# LLVM1-NEXT:   0x1193 R_X86_64_64 sym2 0xC
 | 
						|
# LLVM1-NEXT:   0x1197 R_X86_64_64 sym1 0xA
 | 
						|
# LLVM1-NEXT:   0x119F R_X86_64_64 sym2 0xA
 | 
						|
# LLVM1-NEXT: }
 | 
						|
 | 
						|
# RUN: yaml2obj --docnum=1 %s | llvm-readelf -relocations - | FileCheck --check-prefix=GNU1 %s
 | 
						|
# GNU1:      Relocation section '.rela.dyn' at offset 0x40 contains 8 entries:
 | 
						|
# GNU1:      0000000000001100  0000000000000008 R_X86_64_RELATIVE                 0
 | 
						|
# GNU1-NEXT: 0000000000001180  0000000000000008 R_X86_64_RELATIVE                 0
 | 
						|
# GNU1-NEXT: 0000000000001188  0000000100000001 R_X86_64_64            0000000000000000 sym1 + 0
 | 
						|
# GNU1-NEXT: 0000000000001190  0000000200000001 R_X86_64_64            0000000000000000 sym2 + 0
 | 
						|
# GNU1-NEXT: 0000000000001191  0000000100000001 R_X86_64_64            0000000000000000 sym1 + 8
 | 
						|
# GNU1-NEXT: 0000000000001193  0000000200000001 R_X86_64_64            0000000000000000 sym2 + c
 | 
						|
# GNU1-NEXT: 0000000000001197  0000000100000001 R_X86_64_64            0000000000000000 sym1 + a
 | 
						|
# GNU1-NEXT: 000000000000119f  0000000200000001 R_X86_64_64            0000000000000000 sym2 + a
 | 
						|
 | 
						|
# elf-packed-relocs1.s
 | 
						|
--- !ELF
 | 
						|
FileHeader:
 | 
						|
  Class:           ELFCLASS64
 | 
						|
  Data:            ELFDATA2LSB
 | 
						|
  Type:            ET_DYN
 | 
						|
  Machine:         EM_X86_64
 | 
						|
  Entry:           0x0000000000001000
 | 
						|
Sections:
 | 
						|
  - Name:            .rela.dyn
 | 
						|
    Type:            SHT_ANDROID_RELA
 | 
						|
    Flags:           [ SHF_ALLOC ]
 | 
						|
    Address:         0x00000000000001C8
 | 
						|
    Link:            .symtab
 | 
						|
    AddressAlign:    0x0000000000000001
 | 
						|
    Content:         41505332088020020108800280010202088180808010818080802002080181808080100802818080802004020C7E048180808010088180808020
 | 
						|
Symbols:
 | 
						|
  - Name:            sym1
 | 
						|
    Binding:         STB_GLOBAL
 | 
						|
  - Name:            sym2
 | 
						|
    Binding:         STB_GLOBAL
 | 
						|
...
 | 
						|
 | 
						|
# RUN: yaml2obj --docnum=2 %s | llvm-readobj --relocations - | FileCheck --check-prefix=LLVM2 %s
 | 
						|
# LLVM2:      Section (1) .rel.dyn {
 | 
						|
# LLVM2-NEXT:   0x1008 R_386_32 sym1 0x0
 | 
						|
# LLVM2-NEXT:   0x1010 R_386_GOT32 sym2 0x0
 | 
						|
# LLVM2-NEXT:   0x100C R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0x1008 R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0x1004 R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0x1000 R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0xFFC R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0xFF8 R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0xFF4 R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT:   0xFF0 R_386_RELATIVE - 0x0
 | 
						|
# LLVM2-NEXT: }
 | 
						|
 | 
						|
# RUN: yaml2obj --docnum=2 %s | llvm-readelf -relocations - | FileCheck --check-prefix=GNU2 %s
 | 
						|
# GNU2:      Relocation section '.rel.dyn' at offset 0x34 contains 10 entries:
 | 
						|
# GNU2:      00001008  00000101 R_386_32               00000000   sym1
 | 
						|
# GNU2-NEXT: 00001010  00000203 R_386_GOT32            00000000   sym2
 | 
						|
# GNU2-NEXT: 0000100c  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00001008  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00001004  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00001000  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00000ffc  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00000ff8  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00000ff4  00000008 R_386_RELATIVE
 | 
						|
# GNU2-NEXT: 00000ff0  00000008 R_386_RELATIVE
 | 
						|
 | 
						|
# elf-packed-relocs2.s
 | 
						|
--- !ELF
 | 
						|
FileHeader:
 | 
						|
  Class:           ELFCLASS32
 | 
						|
  Data:            ELFDATA2LSB
 | 
						|
  Type:            ET_DYN
 | 
						|
  Machine:         EM_386
 | 
						|
  Entry:           0x0000000000001000
 | 
						|
Sections:
 | 
						|
  - Name:            .rel.dyn
 | 
						|
    Type:            SHT_ANDROID_REL
 | 
						|
    Flags:           [ SHF_ALLOC ]
 | 
						|
    Address:         0x00000000000001C8
 | 
						|
    Link:            .symtab
 | 
						|
    AddressAlign:    0x0000000000000001
 | 
						|
    Content:         415053320A80200202088102830408037C08
 | 
						|
Symbols:
 | 
						|
  - Name:            sym1
 | 
						|
    Binding:         STB_GLOBAL
 | 
						|
  - Name:            sym2
 | 
						|
    Binding:         STB_GLOBAL
 | 
						|
...
 | 
						|
 | 
						|
# RUN: yaml2obj --docnum=3 %s | llvm-readobj --relocations - | FileCheck --check-prefix=LLVM3 %s
 | 
						|
#
 | 
						|
# LLVM3:      Section (1) .rela.dyn {
 | 
						|
# LLVM3-NEXT:   0x1100 R_X86_64_RELATIVE - 0x0
 | 
						|
# LLVM3-NEXT:   0x1180 R_X86_64_RELATIVE - 0x8
 | 
						|
# LLVM3-NEXT:   0x1200 R_X86_64_64 sym1 0x0
 | 
						|
# LLVM3-NEXT:   0x1208 R_X86_64_64 sym2 0x0
 | 
						|
# LLVM3-NEXT:   0x1210 R_X86_64_64 sym1 0x0
 | 
						|
# LLVM3-NEXT:   0x1218 R_X86_64_64 sym2 0x8
 | 
						|
# LLVM3-NEXT: }
 | 
						|
 | 
						|
# RUN: yaml2obj --docnum=3 %s | llvm-readelf -relocations - | FileCheck --check-prefix=GNU3 %s
 | 
						|
# GNU3:      Relocation section '.rela.dyn' at offset 0x40 contains 6 entries:
 | 
						|
# GNU3: 0000000000001100  0000000000000008 R_X86_64_RELATIVE                 0
 | 
						|
# GNU3-NEXT: 0000000000001180  0000000000000008 R_X86_64_RELATIVE                 8
 | 
						|
# GNU3-NEXT: 0000000000001200  0000000100000001 R_X86_64_64            0000000000000000 sym1 + 0
 | 
						|
# GNU3-NEXT: 0000000000001208  0000000200000001 R_X86_64_64            0000000000000000 sym2 + 0
 | 
						|
# GNU3-NEXT: 0000000000001210  0000000100000001 R_X86_64_64            0000000000000000 sym1 + 0
 | 
						|
# GNU3-NEXT: 0000000000001218  0000000200000001 R_X86_64_64            0000000000000000 sym2 + 8
 | 
						|
 | 
						|
# elf-packed-relocs3.s
 | 
						|
--- !ELF
 | 
						|
FileHeader:
 | 
						|
  Class:           ELFCLASS64
 | 
						|
  Data:            ELFDATA2LSB
 | 
						|
  Type:            ET_DYN
 | 
						|
  Machine:         EM_X86_64
 | 
						|
  Entry:           0x0000000000001000
 | 
						|
Sections:
 | 
						|
  - Name:            .rela.dyn
 | 
						|
    Type:            SHT_ANDROID_RELA
 | 
						|
    Flags:           [ SHF_ALLOC ]
 | 
						|
    Address:         0x00000000000001C8
 | 
						|
    Link:            .symtab
 | 
						|
    AddressAlign:    0x0000000000000001
 | 
						|
    Content:         415053320680200208800208008001080802008001818080801008818080802002080881808080100008818080802008
 | 
						|
Symbols:
 | 
						|
  - Name:            sym1
 | 
						|
    Binding:         STB_GLOBAL
 | 
						|
  - Name:            sym2
 | 
						|
    Binding:         STB_GLOBAL
 | 
						|
...
 |