Jon Griffiths tntjpgriff at
Thu Feb 15 17:40:44 CST 2001


> > You should _really_ use register functions instead of inline
> > assembly. Then you can do setjmp/longjmp 100% in C.

I can't get this to build cleanly. Changing the type to register in the 
.spec, and adding a CONTEXT86 * as the last parameter in the prototype gave 
me an unresolved external to CALL32_Regs when making the .so. Adding IMPORTS 
= ntdll to the makefile (as in kernel32, which uses reg functions) got rid of 
that but now gives me the warning:

/usr/bin/ld: warning: type and size of dynamic symbol `CALL32_Regs' are not 

Ugh. I guess there is something I need to change in my Makefile to get this 
to work? Although it builds, it dies, esp is not set correctly in the context 
structure. dereferencing esp to get the jump return address segfaults.

I'll resubmit when I'm back from travelling, once I understand whats going on.


"Don't wait for the seas to part, or messiahs to come,
  Dont you sit around and waste this chance ..." -Live

tntjpgriff at , jon_p_griffiths at

More information about the wine-devel mailing list