aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2004-02-03 00:40:26 +0000
committerAlan Modra <amodra@gcc.gnu.org>2004-02-03 11:10:26 +1030
commit79d69d750e1b392a3458a7c949a6ef2d6b111993 (patch)
treef5e93e8ee42cfb5b228b2cc0b8b8f84f20b2484a /gcc
parentc1def8ec356e2b062cc73f21346660005cad1b3a (diff)
downloadgcc-79d69d750e1b392a3458a7c949a6ef2d6b111993.zip
gcc-79d69d750e1b392a3458a7c949a6ef2d6b111993.tar.gz
gcc-79d69d750e1b392a3458a7c949a6ef2d6b111993.tar.bz2
re PR target/13914 ([3.4 only] dwarf2 frame unwinding broken.)
PR target/13914 * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap for retaddr_column. From-SVN: r77146
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/linux64.h6
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0cce257..6af3e30 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-02-03 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/13914
+ * config/rs6000/linux64.h (MD_FALLBACK_FRAME_STATE_FOR): Use ap
+ for retaddr_column.
+
2004-02-02 Kazu Hirata <kazu@cs.umass.edu>
* genemit.c (gen_exp): Generate gen_rtx_fmt_e* instead of
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
index 6bb60d3..ae807ba 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
@@ -649,10 +649,10 @@ enum { SIGNAL_FRAMESIZE = 64 };
get the same result for multiple evaluation of the same signal \
frame. */ \
sc_->regs->gpr[47] = sc_->regs->nip + 4; \
- (FS)->regs.reg[CR0_REGNO].how = REG_SAVED_OFFSET; \
- (FS)->regs.reg[CR0_REGNO].loc.offset \
+ (FS)->regs.reg[ARG_POINTER_REGNUM].how = REG_SAVED_OFFSET; \
+ (FS)->regs.reg[ARG_POINTER_REGNUM].loc.offset \
= (long)&(sc_->regs->gpr[47]) - new_cfa_; \
- (FS)->retaddr_column = CR0_REGNO; \
+ (FS)->retaddr_column = ARG_POINTER_REGNUM; \
goto SUCCESS; \
} while (0)