From f18ab43711810de62db708d3c643664344c96aef Mon Sep 17 00:00:00 2001 From: David Mosberger Date: Thu, 27 Mar 2003 18:13:59 +0000 Subject: [PATCH] unwind-libunwind.c (uw_frame_state_for): Adjust for libunwind v0.9 API change... * unwind-libunwind.c (uw_frame_state_for): Adjust for libunwind v0.9 API change: replace read of UNW_REG_HANDLER with unw_get_proc_info(). (_Unwind_GetLanguageSpecificData): Replace read of UNW_REG_LSDA with unw_get_proc_info(). (_Unwind_GetRegionStart): Replace UNW_REG_PROC_START with unw_get_proc_info(). From-SVN: r64927 --- gcc/ChangeLog | 10 ++++++++++ gcc/unwind-libunwind.c | 18 +++++++++--------- 2 files changed, 19 insertions(+), 9 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 171e36bb6a2..76947581cef 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2003-03-27 David Mosberger + + * unwind-libunwind.c (uw_frame_state_for): Adjust for libunwind + v0.9 API change: replace read of UNW_REG_HANDLER with + unw_get_proc_info(). + (_Unwind_GetLanguageSpecificData): Replace read of UNW_REG_LSDA + with unw_get_proc_info(). + (_Unwind_GetRegionStart): Replace UNW_REG_PROC_START with + unw_get_proc_info(). + 2003-03-27 Vladimir Makarov * config/rs6000/8540.md: Use presence_set instead of absence_set. diff --git a/gcc/unwind-libunwind.c b/gcc/unwind-libunwind.c index 836c0970027..8ed05245350 100644 --- a/gcc/unwind-libunwind.c +++ b/gcc/unwind-libunwind.c @@ -51,13 +51,13 @@ struct _Unwind_Context { static _Unwind_Reason_Code uw_frame_state_for (struct _Unwind_Context *context, _Unwind_FrameState *fs) { - unw_word_t handler; + unw_proc_info_t pi; if (unw_step (&context->cursor) <= 0) return _URC_END_OF_STACK; - unw_get_reg (&context->cursor, UNW_REG_HANDLER, &handler); - fs->personality = (_Unwind_Personality_Fn) handler; + unw_get_proc_info(&context->cursor, &pi); + fs->personality = (_Unwind_Personality_Fn) pi.handler; return _URC_NO_REASON; } @@ -137,19 +137,19 @@ _Unwind_SetIP (struct _Unwind_Context *context, _Unwind_Ptr val) void * _Unwind_GetLanguageSpecificData (struct _Unwind_Context *context) { - unw_word_t ret; + unw_proc_info_t pi; - unw_get_reg (&context->cursor, UNW_REG_LSDA, &ret); - return (void *) ret; + unw_get_proc_info(&context->cursor, &pi); + return (void *) pi.lsda; } _Unwind_Ptr _Unwind_GetRegionStart (struct _Unwind_Context *context) { - unw_word_t ret; + unw_proc_info_t pi; - unw_get_reg (&context->cursor, UNW_REG_PROC_START, &ret); - return (_Unwind_Ptr) ret; + unw_get_proc_info(&context->cursor, &pi); + return (_Unwind_Ptr) pi.start_ip; } #include "unwind.inc" -- 2.30.2