diff options
| author | Chris Bieneman <beanz@apple.com> | 2017-01-10 05:25:24 +0000 |
|---|---|---|
| committer | Chris Bieneman <beanz@apple.com> | 2017-01-10 05:25:24 +0000 |
| commit | 07ab0aa5d641f9eb29c994f5f2803c0b5badecdf (patch) | |
| tree | 26332b407c53c7db323336b8ccf088d5ab47abdc /llvm/tools/yaml2obj/yaml2macho.cpp | |
| parent | 4101032e5fb6a77b7fdfca9d9920d4b6065e5338 (diff) | |
| download | bcm5719-llvm-07ab0aa5d641f9eb29c994f5f2803c0b5badecdf.tar.gz bcm5719-llvm-07ab0aa5d641f9eb29c994f5f2803c0b5badecdf.zip | |
[ObjectYAML] Support for DWARF line tables
This patch re-lands r291470, which failed on Linux bots. The issue (I believe) was undefined behavior because the size of llvm::dwarf::LineNumberOps was not explcitly specified or consistently respected. The updated patch adds an explcit underlying type to the enum and preserves the size more correctly.
Original description:
This patch adds support for the DWARF debug_lines section. The line table state machine opcodes are preserved, so this can be used to test the state machine evaluation directly.
llvm-svn: 291541
Diffstat (limited to 'llvm/tools/yaml2obj/yaml2macho.cpp')
| -rw-r--r-- | llvm/tools/yaml2obj/yaml2macho.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/tools/yaml2obj/yaml2macho.cpp b/llvm/tools/yaml2obj/yaml2macho.cpp index a41ec55d73b..cbc4d7ff50d 100644 --- a/llvm/tools/yaml2obj/yaml2macho.cpp +++ b/llvm/tools/yaml2obj/yaml2macho.cpp @@ -280,6 +280,8 @@ Error MachOWriter::writeSectionData(raw_ostream &OS) { yaml2pubsection(OS, Obj.DWARF.PubTypes, Obj.IsLittleEndian); } else if (0 == strncmp(&Sec.sectname[0], "__debug_info", 16)) { yaml2debug_info(OS, Obj.DWARF); + } else if (0 == strncmp(&Sec.sectname[0], "__debug_line", 16)) { + yaml2debug_line(OS, Obj.DWARF); } } else { // Fills section data with 0xDEADBEEF |

