diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2006-05-17 15:35:36 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2006-05-17 15:35:36 +0000 |
commit | edbaf6a24d220fe50ec0bbb245952bf9a19a3561 (patch) | |
tree | c07bef3c2aa765203944beda977592a8bcc0237f /gcc/config/pa | |
parent | 9e6fb77dba8c47d6b6e8792900ab507d60e0bcc1 (diff) | |
download | gcc-edbaf6a24d220fe50ec0bbb245952bf9a19a3561.zip gcc-edbaf6a24d220fe50ec0bbb245952bf9a19a3561.tar.gz gcc-edbaf6a24d220fe50ec0bbb245952bf9a19a3561.tar.bz2 |
unwind-dw2.c: Add declarations for uw_update_context and uw_frame_state_for.
* unwind-dw2.c: Add declarations for uw_update_context and
uw_frame_state_for.
* pa/hpux-unwind.h (pa_fallback_frame_state): When an export stub is
detected, advance frame state and context once to skip over stub.
From-SVN: r113865
Diffstat (limited to 'gcc/config/pa')
-rw-r--r-- | gcc/config/pa/hpux-unwind.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/gcc/config/pa/hpux-unwind.h b/gcc/config/pa/hpux-unwind.h index 383b072..d521498 100644 --- a/gcc/config/pa/hpux-unwind.h +++ b/gcc/config/pa/hpux-unwind.h @@ -155,7 +155,11 @@ pa_fallback_frame_state (struct _Unwind_Context *context, fs->regs.reg[0].how = REG_SAVED_OFFSET; fs->regs.reg[0].loc.offset = -24; - return _URC_NO_REASON; + /* Update context to describe the stub frame. */ + uw_update_context (context, fs); + + /* Set up fs to describe the FDE for the caller of this stub. */ + return uw_frame_state_for (context, fs); } /* Check if the return address points to a relocation stub. */ else if (!TARGET_64BIT @@ -171,7 +175,11 @@ pa_fallback_frame_state (struct _Unwind_Context *context, fs->regs.reg[0].how = REG_SAVED_OFFSET; fs->regs.reg[0].loc.offset = -8; - return _URC_NO_REASON; + /* Update context to describe the stub frame. */ + uw_update_context (context, fs); + + /* Set up fs to describe the FDE for the caller of this stub. */ + return uw_frame_state_for (context, fs); } /* Check if the return address is an export stub as signal handlers |