1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 10:42:39 +01:00
llvm-mirror/lib/ObjectYAML
Georgii Rymar 0ba63b8a56 [yaml2obj] - Automatically assign sh_addr for allocatable sections.
I've noticed that it is not convenient to create YAMLs from
binaries (using obj2yaml) that have to be test cases for obj2yaml
later (after applying yaml2obj).

The problem, for example is that obj2yaml emits "DynamicSymbols:"
key instead of .dynsym. It also does not create .dynstr.
And when a YAML document without explicitly defined .dynsym/.dynstr
is given to yaml2obj, we have issues:

1) These sections are placed after non-allocatable sections (I've fixed it in D74756).
2) They have VA == 0. User needs create descriptions for such sections explicitly manually
    to set a VA.

This patch addresses (2). I suggest to let yaml2obj assign virtual addresses by itself.
It makes an output binary to be much closer to "normal" ELF.
(It is still possible to use "Address: 0x0" for a section to get the original behavior
if it is needed)

Differential revision: https://reviews.llvm.org/D74764
2020-02-22 14:43:54 +03:00
..
CMakeLists.txt [cmake] Explicitly mark libraries defined in lib/ as "Component Libraries" 2019-11-21 10:48:08 -08:00
CodeViewYAMLDebugSections.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
CodeViewYAMLSymbols.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
CodeViewYAMLTypeHashing.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
CodeViewYAMLTypes.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
COFFEmitter.cpp [yaml2obj][COFF] Add support for extended relocation tables 2019-11-14 12:39:28 -08:00
COFFYAML.cpp [COFF] Fix .bss section size bug in obj2yaml / yaml2obj 2019-05-10 21:53:44 +00:00
DWARFEmitter.cpp Revert "Remove redundant "std::move"s in return statements" 2020-02-10 07:07:40 -08:00
DWARFVisitor.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DWARFVisitor.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
DWARFYAML.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ELFEmitter.cpp [yaml2obj] - Automatically assign sh_addr for allocatable sections. 2020-02-22 14:43:54 +03:00
ELFYAML.cpp [yaml2obj] - Automatically assign sh_addr for allocatable sections. 2020-02-22 14:43:54 +03:00
LLVMBuild.txt [yaml2obj] Move core yaml2obj code into lib and include for use in unit tests 2019-08-07 02:44:49 +00:00
MachOEmitter.cpp Fix a typo in my previous commit 2019-11-06 11:42:30 -08:00
MachOYAML.cpp [yaml2obj/obj2yaml][MachO] Allow setting custom section data 2019-08-20 08:49:07 +00:00
MinidumpEmitter.cpp Update MinidumpYAML to use minidump::Exception for exception stream 2019-10-18 14:56:19 +00:00
MinidumpYAML.cpp minidump: Add an "arm64" constant 2019-10-31 11:20:46 +01:00
ObjectYAML.cpp [yaml2obj] - Don't crash on invalid inputs. 2019-04-25 09:59:55 +00:00
WasmEmitter.cpp [WebAssembly] Allow multivalue signatures in object files 2019-10-18 20:27:30 +00:00
WasmYAML.cpp [WebAssembly] Allow multivalue signatures in object files 2019-10-18 20:27:30 +00:00
XCOFFYAML.cpp [XCOFF] Implement parsing symbol table for xcoffobjfile and output as yaml format 2019-05-28 14:37:59 +00:00
yaml2obj.cpp [yaml2obj/ObjectYAML] - Cleanup the error reporting API, add custom errors handlers. 2019-09-13 16:00:16 +00:00
YAML.cpp [FixBB] - Fix one more std::min -> std::min<uint64_t> to make BB happy. 2019-11-11 12:11:54 +03:00