<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">well... for testing, I changed -fvisibility=hidden with -fvisibility=default<div>now it runs... and all the symbols are public.&nbsp;</div><div>I do not perceive any loose of performance, nor loading, nor executing...&nbsp;</div><div>I dunno, maybe I should keep this visibility... it certainly easies some things. What I don't know is if this is conceptually correct.&nbsp;</div><div>What do you think?</div><div><br></div><div>Cheers,</div><div>Esteban</div><div><br></div><div>&nbsp;<br><div><div>El 12/04/2011, a las 10:34p.m., Eliot Miranda escribió:</div><br class="Apple-interchange-newline"><blockquote type="cite"><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;">
&nbsp;<br><div style="word-wrap:break-word">Hi Eliot,&nbsp;<div>yes... I need it, because cocoa cog vm is compiled with:&nbsp;-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.&nbsp;</div>
</div></blockquote><div><br></div><div>If you must, you must. &nbsp;You can include specific declarations in the class-side declareCVarsIn: methods, e.g. StackInterpreter class&gt;&gt;&nbsp;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'm trying to compile new IA32ABI plugin, who should work with new Threaded FFI.<br>
As everybody requested, I'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. &nbsp;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'll see that &nbsp;inIOProcessEvents is declared in cointerpmt.c and that IA32ABI.c imports it via&nbsp;</div>

<div><br></div><div>src/plugins/IA32ABI/IA32ABI.c: &nbsp;{ extern int inIOProcessEvents; address = (sqInt)&amp;inIOProcessEvents; }</div><div><br></div><div>Doesn'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>
</blockquote></div><br></div></body></html>