diff options
author | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2015-04-22 15:26:43 +0000 |
---|---|---|
committer | Adhemerval Zanella <azanella@linux.vnet.ibm.com> | 2015-04-22 15:26:43 +0000 |
commit | 9f3dbff08a30f3289558e6f8ba95b412824e5120 (patch) | |
tree | 2f24b11384bdf34ab778a10b888893f9f067489f /llvm/test/Object | |
parent | c75a192f23bff277033994cc274dd3de8615c836 (diff) | |
download | bcm5719-llvm-9f3dbff08a30f3289558e6f8ba95b412824e5120.tar.gz bcm5719-llvm-9f3dbff08a30f3289558e6f8ba95b412824e5120.zip |
Support arm32 R_ARM_V4BX relocation format
ARM32 ELF R_ARM_V4BX relocation format is a special relocation type
that records the location of an ARMv4t BX instruction to enable a
static linker to generate ARMv4 compatible instructions. This
relocation does not contain a reference symbol.
This patch enabled its creation by removing the requeriment of a
relocation symbol target in ELFState<ELFT>::writeSectionContent.
llvm-svn: 235513
Diffstat (limited to 'llvm/test/Object')
-rw-r--r-- | llvm/test/Object/yaml2obj-elf-rel-noref.yaml | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/llvm/test/Object/yaml2obj-elf-rel-noref.yaml b/llvm/test/Object/yaml2obj-elf-rel-noref.yaml new file mode 100644 index 00000000000..69fcf085443 --- /dev/null +++ b/llvm/test/Object/yaml2obj-elf-rel-noref.yaml @@ -0,0 +1,77 @@ +# RUN: yaml2obj -format=elf %s | llvm-readobj -sections -relocations - | FileCheck %s + +!ELF +FileHeader: !FielHeader + Class: ELFCLASS32 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_ARM + Flags: [ EF_ARM_EABI_VER5 ] +Sections: + - Name: .text + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC, SHF_EXECINSTR ] + AddressAlign: 0x0000000000000004 + Content: 03308FE0022093E7000052E31EFF2F01 + - Name: .rel.text + Type: SHT_REL + Flags: [ SHF_INFO_LINK ] + Link: .symtab + AddressAlign: 0x0000000000000004 + Info: .text + Relocations: + - Offset: 0x000000000000000C + Symbol: '' + Type: R_ARM_V4BX + - Name: .data + Type: SHT_PROGBITS + Flags: [ SHF_WRITE, SHF_ALLOC ] + AddressAlign: 0x0000000000000001 + Content: '' + - Name: .bss + Type: SHT_NOBITS + Flags: [ SHF_WRITE, SHF_ALLOC ] + AddressAlign: 0x0000000000000001 + Content: '' + - Name: .ARM.attributes + Type: SHT_ARM_ATTRIBUTES + AddressAlign: 0x0000000000000001 + Content: 4115000000616561626900010B000000060208010901 +Symbols: + Local: + - Name: .text + Type: STT_SECTION + Section: .text + - Name: .data + Type: STT_SECTION + Section: .data + - Name: .bss + Type: STT_SECTION + Section: .bss + - Name: '$a' + Section: .text + - Name: call_weak_fn + Type: STT_FUNC + Section: .text + - Name: .ARM.attributes + Type: STT_SECTION + Section: .ARM.attributes + +# CHECK: Section { +# CHECK-NEXT: Index: 0 +# CHECK: } +# CHECK: Section { +# CHECK-NEXT: Index: 1 +# CHECK-NEXT: Name: .text (5) +# CHECK: } +# CHECK-NEXT: Section { +# CHECK-NEXT: Index: 2 +# CHECK-NEXT: Name: .rel.text (1) +# CHECK-NEXT: Type: SHT_REL (0x9) +# CHECK-NEXT: Flags [ (0x40) +# CHECK: } +# CHECK: Relocations [ +# CHECK-NEXT: Section (2) .rel.text { +# CHECK-NEXT: 0xC R_ARM_V4BX - 0x0 +# CHECK-NEXT: } +# CHECK-NEXT: ] |