[U-Boot-Users] [UPDATED][PATCH v2] Fix compile warnings in dlmalloc
Wolfgang Denk
wd at denx.de
Thu Jul 31 11:22:04 CEST 2008
In message <Pine.LNX.4.64.0807300800510.31191 at blarg.am.freescale.net> you wrote:
> The origional code was using on odd reference to get to the first
> real element in av_[]. The first two elements of the array are
> not used for actual bins, but for house keeping. If we are more
> explicit about how use the first few elements we can get rid of the
> warnings:
>
> dlmalloc.c: In function 'malloc_extend_top':
> dlmalloc.c:1971: warning: dereferencing type-punned pointer will break strict-aliasing rules
> dlmalloc.c:1999: warning: dereferencing type-punned pointer will break strict-aliasing rules
> dlmalloc.c:2029: warning: dereferencing type-punned pointer will break strict-aliasing rules
...
>
> The logic of how this code came to be is:
> bin_at(0) = (char*)&(av_[2]) - 2*SIZE_SZ
>
> SIZE_SZ is the size of pointer, and av_ is arry of pointers so:
> bin_at(0) = &(av_[0])
>
> Going from there to bin_at(0)->fd or bin_at(0)->size should be straight forward.
>
> Signed-off-by: Kumar Gala <galak at kernel.crashing.org>
> ---
>
> Updated against lastest head, added a bit more commit info about the logic
> of the change.
>
> common/dlmalloc.c | 21 +++++++++++----------
> 1 files changed, 11 insertions(+), 10 deletions(-)
Applied, thanks.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Unser Kopf ist rund, damit das Denken die Richtung wechseln kann.
-- Francis Picabia
More information about the U-Boot
mailing list