------- Comment #8 from mikpe at it dot uu dot se  2010-05-29 11:35 -------
(In reply to comment #6)
> I note that copypage-xscale.c:xscale_mc_copy_user_highpage() calls a __naked
> function to do the bulk copy.  Converting that to a plain inline function
> (changing 'pc' to 'lr' in the final instruction that restores the scrach 
> regs),
> does not prevent the crash.  So I suspect a plain C code miscompilation.

Actually that conversion away from __naked may have been flawed.  What I'm
seeing is that r148981 causes gcc to clone the __naked function and change its
calling conventions in ways that don't match the proper function call ABI. 
This breaks the body of the __naked function which is just a big asm()
statement.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44290

Reply via email to