llvm-project/llvm/lib/ObjectYAML
Georgii Rymar 6487ffafd1 Reland "[yaml2obj][ELF] - Simplify the code that performs sections validation."
This reverts commit 1b589f4d4d and relands the D89463
with the fix: update `MappingTraits<FileFilter>::validate()` in ClangTidyOptions.cpp to
match the new signature (change the return type to "std::string" from "StringRef").

Original commit message:

This:

Changes the return type of MappingTraits<T>>::validate to std::string
instead of StringRef. It allows to create more complex error messages.

It introduces std::vector<std::pair<StringRef, bool>> getEntries():
a new virtual method of Section, which is the base class for all sections.
It returns names of special section specific keys (e.g. "Entries") and flags that says if them exist in a YAML.
The code in validate() uses this list of entries descriptions to generalize validation.
This approach was discussed in the D89039 thread.

Differential revision: https://reviews.llvm.org/D89463
2020-10-20 16:25:33 +03:00
..
CMakeLists.txt [DWARFYAML] Refactor emitDebugInfo() to make the length be inferred. 2020-07-23 23:00:19 +08:00
COFFEmitter.cpp [PDB] Remove unique_ptr wrapper around C13 line table subsections 2020-05-02 16:35:07 -07:00
COFFYAML.cpp
CodeViewYAMLDebugSections.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
CodeViewYAMLSymbols.cpp [COFF][ARM] Fix CodeView for Windows on 32bit ARM targets. 2020-10-19 22:16:16 -07:00
CodeViewYAMLTypeHashing.cpp
CodeViewYAMLTypes.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
DWARFEmitter.cpp [DWARFYAML] Make the opcode_base and the standard_opcode_lengths fields optional. 2020-10-09 11:10:03 +08:00
DWARFYAML.cpp Reland "[yaml2obj][ELF] - Simplify the code that performs sections validation." 2020-10-20 16:25:33 +03:00
ELFEmitter.cpp [lib/ObjectYAML] - Simplify the code that handles Content/Size fields. 2020-10-16 09:57:27 +03:00
ELFYAML.cpp Reland "[yaml2obj][ELF] - Simplify the code that performs sections validation." 2020-10-20 16:25:33 +03:00
LLVMBuild.txt [DWARFYAML] Add dependency 'BinaryFormat'. NFC. 2020-07-20 13:58:22 +08:00
MachOEmitter.cpp [MachOYAML] Allow handcrafting custom contents for DWARF sections. 2020-09-04 22:42:45 +08:00
MachOYAML.cpp Reland "[yaml2obj][ELF] - Simplify the code that performs sections validation." 2020-10-20 16:25:33 +03:00
MinidumpEmitter.cpp Update MinidumpYAML to use minidump::Exception for exception stream 2019-10-18 14:56:19 +00:00
MinidumpYAML.cpp Reland "[yaml2obj][ELF] - Simplify the code that performs sections validation." 2020-10-20 16:25:33 +03:00
ObjectYAML.cpp
WasmEmitter.cpp [WebAssembly] Added .tabletype to asm and multiple table support in obj files 2020-10-13 07:52:23 -07:00
WasmYAML.cpp [WebAssembly] Added .tabletype to asm and multiple table support in obj files 2020-10-13 07:52:23 -07:00
XCOFFYAML.cpp
YAML.cpp [FixBB] - Fix one more std::min -> std::min<uint64_t> to make BB happy. 2019-11-11 12:11:54 +03:00
yaml2obj.cpp [yaml2obj] - Introduce a 10 Mb limit of the output by default and a --max-size option. 2020-06-10 15:23:59 +03:00