llvm-libunwind: use conventional (non-Darwin) X86 register numbers
commitf9f6c123cd6403360e2bc1768ab90a579a4f3a35
authoremaste <emaste@FreeBSD.org>
Tue, 19 Jul 2016 00:47:00 +0000 (19 00:47 +0000)
committeremaste <emaste@FreeBSD.org>
Tue, 19 Jul 2016 00:47:00 +0000 (19 00:47 +0000)
tree1de363e057da83a574d81f846fae5bbe970a9474
parent8222001d47ea868b986b5c9c383752c999e3b548
llvm-libunwind: use conventional (non-Darwin) X86 register numbers

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

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

Although the UNW_X86_* constants are not supposed to be coupled to
DWARF / eh_frame numbering they are currently conflated in LLVM
libunwind, and thus we require the non-Darwin numbering.

MFC after: 3 days
Sponsored by: The FreeBSD Foundation
contrib/llvm/projects/libunwind/include/libunwind.h