Index: llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-ppc64.test =================================================================== --- llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-ppc64.test +++ llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-ppc64.test @@ -1,38 +1,293 @@ -## Test that llvm-readobj/llvm-readelf shows proper relocation type +## Test that llvm-readobj shows proper relocation type ## names and values for ppc64 target. -## TODO: Use yaml2obj. obj2yaml now hangs on dumping relocs.obj.elf-ppc64 -# RUN: llvm-readobj -r --expand-relocs %p/Inputs/relocs.obj.elf-ppc64 | FileCheck %s +# RUN: yaml2obj %s -o %t-ppc64.o +# RUN: llvm-readobj -r --expand-relocs %t-ppc64.o | FileCheck %s # CHECK: Type: R_PPC64_NONE (0) # CHECK: Type: R_PPC64_ADDR32 (1) +# CHECK: Type: R_PPC64_ADDR24 (2) +# CHECK: Type: R_PPC64_ADDR16 (3) # CHECK: Type: R_PPC64_ADDR16_LO (4) # CHECK: Type: R_PPC64_ADDR16_HI (5) +# CHECK: Type: R_PPC64_ADDR16_HA (6) # CHECK: Type: R_PPC64_ADDR14 (7) +# CHECK: Type: R_PPC64_ADDR14_BRTAKEN (8) +# CHECK: Type: R_PPC64_ADDR14_BRNTAKEN (9) # CHECK: Type: R_PPC64_REL24 (10) +# CHECK: Type: R_PPC64_REL14 (11) +# CHECK: Type: R_PPC64_REL14_BRTAKEN (12) +# CHECK: Type: R_PPC64_REL14_BRNTAKEN (13) +# CHECK: Type: R_PPC64_GOT16 (14) +# CHECK: Type: R_PPC64_GOT16_LO (15) +# CHECK: Type: R_PPC64_GOT16_HI (16) +# CHECK: Type: R_PPC64_GOT16_HA (17) +# CHECK: Type: R_PPC64_GLOB_DAT (20) +# CHECK: Type: R_PPC64_JMP_SLOT (21) +# CHECK: Type: R_PPC64_RELATIVE (22) # CHECK: Type: R_PPC64_REL32 (26) # CHECK: Type: R_PPC64_ADDR64 (38) # CHECK: Type: R_PPC64_ADDR16_HIGHER (39) +# CHECK: Type: R_PPC64_ADDR16_HIGHERA (40) # CHECK: Type: R_PPC64_ADDR16_HIGHEST (41) +# CHECK: Type: R_PPC64_ADDR16_HIGHESTA (42) # CHECK: Type: R_PPC64_REL64 (44) # CHECK: Type: R_PPC64_TOC16 (47) # CHECK: Type: R_PPC64_TOC16_LO (48) +# CHECK: Type: R_PPC64_TOC16_HI (49) # CHECK: Type: R_PPC64_TOC16_HA (50) # CHECK: Type: R_PPC64_TOC (51) # CHECK: Type: R_PPC64_ADDR16_DS (56) # CHECK: Type: R_PPC64_ADDR16_LO_DS (57) +# CHECK: Type: R_PPC64_GOT16_DS (58) +# CHECK: Type: R_PPC64_GOT16_LO_DS (59) # CHECK: Type: R_PPC64_TOC16_DS (63) # CHECK: Type: R_PPC64_TOC16_LO_DS (64) # CHECK: Type: R_PPC64_TLS (67) +# CHECK: Type: R_PPC64_DTPMOD64 (68) +# CHECK: Type: R_PPC64_TPREL16 (69) # CHECK: Type: R_PPC64_TPREL16_LO (70) +# CHECK: Type: R_PPC64_TPREL16_HI (71) # CHECK: Type: R_PPC64_TPREL16_HA (72) +# CHECK: Type: R_PPC64_TPREL64 (73) +# CHECK: Type: R_PPC64_DTPREL16 (74) # CHECK: Type: R_PPC64_DTPREL16_LO (75) +# CHECK: Type: R_PPC64_DTPREL16_HI (76) # CHECK: Type: R_PPC64_DTPREL16_HA (77) +# CHECK: Type: R_PPC64_DTPREL64 (78) +# CHECK: Type: R_PPC64_GOT_TLSGD16 (79) # CHECK: Type: R_PPC64_GOT_TLSGD16_LO (80) +# CHECK: Type: R_PPC64_GOT_TLSGD16_HI (81) # CHECK: Type: R_PPC64_GOT_TLSGD16_HA (82) +# CHECK: Type: R_PPC64_GOT_TLSLD16 (83) # CHECK: Type: R_PPC64_GOT_TLSLD16_LO (84) +# CHECK: Type: R_PPC64_GOT_TLSLD16_HI (85) # CHECK: Type: R_PPC64_GOT_TLSLD16_HA (86) +# CHECK: Type: R_PPC64_GOT_TPREL16_DS (87) # CHECK: Type: R_PPC64_GOT_TPREL16_LO_DS (88) +# CHECK: Type: R_PPC64_GOT_TPREL16_HI (89) # CHECK: Type: R_PPC64_GOT_TPREL16_HA (90) +# CHECK: Type: R_PPC64_GOT_DTPREL16_DS (91) +# CHECK: Type: R_PPC64_GOT_DTPREL16_LO_DS (92) +# CHECK: Type: R_PPC64_GOT_DTPREL16_HI (93) +# CHECK: Type: R_PPC64_GOT_DTPREL16_HA (94) +# CHECK: Type: R_PPC64_TPREL16_DS (95) +# CHECK: Type: R_PPC64_TPREL16_LO_DS (96) +# CHECK: Type: R_PPC64_TPREL16_HIGHER (97) +# CHECK: Type: R_PPC64_TPREL16_HIGHERA (98) +# CHECK: Type: R_PPC64_TPREL16_HIGHEST (99) +# CHECK: Type: R_PPC64_TPREL16_HIGHESTA (100) +# CHECK: Type: R_PPC64_DTPREL16_DS (101) +# CHECK: Type: R_PPC64_DTPREL16_LO_DS (102) +# CHECK: Type: R_PPC64_DTPREL16_HIGHER (103) +# CHECK: Type: R_PPC64_DTPREL16_HIGHERA (104) +# CHECK: Type: R_PPC64_DTPREL16_HIGHEST (105) +# CHECK: Type: R_PPC64_DTPREL16_HIGHESTA (106) # CHECK: Type: R_PPC64_TLSGD (107) # CHECK: Type: R_PPC64_TLSLD (108) +# CHECK: Type: R_PPC64_ADDR16_HIGH (110) +# CHECK: Type: R_PPC64_ADDR16_HIGHA (111) +# CHECK: Type: R_PPC64_TPREL16_HIGH (112) +# CHECK: Type: R_PPC64_TPREL16_HIGHA (113) +# CHECK: Type: R_PPC64_DTPREL16_HIGH (114) +# CHECK: Type: R_PPC64_DTPREL16_HIGHA (115) +# CHECK: Type: R_PPC64_IRELATIVE (248) +# CHECK: Type: R_PPC64_REL16 (249) +# CHECK: Type: R_PPC64_REL16_LO (250) +# CHECK: Type: R_PPC64_REL16_HI (251) +# CHECK: Type: R_PPC64_REL16_HA (252) + +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2MSB + Type: ET_REL + Machine: EM_PPC64 +Sections: + - Name: .rela.text + Type: SHT_RELA + Relocations: + - Offset: 0x0000000000000000 + Type: R_PPC64_NONE + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR32 + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR24 + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16 + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR14 + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR14_BRTAKEN + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR14_BRNTAKEN + - Offset: 0x0000000000000000 + Type: R_PPC64_REL24 + - Offset: 0x0000000000000000 + Type: R_PPC64_REL14 + - Offset: 0x0000000000000000 + Type: R_PPC64_REL14_BRTAKEN + - Offset: 0x0000000000000000 + Type: R_PPC64_REL14_BRNTAKEN + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT16 + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_GLOB_DAT + - Offset: 0x0000000000000000 + Type: R_PPC64_JMP_SLOT + - Offset: 0x0000000000000000 + Type: R_PPC64_RELATIVE + - Offset: 0x0000000000000000 + Type: R_PPC64_REL32 + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR64 + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HIGHER + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HIGHERA + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HIGHEST + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HIGHESTA + - Offset: 0x0000000000000000 + Type: R_PPC64_REL64 + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC16 + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_TOC16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_TLS + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPMOD64 + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16 + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL64 + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16 + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL64 + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSGD16 + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSGD16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSGD16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSGD16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSLD16 + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSLD16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSLD16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TLSLD16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TPREL16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TPREL16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TPREL16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_TPREL16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_DTPREL16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_DTPREL16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_DTPREL16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_GOT_DTPREL16_HA + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HIGHER + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HIGHERA + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HIGHEST + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HIGHESTA + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_LO_DS + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HIGHER + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HIGHERA + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HIGHEST + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HIGHESTA + - Offset: 0x0000000000000000 + Type: R_PPC64_TLSGD + - Offset: 0x0000000000000000 + Type: R_PPC64_TLSLD + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HIGH + - Offset: 0x0000000000000000 + Type: R_PPC64_ADDR16_HIGHA + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HIGH + - Offset: 0x0000000000000000 + Type: R_PPC64_TPREL16_HIGHA + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HIGH + - Offset: 0x0000000000000000 + Type: R_PPC64_DTPREL16_HIGHA + - Offset: 0x0000000000000000 + Type: R_PPC64_IRELATIVE + - Offset: 0x0000000000000000 + Type: R_PPC64_REL16 + - Offset: 0x0000000000000000 + Type: R_PPC64_REL16_LO + - Offset: 0x0000000000000000 + Type: R_PPC64_REL16_HI + - Offset: 0x0000000000000000 + Type: R_PPC64_REL16_HA