• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## Check how obj2yaml produces SHT_LLVM_DEPENDENT_LIBRARIES section descriptions.
2
3# RUN: yaml2obj %s -o %t
4# RUN: obj2yaml %t | FileCheck %s
5
6# CHECK:      Sections:
7# CHECK-NEXT:  - Name:      .deplibs.single
8# CHECK-NEXT:    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
9# CHECK-NEXT:    Libraries: [ foo ]
10# CHECK-NEXT:  - Name:      .deplibs.multiple
11# CHECK-NEXT:    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
12# CHECK-NEXT:    Libraries: [ foo, bar, foo ]
13# CHECK-NEXT:  - Name:      .deplibs.empty
14# CHECK-NEXT:    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
15# CHECK-NEXT:    Libraries: [  ]
16# CHECK-NEXT:  - Name:      .deplibs.nonul
17# CHECK-NEXT:    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
18# CHECK-NEXT:    Content:   666F6F
19
20--- !ELF
21FileHeader:
22  Class: ELFCLASS64
23  Data:  ELFDATA2LSB
24  Type:  ET_REL
25Sections:
26## Case 1: test we use "Libraries" when dumping a valid section with a null-terminated string.
27  - Name:      .deplibs.single
28    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
29    Libraries: [ foo ]
30## Case 2: the same, but the section has multiple strings.
31  - Name:      .deplibs.multiple
32    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
33    Libraries: [ foo, bar, foo ]
34## Case 3: test we use "Libraries" when dumping an empty section.
35  - Name:      .deplibs.empty
36    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
37    Libraries: [ ]
38## Case 4: test we use "Content" when dumping a non-null terminated section.
39  - Name:      .deplibs.nonul
40    Type:      SHT_LLVM_DEPENDENT_LIBRARIES
41    Content:   "666f6f"
42