Dear all, On 13.08.2012 11:02, Andreas Bießmann wrote: > From: Andreas Bießmann <biessm...@corscience.de> > > The avr32 architecture (and some others) require manual relocation. Due to the > previous error all avr32 boards gave warnings in MAKEALL wich makes it hard to > find new warnings. > > This patch fixes following warning: > ---8<--- > dlmalloc.c: In function 'malloc_bin_reloc': > dlmalloc.c:1493: warning: dereferencing pointer 'p' does break > strict-aliasing rules > dlmalloc.c:1493: warning: dereferencing pointer 'p' does break > strict-aliasing rules > dlmalloc.c:1490: note: initialized from here > dlmalloc.c:1493: note: initialized from here > --->8--- > > Signed-off-by: Andreas Bießmann <biessm...@corscience.de> > --- > A question to all the other related arches, namely m68k, mips, nds32 and > sparc: Do you encounter the same warnings or is this warning due to my > outdated compiler (4.4.3 currently, unfortunately atmel do not bother to send > their patches mainline)? > > common/dlmalloc.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/common/dlmalloc.c b/common/dlmalloc.c > index c645d73..78b1885 100644 > --- a/common/dlmalloc.c > +++ b/common/dlmalloc.c > @@ -1485,9 +1485,10 @@ static mbinptr av_[NAV * 2 + 2] = { > }; > > #ifdef CONFIG_NEEDS_MANUAL_RELOC > +typedef unsigned long __attribute__((__may_alias__)) ulong_aliased; > void malloc_bin_reloc (void) > { > - unsigned long *p = (unsigned long *)(&av_[2]); > + ulong_aliased *p = (ulong_aliased *)(&av_[2]); > int i; > for (i=2; i<(sizeof(av_)/sizeof(mbinptr)); ++i) { > *p++ += gd->reloc_off; >
this seems to be related to http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/121848/focus=121849 can you Wolfgang and/or Simon please comment. best regards Andreas Bießmann _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot