History log of /external/libunwind_llvm/include/libunwind.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7d6741381d02cee797a01c1ffa5ab10bae4dbe66 31-Mar-2017 Ranjeet Singh <Ranjeet.Singh@arm.com> [libunwind] Clean up macro usage.

Convention in libunwind is to use !defined(FOOT) not !FOO.

Differential Revision: https://reviews.llvm.org/D31078



git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@299225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
aa805e415f19f50ebc6f5e1e1e4bf9bb7f61816b 21-Jan-2017 Saleem Abdulrasool <compnerd@compnerd.org> X86: swap EBP, ESP on !APPLE

Restore the `libunwind.h` enumeration values back to the inverted
values. This diverges from the DWARF definition of the register values.
However, this allows our header to be compatible with other unwind
implementations (e.g. HP, GNU Savannah, GCC).

The register IDs are only swapped in the header and need to be unswapped
when accessing the unwind register file. The flipped EBP and ESP only
applies on non-Apple x86 targets.

When optimizations were enabled, EBP and ESP would no longer be
equivalent. As a result, the incorrect access on Linux would manifest
as a failure to unwind the stack. We can now unwind the stack with and
without FPO on Linux x86.

Resolves PR30879!

git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@292723 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
0eea5e270b455f79c59df69b8fb38f68399314a2 02-Nov-2016 Marshall Clow <mclow.lists@gmail.com> Add support for old versions of MacOS to libunwind. Fixes PR22203. Thanks to Jeremy for the bug report and the patch.

git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@285845 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
99e90f49adbe5b60f3e17c439a6ca715061b1f30 28-Sep-2016 Ed Schouten <ed@nuxi.nl> Also use the proper register numbers on CloudABI.

Without this change applied, unw_step() fails to obtain the next frame
properly.


git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@282589 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
85e3961e2d8fdcd7dc9a6705cbf12b5a93ebacef 30-Aug-2016 Ed Maste <emaste@freebsd.org> libunwind: fix X86 register numbers for FreeBSD/i386

For historical reasons i386 has ebp and esp swapped in the eh_frame
register numbering on at least Darwin. That is:

Darwin FreeBSD
Reg # eh_frame eh_frame DWARF
===== ======== ======== =====
4 ebp esp esp
5 esp ebp ebp

Although the UNW_X86_* constants are not intended to be coupled with
DWARF / eh_frame numbering they are currently conflated in libunwind.

Differential Revision: https://reviews.llvm.org/D22508


git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@280099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
17473fd6fcba8ac95ce7246eedafadab27844f27 30-Aug-2016 Ed Maste <emaste@freebsd.org> libunwind: correct 'libuwind' typo

There were several instances of libuwind (missing an "n"), dating to
the initial import of libunwind.


git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@280086 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
63469ffb83da03e4fd54185bf14384221dc3b1c5 19-Jul-2016 Ed Maste <emaste@freebsd.org> libunwind: Use conventional DWARF capitalization in comments and errors


git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@275996 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
d2d1ea9d75dfc4f55540f7e3cf940c6a1d6674cc 25-May-2016 Asiri Rathnayake <asiri.rathnayake@arm.com> Introduce a native-only unwinder build.

Currently libunwind is built to support cross-unwinding [1] by default, which
requires the buffers unw_context_t and unw_cursor_t to be large enough to hold
the vritual register set (VRS) of any supported architecture. This is not
desirable for some platforms where the stack usage of the unwinder needs
to be kept to a minimum (e.g. bare-metal targets). The current patch introduces
a native-only (-DLIBUNWIND_ENABLE_CROSS_UNWINDING=OFF) unwinder variant that
adopts strict sizes for the buffers unw_context_t and unw_cursor_t depending
on the target architecture.

[1] http://www.nongnu.org/libunwind/man/libunwind(3).html#section_4

Change-Id: I380fff9a56c16a0fc520e3b1d8454a34b4a48373

git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@270692 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
d4255ab516c2fb7e0cb2cc0685e5f8f1e6769912 31-Aug-2015 Peter Zotov <whitequark@whitequark.org> [libunwind] Add support for OpenRISC 1000.

This patch makes no assumptions on ABI past the ABI defined in
the OpenRISC 1000 spec except that the DWARF register numbers will
be 0-31 for registers r0-r31, which is true for both gcc and
clang at the moment.

git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@246413 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
61278584b5c84c422ff5da10f46c3235c54636c9 19-Jul-2015 Logan Chien <tzuhsiang.chien@gmail.com> libunwind: Introduce __libunwind_config.h.

Introduce __libunwind_config.h to avoid cross repository circular
dependency with libcxxabi.


git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@242642 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h
675df58e9b2f6c4218ef7d19bfe405772ada5444 24-Apr-2015 Saleem Abdulrasool <compnerd@compnerd.org> unwind: move src/Unwind, include/, and test/ unwind content

This moves the majority of the unwind sources into the new project layout for
libunwind. This was previously discussed on llvmdev at [1]. This is a
purely movement related change, with the build infrastructure currently still
residing in the libc++abi repository.

[1] http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-January/081507.html



git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@235758 91177308-0d34-0410-b5e6-96231b3b80d8
/external/libunwind_llvm/include/libunwind.h