<br><br><div class="gmail_quote">On Tue, Apr 12, 2011 at 6:30 PM, Esteban Lorenzano <span dir="ltr">&lt;<a href="mailto:estebanlm@gmail.com">estebanlm@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
 <br><div style="word-wrap:break-word">Hi Eliot, <div>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&#39;m not sure if this is a good idea. </div>
</div></blockquote><div><br></div><div>If you must, you must.  You can include specific declarations in the class-side declareCVarsIn: methods, e.g. StackInterpreter class&gt;&gt; declareCVarsIn:.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div style="word-wrap:break-word"><div><br></div><div>Cheers,</div><div>Esteban</div><div><br><div><div>El 12/04/2011, a las 9:17p.m., Eliot Miranda escribió:</div><br><blockquote type="cite">Hi Esteban,<div><br></div><div>
<div class="gmail_quote">On Tue, Apr 12, 2011 at 5:03 PM, Esteban Lorenzano <span dir="ltr">&lt;<a href="mailto:estebanlm@gmail.com" target="_blank">estebanlm@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

<br>
Hi,<br>
I&#39;m trying to compile new IA32ABI plugin, who should work with new Threaded FFI.<br>
As everybody requested, I&#39;m trying to compile this plugin as an external plugin, and for that reason I need variable<br>
<br>
sqInt inIOProcessEvents;<br>
<br>
to be<br>
<br>
EXPORT(sqInt) inIOProcessEvents;<br>
<br>
...how can I modify VMMaker to ensure this?<br></blockquote><div><br></div><div>Um, are you sure you need to.  If you have a look at <a href="http://www.squeakvm.org/svn/squeak/branches/Cog" target="_blank">http://www.squeakvm.org/svn/squeak/branches/Cog</a> r2378 you&#39;ll see that  inIOProcessEvents is declared in cointerpmt.c and that IA32ABI.c imports it via </div>

<div><br></div><div>src/plugins/IA32ABI/IA32ABI.c:  { extern int inIOProcessEvents; address = (sqInt)&amp;inIOProcessEvents; }</div><div><br></div><div>Doesn&#39;t that work?</div><div><br></div><div>best,</div><div>Eliot</div>

<div><br></div><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204, 204, 204);border-left-style:solid;padding-left:1ex">

I tried touching StackInterpreter&gt;&gt;#mustBeGlobal:, but that generates bad code on gcc3x-cointerpmt.c (it creates GIV(inIOProcessEvents) calls and that does not work)<br>
<br>
so... any idea?<br>
<br>
thanks,<br>
<font color="#888888">Esteban</font></blockquote></div><br></div>
</blockquote></div><br></div></div><br></blockquote></div><br>