[PATCH] [lld] [mach-o] implement minimal __unwind_info support
Tim Northover
t.p.northover at gmail.com
Tue Sep 9 04:47:28 PDT 2014
Hi kledzik,
Hi,
I've finally had some time to work on generating __unwind_info sections. The attached patch is fairly limited, but seemed like a minimally useful implementation:
- It's x86_64 only.
- It will fail if more than 3 personality functions are used.
- It will fail if there is a function without a __compact_unwind entry.
- It only produces normal pages, rather than compressed.
I intend to fix those, and I think most of them should be fairly small additions in the current scheme, but I'd like to get any major design problems hammered out before I start.
So, any suggestions? Is it OK to commit?
Cheers.
Tim.
http://reviews.llvm.org/D5261
Files:
include/lld/Core/DefinedAtom.h
include/lld/ReaderWriter/MachOLinkingContext.h
lib/Core/DefinedAtom.cpp
lib/ReaderWriter/MachO/ArchHandler.h
lib/ReaderWriter/MachO/ArchHandler_arm.cpp
lib/ReaderWriter/MachO/ArchHandler_x86.cpp
lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
lib/ReaderWriter/MachO/CMakeLists.txt
lib/ReaderWriter/MachO/CompactUnwindPass.cpp
lib/ReaderWriter/MachO/CompactUnwindPass.hpp
lib/ReaderWriter/MachO/MachOLinkingContext.cpp
lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp
lib/ReaderWriter/MachO/MachOPasses.h
lib/ReaderWriter/YAML/ReaderWriterYAML.cpp
test/mach-o/exe-offsets.yaml
test/mach-o/exe-segment-overlap.yaml
test/mach-o/unwind-info-simple.yaml
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D5261.13450.patch
Type: text/x-patch
Size: 40980 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140909/0f960c76/attachment.bin>
More information about the llvm-commits
mailing list