Re: [RFC]: patch #2 for Sun C compiled target programs

Mark Kettenis
2004-06-24T19:34:27Z

Date: Mon, 21 Jun 2004 17:04:33 +0200
From: Michael Mueller <m.mueller99@kay-mueller.de>

>
> *** Problem 2 *************************************************
>
> Function sparc64_frame_base_address in sparc64-tdep.c needs to
> be fixed:
>
> /* ??? Should we take BIAS into account here? */
> return cache->base;
>
>
> The answer to the question in comment is yes, see the appended patch.
>
> That sounds reasonable. I'll commit that bit if it works with
> GCC/DWARF too.

I debugged gcc3.4/dwarf. It does not call sparc64_frame_base_address. (I
assume dwarf uses a location expression of it's own to describe a fp
based address + BIAS as the location of a stack variable.)

Probably, yes. I've committed the attached.

Thanks,

Mark

Index: ChangeLog
from Mark Kettenis <kettenis@gnu.org>

From Michael Mueller <m.mueller99@kay-mueller.de>:
* sparc64-tdep.c (sparc64_frame_base_address): Take BIAS into
account.

Index: sparc64-tdep.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc64-tdep.c,v
retrieving revision 1.12
diff -u -p -r1.12 sparc64-tdep.c
--- sparc64-tdep.c 7 Jun 2004 02:02:55 -0000 1.12
+++ sparc64-tdep.c 24 Jun 2004 19:31:51 -0000
@@ -568,8 +568,7 @@ sparc64_frame_base_address (struct frame
struct sparc_frame_cache *cache =
sparc64_frame_cache (next_frame, this_cache);

- /* ??? Should we take BIAS into account here? */
- return cache->base;
+ return cache->base + BIAS;
}

static const struct frame_base sparc64_frame_base =