Messages in this thread | | | Date | Sun, 10 Oct 2010 21:36:32 -0700 | From | Brad Boyer <> | Subject | Re: aranym bug, manifests as "ida_remove called for id=13" on recent kernels |
| |
On Mon, Oct 11, 2010 at 03:41:03AM +0100, Al Viro wrote: > Argh... OK, going through aranym with debugger has exhonorated it. My > apologies ;-/ It *is* gcc in sid. Testcase: > > extern int foo(int); > void *bar(int n) > { > return (void *)foo(n); > } > > and gcc -S -O2 turns that into > bar: > link.w %fp,#0 > unlk %fp > jra foo >
I presume the bug is that foo put the return value in %d0 while bar should have its return value in %a0. This function isn't eligible for the optimization being used due to this need to move the result into a different register.
> Spot the obvious bug... BTW, why on the Earth does debian-ports m68k tree > use gcc-4.3 with Cthulhu-scaring 700Kb gzipped patch and does *not* have > gcc-4.4?
I believe that gcc-4.4 for m68k is being held up by the TLS support patches. While I haven't been personally involved to any great degree, I got the impression that the work is pretty much done other than getting it included.
Brad Boyer flar@allandria.com
| |