Patrick Olinet writes: > Finally, I've tried it the dirty way, ie by commenting out all the > "stfd" instructions at the beginning of the ppc_closure.S file and > things seem to work !!! > > "stfd" are used to save fpu registers and were always executed, even > if no float/double arguments were involved in the call and if no fpu > is present. > > Of course, I'm still unable to use float/double with the libffi but I > don't need it so I don't think I'm going to dig into this. As far as I > understand, calls to the soft float ABI would be required to fix this.
I guess that's ok. > What worries me a bit is that "stfd" instructions are used to save fpu > registers states before the call (it's my guess) and I would expect > them to be restored afterwards, probably with "lfd" assembly > instructions (that I would need to comment out as well). But I can't > see such instructions... > > Any thoughts about that ? It doen't matter, because the caller knows that these registers will not be saved. > And should I report a new bug for this libffi/powerpc problem ? It wouldn't hurt. Andrew.