llvm-project/llvm/test/tools/llvm-objdump/X86/Inputs
George Rimar 6da44ad75d [yaml2obj][obj2yaml] - Change how symbol's binding is descibed when parsing/dumping.
Currently, YAML has the following syntax for describing the symbols:

Symbols:
  Local:
    LocalSymbol1:
    ...
    LocalSymbol2:
    ...
  ...
  Global:
    GlobalSymbol1:
  ...
  Weak:
  ...
  GNUUnique:

I.e. symbols are grouped by their bindings. That is not very convenient,
because:

It does not allow to set a custom binding, what can be useful for producing
broken/special outputs for test cases. Adding a new binding would require to
change a syntax (what we observed when added GNUUnique recently).

It does not allow to change the order of the symbols in .symtab/.dynsym,
i.e. currently all Local symbols are placed first, then Global, Weak and GNUUnique
are following, but we are not able to change the order.

It is not consistent. Binding is just one of the properties of the symbol,
we do not group them by other properties.

It makes the code more complex that it can be. This patch shows it can be simplified
with the change performed.

The patch changes the syntax to just:

Symbols:
  Symbol1:
  ...
  Symbol2:
  ...
...

With that, we are able to work with the binding field just like with any other symbol property.

Differential revision: https://reviews.llvm.org/D60122

llvm-svn: 357595
2019-04-03 14:53:42 +00:00
..
malformed-machos
ObjC.exe.macho-x86_64
ObjC.obj.macho-x86_64
Objc1.32bit.exe.macho-i386
Objc1.32bit.obj.macho-i386
Objc2.32bit.exe.macho-i386
Objc2.32bit.obj.macho-i386
Objc2.64bit.exe.macho-x86_64
Objc2.64bit.obj.dylib-x86_64
Objc2.64bit.obj.macho-x86_64
codesig.macho-x86_64
debug-info-fileinfo.exe.elf-x86_64
disassemble-data.obj
disassemble.dll.coff-i386
dylibLoadKinds.macho-x86_64
dylibModInit.macho-x86_64
dylibRoutines.macho-x86_64
dylibSubClient.macho-x86_64
dylibSubFramework.macho-x86_64
dylibSubLibrary.macho-x86_64
dylibSubUmbrella.macho-x86_64
exeThread.macho-x86_64
hello.exe.elf-i386
hello.exe.macho-i386
hello.exe.macho-x86_64
hello.exe.nopie.elf-i386
hello.exe.stripped.macho-x86_64
hello.obj.macho-i386
hello.obj.macho-x86_64
hello_cpp.exe.macho-x86_64
internal.exe.coff-x86_64
kextbundle.macho-x86_64
linkerOption.macho-x86_64
macho-disassemble-stab-x86_64 objdump fails to parse Mach-O binaries with n_desc bearing stabs 2019-02-23 06:19:56 +00:00
macho-invalid-bind-entry
macho-invalid-linker-command Detect malformed LC_LINKER_COMMANDs in Mach-O binaries 2019-03-11 18:29:25 +00:00
macho-invalid-reloc-section-index
macho-invalid-symbol-indr
macho-invalid-symbol-indr-archive-universal
macho-invalid-symbol-lib_ordinal
macho-invalid-symbol-nsect
macho-invalid-symbol-nsect-archive
macho-invalid-symbol-strx
macho-invalid-symbol-strx-universal
macho-multiple-text
macho-preload-x86_64
macho-universal-archive.x86_64.i386
macho-universal.x86_64.i386
macho-universal64.x86_64.i386
nofirst-symbol.macho-x86_64
note.macho-x86
objModInit.macho-x86_64
openbsd-phdrs.elf-x86-64
out-of-section-sym.elf-i386
phdr-note.elf-x86-64
phdrs.elf-x86-64
simple-executable-x86_64.yaml [yaml2obj][obj2yaml] - Change how symbol's binding is descibed when parsing/dumping. 2019-04-03 14:53:42 +00:00
source-interleave-x86_64.c
stripped-elf.so
stub-nosyms.macho-x86_64
stubbed.dylib.macho-x86_64
thread.macho-i386
trivial.obj.elf-i386
truncated-section.dylib.macho-x86_64