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@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-m68k" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html