Thread (2 messages) 2 messages, 2 authors, 2000-03-31

Re: gprof on powerpc fails if compiled with older gcc

flat view

From: Alan Modra <hidden>
Date: 2000-03-31 03:11:40

On Thu, 30 Mar 2000, Brad Parker wrote:
in malloc.  Turns out the real crash is caused by a bug in gcc which
messes up a structure copy if the lvalue is a post incremented pointer...
Thanks for the report.  I checked in your workaround since it is simple
and it's good practice anyway to only use {post,pre}{increment,decrement}
dereferenced pointers when both sides of an assignment have the same
post/pre operator.  Putting the dst++ on a separate line makes it more
obvious when skimming through code that there's no corresponding src++.
<
--- gprof/symtab.c~	Wed Jul  7 23:02:44 1999
+++ gprof/symtab.c	Fri Mar 31 12:40:32 2000
@@ -132,7 +132,8 @@
 	  /* retain sym only if it has a non-empty address range: */
 	  if (!src->end_addr || src->addr <= src->end_addr)
 	    {
-	      *dst++ = *src;
+	      *dst = *src;
+	      dst++;
 	      prev_addr = src->addr;
 	    }
 	}

--
Linuxcare.  Support for the Revolution.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help