Ed Maste 77ac8927fd libunwind: make __{de,}register_frame compatible with libgcc API
The libgcc __register_frame and __deregister_frame functions take a
pointer to a set of FDE/CIEs, terminated by an entry where length is 0.

In Apple's libunwind implementation the pointer is taken to be to a
single FDE. I suspect this was just an Apple bug, compensated by Apple-
specific code in LLVM.

See lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp and
http://lists.llvm.org/pipermail/llvm-dev/2013-April/061737.html
for more detail.

This change is based on the LLVM RTDyldMemoryManager.cpp. It should
later be changed to be alignment-safe.

Reported by:	dim
Reviewed by:	dim
MFC after:	1 month
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D8869
2016-12-21 14:06:44 +00:00
..
2016-11-14 00:33:03 +00:00
2016-12-19 23:38:07 +00:00
2016-12-13 22:16:02 +00:00
2016-11-07 15:54:47 +00:00
2016-12-04 21:13:26 +00:00
2016-12-17 02:07:08 +00:00
2016-10-01 00:14:01 +00:00
2016-09-03 23:04:56 +00:00
2016-08-24 12:32:24 +00:00
2016-12-04 23:23:59 +00:00
2016-09-29 18:24:29 +00:00