diff options
author | Sean Silva <silvas@purdue.edu> | 2013-06-20 20:59:47 +0000 |
---|---|---|
committer | Sean Silva <silvas@purdue.edu> | 2013-06-20 20:59:47 +0000 |
commit | e38f640b22979994b42fb2f2aafc44cc39c20e8e (patch) | |
tree | 1c8d9e3d0236542c3bb61a78a2a664381361aff1 /lib/Object | |
parent | 6525e92b32c52772f7d750ada7084245655629e6 (diff) | |
download | external_llvm-e38f640b22979994b42fb2f2aafc44cc39c20e8e.zip external_llvm-e38f640b22979994b42fb2f2aafc44cc39c20e8e.tar.gz external_llvm-e38f640b22979994b42fb2f2aafc44cc39c20e8e.tar.bz2 |
[yaml2obj][ELF] Add support for st_value and st_size.
After this patch, the ELF file produced by
`yaml2obj-elf-symbol-basic.yaml`, when linked and executed on x86_64
(under SysV ABI, obviously; I tested on Linux), produces a working
executable that goes into an infinite loop!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184469 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Object')
-rw-r--r-- | lib/Object/ELFYAML.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Object/ELFYAML.cpp b/lib/Object/ELFYAML.cpp index 39faf7d..7fa7756 100644 --- a/lib/Object/ELFYAML.cpp +++ b/lib/Object/ELFYAML.cpp @@ -316,6 +316,8 @@ void MappingTraits<ELFYAML::Symbol>::mapping(IO &IO, ELFYAML::Symbol &Symbol) { IO.mapOptional("Binding", Symbol.Binding, ELFYAML::ELF_STB(0)); IO.mapOptional("Type", Symbol.Type, ELFYAML::ELF_STT(0)); IO.mapOptional("Section", Symbol.Section, StringRef()); + IO.mapOptional("Value", Symbol.Value, Hex64(0)); + IO.mapOptional("Size", Symbol.Size, Hex64(0)); } void MappingTraits<ELFYAML::Section>::mapping(IO &IO, |