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
        [email protected]

--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to