Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 Jul 2016 00:47:00 +0000 (UTC)
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r303016 - head/contrib/llvm/projects/libunwind/include
Message-ID:  <201607190047.u6J0l0Un008707@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: emaste
Date: Tue Jul 19 00:47:00 2016
New Revision: 303016
URL: https://svnweb.freebsd.org/changeset/base/303016

Log:
  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

Modified:
  head/contrib/llvm/projects/libunwind/include/libunwind.h

Modified: head/contrib/llvm/projects/libunwind/include/libunwind.h
==============================================================================
--- head/contrib/llvm/projects/libunwind/include/libunwind.h	Tue Jul 19 00:27:17 2016	(r303015)
+++ head/contrib/llvm/projects/libunwind/include/libunwind.h	Tue Jul 19 00:47:00 2016	(r303016)
@@ -151,8 +151,8 @@ enum {
   UNW_X86_ECX = 1,
   UNW_X86_EDX = 2,
   UNW_X86_EBX = 3,
-  UNW_X86_EBP = 4,
-  UNW_X86_ESP = 5,
+  UNW_X86_ESP = 4,
+  UNW_X86_EBP = 5,
   UNW_X86_ESI = 6,
   UNW_X86_EDI = 7
 };



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201607190047.u6J0l0Un008707>