[Vm-dev] compiling IA32ABI for cocoa cog

Esteban Lorenzano estebanlm at gmail.com
Wed Apr 13 01:30:18 UTC 2011


Hi Eliot, 
yes... I need it, because cocoa cog vm is compiled with: -fvisibility=hidden, and so I need to explicitly export functions/variables I want to use outside. I could change the visibility, but I'm not sure if this is a good idea. 

Cheers,
Esteban

El 12/04/2011, a las 9:17p.m., Eliot Miranda escribió:

> Hi Esteban,
> 
> On Tue, Apr 12, 2011 at 5:03 PM, Esteban Lorenzano <estebanlm at gmail.com> wrote:
> 
> Hi,
> I'm trying to compile new IA32ABI plugin, who should work with new Threaded FFI.
> As everybody requested, I'm trying to compile this plugin as an external plugin, and for that reason I need variable
> 
> sqInt inIOProcessEvents;
> 
> to be
> 
> EXPORT(sqInt) inIOProcessEvents;
> 
> ...how can I modify VMMaker to ensure this?
> 
> Um, are you sure you need to.  If you have a look at http://www.squeakvm.org/svn/squeak/branches/Cog r2378 you'll see that  inIOProcessEvents is declared in cointerpmt.c and that IA32ABI.c imports it via 
> 
> src/plugins/IA32ABI/IA32ABI.c:  { extern int inIOProcessEvents; address = (sqInt)&inIOProcessEvents; }
> 
> Doesn't that work?
> 
> best,
> Eliot
> 
> I tried touching StackInterpreter>>#mustBeGlobal:, but that generates bad code on gcc3x-cointerpmt.c (it creates GIV(inIOProcessEvents) calls and that does not work)
> 
> so... any idea?
> 
> thanks,
> Esteban
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20110412/bb7f3dd7/attachment-0001.htm


More information about the Vm-dev mailing list