diff options
author | Jason Merrill <jason@casey.cygnus.com> | 2000-03-23 12:14:06 +0000 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2000-03-23 07:14:06 -0500 |
commit | 8034da37ce34e442aa8e04f3f1618b70b00ed10e (patch) | |
tree | ecba39cb912485714b2d62f815fa864dbb79faf9 /gcc/libgcc2.c | |
parent | e77a2b027dce64c01152a744a65f785108e53939 (diff) | |
download | gcc-8034da37ce34e442aa8e04f3f1618b70b00ed10e.zip gcc-8034da37ce34e442aa8e04f3f1618b70b00ed10e.tar.gz gcc-8034da37ce34e442aa8e04f3f1618b70b00ed10e.tar.bz2 |
rs6000.h (DWARF_FRAME_RETURN_COLUMN): Define.
* config/rs6000/rs6000.h (DWARF_FRAME_RETURN_COLUMN): Define.
* config/alpha/alpha.h (DWARF_FRAME_RETURN_COLUMN): Define.
* config/sparc/sparc.h (DWARF_FRAME_RETURN_COLUMN): Define.
* frame.h (frame_state): Revert last change.
* frame.c (execute_cfa_insn): Just don't record the save of a CFA reg.
* libgcc2.c (throw_helper): Revert last change.
From-SVN: r32705
Diffstat (limited to 'gcc/libgcc2.c')
-rw-r--r-- | gcc/libgcc2.c | 16 |
1 files changed, 0 insertions, 16 deletions
diff --git a/gcc/libgcc2.c b/gcc/libgcc2.c index aafbe75..e2a852c 100644 --- a/gcc/libgcc2.c +++ b/gcc/libgcc2.c @@ -3679,7 +3679,6 @@ throw_helper (struct eh_context *eh, void *pc, frame_state *my_udata, void *handler; void *handler_p = 0; void *pc_p = 0; - void *restored_cfa = 0; frame_state saved_ustruct; int new_eh_model; int cleanup = 0; @@ -3789,11 +3788,6 @@ throw_helper (struct eh_context *eh, void *pc, frame_state *my_udata, pc = saved_pc; memcpy (udata, my_udata, sizeof (*udata)); - if (udata->cfa_saved) - /* We saved the CFA register into the stack in this frame, so we - will restore it in the __throw epilogue. Remember the value. */ - restored_cfa = udata->cfa; - while (pc != handler_pc) { frame_state *p = udata; @@ -3814,9 +3808,6 @@ throw_helper (struct eh_context *eh, void *pc, frame_state *my_udata, copy_reg (i, udata, my_udata); } - if (udata->cfa_saved) - restored_cfa = udata->cfa; - pc = get_return_addr (udata, sub_udata) - 1; } @@ -3832,13 +3823,6 @@ throw_helper (struct eh_context *eh, void *pc, frame_state *my_udata, } /* udata now refers to the frame called by the handler frame. */ - if (my_udata->cfa_saved) - /* If we saved the CFA register into the stack (after it became the - CFA register), we'll restore that value into SP in the epilogue, - as on the ARM. So calculate the adjustment based on the value that - will be restored. */ - my_udata->cfa = restored_cfa; - /* We adjust SP by the difference between __throw's CFA and the CFA for the frame called by the handler frame, because those CFAs correspond to the SP values at the two call sites. We need to further adjust by |