llvm-project/llvm/tools
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
..
bugpoint [opaque pointer types] Pass value type to LoadInst creation. 2019-02-01 20:44:24 +00:00
bugpoint-passes Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
dsymutil Revert "[DWARFFormValue] Cleanup DWARFFormValue interface. (2/2) (NFC)" 2019-03-02 01:10:00 +00:00
gold Reland "[Remarks] Add -foptimization-record-passes to filter remark emission" 2019-03-12 21:22:27 +00:00
llc Reland "[Remarks] Add -foptimization-record-passes to filter remark emission" 2019-03-12 21:22:27 +00:00
lli [opaque pointer types] Add a FunctionCallee wrapper type, and use it. 2019-02-01 02:28:03 +00:00
llvm-ar [llvm-ar] Support N [count] modifier 2019-03-19 16:09:54 +00:00
llvm-as Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-as-fuzzer Fix some include order and file headers issues. NFC 2019-02-21 07:42:31 +00:00
llvm-bcanalyzer Implementation of asm-goto support in LLVM 2019-02-08 20:48:56 +00:00
llvm-c-test [LLVM-C] Add Bindings to GlobalIFunc 2019-02-05 18:05:44 +00:00
llvm-cat Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-cfi-verify [DebugInfo] add SectionedAddress to DebugInfo interfaces. 2019-02-27 13:17:36 +00:00
llvm-config [cmake] Add function for building native tool 2019-04-02 15:58:03 +00:00
llvm-cov Speeding up llvm-cov export with multithreaded renderFiles implementation. 2019-03-14 17:49:27 +00:00
llvm-cvtres Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-cxxdump Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-cxxfilt [llvm-cxxfilt] Re-enable split and demangle stdin input on certain non-alphanumerics. 2019-02-27 21:39:11 +00:00
llvm-cxxmap Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-diff Fix some include order and file headers issues. NFC 2019-02-21 07:42:31 +00:00
llvm-dis Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-dwarfdump [llvm-dwarfdump] Simplify -o handling 2019-03-27 08:19:36 +00:00
llvm-dwp [llvm-dwp] Use color-formatted error reporting 2019-02-12 20:37:33 +00:00
llvm-elfabi Fix some include order and file headers issues. NFC 2019-02-21 07:42:31 +00:00
llvm-exegesis [NFC][llvm-exegesis] Also promote getSchedClassPoint() into ResolvedSchedClass. 2019-03-29 14:58:01 +00:00
llvm-extract Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-go Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-isel-fuzzer Fix file header issues in fuzzers. NFC 2019-02-21 07:57:14 +00:00
llvm-itanium-demangle-fuzzer Fix file header issues in fuzzers. NFC 2019-02-21 07:57:14 +00:00
llvm-jitlistener Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-link Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-lto Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-lto2 Reland "[Remarks] Add -foptimization-record-passes to filter remark emission" 2019-03-12 21:22:27 +00:00
llvm-mc [DWARF] Make -g with empty assembler source work better. 2019-03-01 20:58:04 +00:00
llvm-mc-assemble-fuzzer Fix some include order and file headers issues. NFC 2019-02-21 07:42:31 +00:00
llvm-mc-disassemble-fuzzer Fix file header issues in fuzzers. NFC 2019-02-21 07:57:14 +00:00
llvm-mca [MCA] Add an experimental MicroOpQueue stage. 2019-03-29 12:15:37 +00:00
llvm-microsoft-demangle-fuzzer Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-modextract Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-mt Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-nm [llvm-nm]Add support for --no-demangle 2019-04-03 12:57:46 +00:00
llvm-objcopy [llvm-objcopy] Make section rename/set flags case-insensitive 2019-04-03 14:40:27 +00:00
llvm-objdump Fix typoed variable name. 2019-03-28 01:12:13 +00:00
llvm-opt-fuzzer Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-opt-report Reland "[Remarks] Add a new Remark / RemarkParser abstraction" 2019-03-19 21:11:07 +00:00
llvm-pdbutil [pdb] Add -type-stats and sort stats by descending size 2019-03-22 21:22:13 +00:00
llvm-profdata [llvm-profdata] Deleted unused Cutoffs added by D16005 2019-03-15 10:43:51 +00:00
llvm-rc Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-readobj [llvm-readobj] Add GNU style dumper for .gnu.version section 2019-04-03 13:32:49 +00:00
llvm-rtdyld [DebugInfo] add SectionedAddress to DebugInfo interfaces. 2019-02-27 13:17:36 +00:00
llvm-shlib [llvm-shlib] Fix cross-compilation for LLVM-C 2019-04-02 15:58:05 +00:00
llvm-size Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-special-case-list-fuzzer Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-split Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-stress Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-strings Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-symbolizer [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces" 2019-03-23 08:08:40 +00:00
llvm-undname Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
llvm-xray [DebugInfo] add SectionedAddress to DebugInfo interfaces. 2019-02-27 13:17:36 +00:00
llvm-yaml-numeric-parser-fuzzer Fix file header issues in fuzzers. NFC 2019-02-21 07:57:14 +00:00
lto Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
msbuild Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
obj2yaml [yaml2obj][obj2yaml] - Change how symbol's binding is descibed when parsing/dumping. 2019-04-03 14:53:42 +00:00
opt Reland "[Remarks] Add -foptimization-record-passes to filter remark emission" 2019-03-12 21:22:27 +00:00
opt-viewer [opt-viewer] Teach optrecord.py about !Failure tags 2019-03-27 18:35:04 +00:00
remarks-shlib Reland "[Remarks] Add a new Remark / RemarkParser abstraction" 2019-03-19 21:11:07 +00:00
sancov [DebugInfo] add SectionedAddress to DebugInfo interfaces. 2019-02-27 13:17:36 +00:00
sanstats [DebugInfo] add SectionedAddress to DebugInfo interfaces. 2019-02-27 13:17:36 +00:00
verify-uselistorder Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
xcode-toolchain [CMake] Use LLVM_ENABLE_IDE instead of CMAKE_CONFIGURATION_TYPES 2018-10-15 21:20:02 +00:00
yaml2obj [yaml2obj][obj2yaml] - Change how symbol's binding is descibed when parsing/dumping. 2019-04-03 14:53:42 +00:00
CMakeLists.txt Fix most of LLVM's tests with LLVM_ENABLE_PIC=OFF 2019-01-16 20:44:36 +00:00
LLVMBuild.txt Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00