This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: GCC 3.3 Prelease broken on s390
- From: Ulrich Weigand <weigand at immd1 dot informatik dot uni-erlangen dot de>
- To: mark at codesourcery dot com (Mark Mitchell)
- Cc: rth at redhat dot com, gcc at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Wed, 7 May 2003 21:39:16 +0200 (MET DST)
- Subject: Re: GCC 3.3 Prelease broken on s390
Mark Mitchell wrote:
> Yes -- but please enclose the second hunk in #ifdef as well. If we're
> going to be ugly, let's not try to be smart while we're being ugly.
Fine with me.
> Please check this in, and close the PR.
For the record, I've checked in the patch below and closed the PR.
Bye,
Ulrich
Index: gcc/ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ChangeLog,v
retrieving revision 1.16114.2.511
diff -c -p -r1.16114.2.511 ChangeLog
*** gcc/ChangeLog 7 May 2003 06:02:01 -0000 1.16114.2.511
--- gcc/ChangeLog 7 May 2003 19:26:21 -0000
***************
*** 1,3 ****
--- 1,9 ----
+ 2003-05-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR other/10650
+ * unwind-dw2.c (uw_update_context_1): Don't set sp as cfa on s390.
+ (uw_init_context_1): Set initial sp to outer cfa on s390.
+
2003-05-06 Mark Mitchell <mark@codesourcery.com>
PR other/10658
Index: gcc/unwind-dw2.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/unwind-dw2.c,v
retrieving revision 1.22.2.4
diff -c -p -r1.22.2.4 unwind-dw2.c
*** gcc/unwind-dw2.c 5 May 2003 16:59:21 -0000 1.22.2.4
--- gcc/unwind-dw2.c 7 May 2003 19:26:21 -0000
*************** uw_update_context_1 (struct _Unwind_Cont
*** 1062,1069 ****
--- 1062,1071 ----
Given that other unwind mechanisms generally won't work if you try
to represent stack pointer saves and restores directly, we don't
bother conditionalizing this at all. */
+ #ifndef __s390__
tmp_sp = (_Unwind_Ptr) context->cfa;
orig_context.reg[__builtin_dwarf_sp_column ()] = &tmp_sp;
+ #endif
/* Compute this frame's CFA. */
switch (fs->cfa_how)
*************** uw_init_context_1 (struct _Unwind_Contex
*** 1164,1169 ****
--- 1166,1174 ----
/* Force the frame state to use the known cfa value. */
context->cfa = outer_cfa;
+ #ifdef __s390__
+ context->reg[__builtin_dwarf_sp_column ()] = &outer_cfa;
+ #endif
fs.cfa_how = CFA_REG_OFFSET;
fs.cfa_reg = __builtin_dwarf_sp_column ();
fs.cfa_offset = 0;
--
Dr. Ulrich Weigand
weigand@informatik.uni-erlangen.de