This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: New target method returning the name of the malloc function?
- From: Pierre Muller <muller at ics dot u-strasbg dot fr>
- To: Joel Brobecker <brobecker at gnat dot com>,gdb-patches at sources dot redhat dot com
- Date: Fri, 06 Sep 2002 09:17:11 +0200
- Subject: Re: New target method returning the name of the malloc function?
At 02:23 06/09/2002 , Joel Brobecker a écrit:
>Hello,
>
>The name of the function used to allocate some memory in the inferior is
>currently hard-coded to "malloc" in valops.c:
>
> struct value *
> value_allocate_space_in_inferior (int len)
> {
> struct value *blocklen;
> struct value *val = find_function_in_inferior ("malloc");
> ^^^^^^
>
>Unfortunately, on interix, the malloc function is not always there.
>Quoting Donn Terry:
><<
>malloc() won't necessarily be present; the way our namespace pollution
>prevention stuff works, if the user application doesn't call an entry
>point at all, it just won't be there. However, _malloc is always
>present (at least in any real program) because it's called from within
>the library.
> >>
>
>May I suggest a new architecture method called for instance
>NAME_OF_MALLOC or MALLOC_FUNCTION_NAME? The default would be to return
>"malloc", but we could then change it to "_malloc" for the interix
>target.
That would be great !
Because Pascal also does not define malloc...
By the way, how is this allocated memory freed after the call to the
inferior function ?
Does it use another C function for this, or how is it done.
if it also need to find free then we should
also add a NAME_OF_FREE.
Would it be possible to add a language field containing this info ?
Pierre Muller
Institut Charles Sadron
6,rue Boussingault
F 67083 STRASBOURG CEDEX (France)
mailto:muller@ics.u-strasbg.fr
Phone : (33)-3-88-41-40-07 Fax : (33)-3-88-41-40-99