Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/lib/libunwind Add _Unwind_GetIPInfo for libstdc++.



details:   https://anonhg.NetBSD.org/src/rev/b0e54a8c170a
branches:  trunk
changeset: 327613:b0e54a8c170a
user:      joerg <joerg%NetBSD.org@localhost>
date:      Thu Mar 13 00:28:20 2014 +0000

description:
Add _Unwind_GetIPInfo for libstdc++.

diffstat:

 sys/lib/libunwind/libunwind.cxx |  6 ++++++
 sys/lib/libunwind/unwind.h      |  1 +
 2 files changed, 7 insertions(+), 0 deletions(-)

diffs (27 lines):

diff -r 7b47256e3a4a -r b0e54a8c170a sys/lib/libunwind/libunwind.cxx
--- a/sys/lib/libunwind/libunwind.cxx   Wed Mar 12 23:42:33 2014 +0000
+++ b/sys/lib/libunwind/libunwind.cxx   Thu Mar 13 00:28:20 2014 +0000
@@ -275,6 +275,12 @@
   return cursor->getIP();
 }
 
+uintptr_t _Unwind_GetIPInfo(struct _Unwind_Context *context, int *isSignalFrame) {
+  ThisUnwindCursor *cursor = (ThisUnwindCursor *)context;
+  *isSignalFrame = cursor->isSignalFrame() ? 1 : 0;
+  return cursor->getIP();
+}
+
 void _Unwind_SetIP(struct _Unwind_Context *context, uintptr_t new_value) {
   ThisUnwindCursor *cursor = (ThisUnwindCursor *)context;
   cursor->setIP(new_value);
diff -r 7b47256e3a4a -r b0e54a8c170a sys/lib/libunwind/unwind.h
--- a/sys/lib/libunwind/unwind.h        Wed Mar 12 23:42:33 2014 +0000
+++ b/sys/lib/libunwind/unwind.h        Thu Mar 13 00:28:20 2014 +0000
@@ -67,6 +67,7 @@
 uintptr_t _Unwind_GetGR(struct _Unwind_Context *, int);
 void _Unwind_SetGR(struct _Unwind_Context *, int, uintptr_t);
 uintptr_t _Unwind_GetIP(struct _Unwind_Context *);
+uintptr_t _Unwind_GetIPInfo(struct _Unwind_Context *, int *);
 uintptr_t _Unwind_GetCFA(struct _Unwind_Context *);
 void _Unwind_SetIP(struct _Unwind_Context *, uintptr_t);
 uintptr_t _Unwind_GetRegionStart(struct _Unwind_Context *);



Home | Main Index | Thread Index | Old Index