brintos

brintos / llvm-project-archived public Read only

0
0
Text · 4.2 KiB · 937a3e6 Raw
155 lines · plain
1# RUN: yaml2obj %s -o %t.o2# Preserve input to verify it is not modified.3# RUN: cp %t.o %t-copy.o4# RUN: llvm-objcopy %t.o -O elf64-x86-64 %t.2.o5# RUN: llvm-readobj --sections --symbols %t.2.o | FileCheck %s6# RUN: cmp %t.o %t-copy.o7 8!ELF9FileHeader:10  Class:           ELFCLASS3211  Data:            ELFDATA2LSB12  Type:            ET_EXEC13  Machine:         EM_38614Sections:15  - Name:            .text16    Type:            SHT_PROGBITS17    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]18    Size:            3219  - Name:            .data20    Type:            SHT_PROGBITS21    Flags:           [ SHF_ALLOC ]22    Content:         DEADBEEF23    Size:            1624Symbols:25  - Name:     foo26    Type:     STT_FUNC27    Section:  .text28    Value:    1629    Size:     830    Binding:  STB_GLOBAL31  - Name:     bar32    Type:     STT_OBJECT33    Section:  .data34    Size:     1635    Binding:  STB_GLOBAL36 37# CHECK:      Sections [38# CHECK-NEXT:   Section {39# CHECK-NEXT:     Index: 040# CHECK-NEXT:     Name:  (0)41# CHECK-NEXT:     Type: SHT_NULL (0x0)42# CHECK-NEXT:     Flags [ (0x0)43# CHECK-NEXT:     ]44# CHECK-NEXT:     Address:45# CHECK-NEXT:     Offset:46# CHECK-NEXT:     Size: 047# CHECK-NEXT:     Link: 048# CHECK-NEXT:     Info: 049# CHECK-NEXT:     AddressAlignment: 050# CHECK-NEXT:     EntrySize: 051# CHECK-NEXT:   }52# CHECK-NEXT:   Section {53# CHECK-NEXT:     Index: 154# CHECK-NEXT:     Name: .text55# CHECK-NEXT:     Type: SHT_PROGBITS (0x1)56# CHECK-NEXT:     Flags [ (0x6)57# CHECK-NEXT:       SHF_ALLOC (0x2)58# CHECK-NEXT:       SHF_EXECINSTR (0x4)59# CHECK-NEXT:     ]60# CHECK-NEXT:     Address:61# CHECK-NEXT:     Offset:62# CHECK-NEXT:     Size: 3263# CHECK-NEXT:     Link: 064# CHECK-NEXT:     Info: 065# CHECK-NEXT:     AddressAlignment: 066# CHECK-NEXT:     EntrySize: 067# CHECK-NEXT:   }68# CHECK-NEXT:   Section {69# CHECK-NEXT:     Index: 270# CHECK-NEXT:     Name: .data71# CHECK-NEXT:     Type: SHT_PROGBITS (0x1)72# CHECK-NEXT:     Flags [ (0x2)73# CHECK-NEXT:       SHF_ALLOC (0x2)74# CHECK-NEXT:     ]75# CHECK-NEXT:     Address:76# CHECK-NEXT:     Offset:77# CHECK-NEXT:     Size: 1678# CHECK-NEXT:     Link: 079# CHECK-NEXT:     Info: 080# CHECK-NEXT:     AddressAlignment: 081# CHECK-NEXT:     EntrySize: 082# CHECK-NEXT:   }83# CHECK-NEXT:   Section {84# CHECK-NEXT:     Index: 385# CHECK-NEXT:     Name: .symtab86# CHECK-NEXT:     Type: SHT_SYMTAB (0x2)87# CHECK-NEXT:     Flags [ (0x0)88# CHECK-NEXT:     ]89# CHECK-NEXT:     Address:90# CHECK-NEXT:     Offset:91# CHECK-NEXT:     Size: 7292# CHECK-NEXT:     Link: 493# CHECK-NEXT:     Info: 194# CHECK-NEXT:     AddressAlignment: 895# CHECK-NEXT:     EntrySize: 2496# CHECK-NEXT:   }97# CHECK-NEXT:   Section {98# CHECK-NEXT:     Index: 499# CHECK-NEXT:     Name: .strtab100# CHECK-NEXT:     Type: SHT_STRTAB (0x3)101# CHECK-NEXT:     Flags [ (0x0)102# CHECK-NEXT:     ]103# CHECK-NEXT:     Address:104# CHECK-NEXT:     Offset:105# CHECK-NEXT:     Size: 9106# CHECK-NEXT:     Link: 0107# CHECK-NEXT:     Info: 0108# CHECK-NEXT:     AddressAlignment: 1109# CHECK-NEXT:     EntrySize: 0110# CHECK-NEXT:   }111# CHECK-NEXT:   Section {112# CHECK-NEXT:     Index: 5113# CHECK-NEXT:     Name: .shstrtab114# CHECK-NEXT:     Type: SHT_STRTAB (0x3)115# CHECK-NEXT:     Flags [ (0x0)116# CHECK-NEXT:     ]117# CHECK-NEXT:     Address:118# CHECK-NEXT:     Offset:119# CHECK-NEXT:     Size: 39120# CHECK-NEXT:     Link: 0121# CHECK-NEXT:     Info: 0122# CHECK-NEXT:     AddressAlignment: 1123# CHECK-NEXT:     EntrySize: 0124# CHECK-NEXT:   }125# CHECK-NEXT: ]126# CHECK-NEXT: Symbols [127# CHECK-NEXT:   Symbol {128# CHECK-NEXT:     Name:129# CHECK-NEXT:     Value: 0x0130# CHECK-NEXT:     Size: 0131# CHECK-NEXT:     Binding: Local (0x0)132# CHECK-NEXT:     Type: None (0x0)133# CHECK-NEXT:     Other: 0134# CHECK-NEXT:     Section: Undefined135# CHECK-NEXT:   }136# CHECK-NEXT:   Symbol {137# CHECK-NEXT:     Name: foo138# CHECK-NEXT:     Value: 0x10139# CHECK-NEXT:     Size: 8140# CHECK-NEXT:     Binding: Global (0x1)141# CHECK-NEXT:     Type: Function (0x2)142# CHECK-NEXT:     Other: 0143# CHECK-NEXT:     Section: .text144# CHECK-NEXT:   }145# CHECK-NEXT:   Symbol {146# CHECK-NEXT:     Name: bar147# CHECK-NEXT:     Value: 0x0148# CHECK-NEXT:     Size: 16149# CHECK-NEXT:     Binding: Global (0x1)150# CHECK-NEXT:     Type: Object (0x1)151# CHECK-NEXT:     Other: 0152# CHECK-NEXT:     Section: .data153# CHECK-NEXT:   }154# CHECK-NEXT: ]155