summaryrefslogtreecommitdiffstats
path: root/lld/lib/ReaderWriter/MachO/CompactUnwindPass.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix Clang-tidy modernize-use-auto warnings, other minor fixes.Eugene Zelenko2015-11-101-4/+2
| | | | | | Differential revision: http://reviews.llvm.org/D14553 llvm-svn: 252661
* [lld][MachO] Prune unused EH frames.Lang Hames2015-10-231-0/+51
| | | | llvm-svn: 251095
* Simplify Pass::perform to take a SimpleFile& instead of unique_ptr<SimpleFile>&David Blaikie2015-06-191-9/+9
| | | | | | | | None of the implementations replace the SimpleFile with some other file, they just modify the SimpleFile in-place, so a direct reference to the file is sufficient. llvm-svn: 240167
* [lld] Allow LLD passes to return error codes.Lang Hames2015-06-191-2/+4
| | | | llvm-svn: 240147
* Do s/_context/_ctx/g globally.Rui Ueyama2015-04-101-3/+3
| | | | | | | | I believe this patch eliminates all remaining uses of _context or _linkingContext variable names. Consistent naming improves readability. llvm-svn: 234645
* Merge MutableFile with SimpleFile.Rui Ueyama2015-04-071-4/+4
| | | | | | | | SimpleFile is the only derived class of MutableFile. This patch reduces the height of class hierarchy by removing MutableFile class. llvm-svn: 234354
* Use alignment values everywhere instead of log2.Rui Ueyama2015-03-261-1/+1
| | | | | | | | This patch defines implicit conversion between integers and PowerOf2 instances, so uses of the classes is now implicit and look like regular integers. Now we are ready to remove the scaffolding. llvm-svn: 233245
* Remove unused #includes.Rui Ueyama2015-02-271-1/+0
| | | | llvm-svn: 230726
* Fix heap-buffer-overflow bugs identified by the Address SanitizerGreg Fitzgerald2015-02-191-0/+3
| | | | | | Differential Revision: http://reviews.llvm.org/D7733 llvm-svn: 229912
* Use make_unique.Rui Ueyama2015-02-061-1/+1
| | | | llvm-svn: 228453
* [mach-o] Pass vectors by reference and name empty vector.Nick Kledzik2014-12-051-5/+8
| | | | llvm-svn: 223527
* [mach-o] remove __compact_unwind atoms once __unwind_info has been generatedTim Northover2014-11-041-1/+5
| | | | | | | | | | The job of the CompactUnwind pass is to turn __compact_unwind data (and __eh_frame) into the compressed final form in __unwind_info. After it's done, the original atoms are no longer relevant and should be deleted (they cause problems during actual execution, quite apart from the fact that they're not needed). llvm-svn: 221301
* TMP: fix readN & writeN to not encourage UBTim Northover2014-10-271-33/+36
| | | | llvm-svn: 220730
* [mach-o] Support data-only dylibsNick Kledzik2014-10-241-0/+4
| | | | | | | | In final linked shared images, the __TEXT segment contains both code and the mach-o header/load-commands. In the case of a data-only dylib, there is no code, so we need to force the addition of the __TEXT segment. llvm-svn: 220597
* Sort include files according to convention.Shankar Easwaran2014-10-181-3/+1
| | | | llvm-svn: 220131
* [mach-o] keep Windows library happy.Tim Northover2014-10-181-1/+1
| | | | | | &v[v.size()] may be invalid C++. llvm-svn: 220115
* [mach-o] update __eh_frame handling for Nick's suggestionsTim Northover2014-10-161-10/+5
| | | | | | | First, add a comment to support more variation in FDE formats. Second, refactor fde -> function handling into a separate function living in the ArchHandler. llvm-svn: 219959
* [mach-o] avoid overly clever std::find_ifTim Northover2014-10-151-11/+8
| | | | | | | The bots were complaining (possibly because of a lack of traits on the iterator I was trying to use). No functional change. llvm-svn: 219843
* [mach-o] make __unwind_info defer to __eh_frame when necessary.Tim Northover2014-10-151-15/+81
| | | | | | | | | | | | Not all situations are representable in the compressed __unwind_info format, and when this happens the entry needs to point to the more general __eh_frame description. Just x86_64 implementation for now. rdar://problem/18208653 llvm-svn: 219836
* [mach-o] add file comment to compact unwind passTim Northover2014-09-301-1/+3
| | | | llvm-svn: 218704
* [mach-o] create __unwind_info section on x86_64Tim Northover2014-09-301-0/+456
This is a minimally useful pass to construct the __unwind_info section in a final object from the various __compact_unwind inputs. Currently it doesn't produce any compressed pages, only works for x86_64 and will fail if any function ends up without __compact_unwind. rdar://problem/18208653 llvm-svn: 218703
OpenPOWER on IntegriCloud