<br><br><div class="gmail_quote">On Wed, Oct 26, 2011 at 11:13 PM, Will Dietz <span dir="ltr"><<a href="mailto:wdietz2@illinois.edu">wdietz2@illinois.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On Wed, Oct 26, 2011 at 3:02 PM, Nicolas Geoffray<br>
<<a href="mailto:nicolas.geoffray@gmail.com">nicolas.geoffray@gmail.com</a>> wrote:<br>
> On Wed, Oct 26, 2011 at 12:41 AM, Will Dietz <<a href="mailto:wdietz2@illinois.edu">wdietz2@illinois.edu</a>> wrote:<br>
>><br>
</div><div class="im">>> Inlined below.<br>
>><br>
>> This patch does raise the following question:<br>
>><br>
>> When precompiling, is the goal/claim that *every* class offered from<br>
>> the boot classpath is compiled?<br>
><br>
</div><div class="im">> No. And yes :) The classes are actually not compiled. All classes are just<br>
> stored in binary in the generated executable. The reason for doing that is<br>
> that you avoid parsing a zip file at startup, so startup is faster.<br>
><br>
<br>
</div>Heh, that's right.  Just wondering, why *don't* we precompile the code<br>
(as well as have the bytes available)?<br></blockquote><div><br></div><div>Because it would blow up the executable. j3 just precompiles the code that is needed for bootstrapping, and little other things (System.out). I don't want to precompile things like corba, which is in the boot classpath.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im"><br>
>><br>
>> If not, then this patch makes sense--if so, then I have some work to do<br>
>> :).<br>
><br>
</div><div class="im">> I think you have some work to do :) But you should know the boot classpath<br>
> when compiling J3 right?<br>
><br>
<br>
</div>You mean when building Precompiled.a/Bootstrap.a?  Yes, and maybe that<br>
already does what's needed.  From what you're saying, this patch is<br>
wrong and only would mask a bug elsewhere which can be addressed<br>
separately.<br></blockquote><div><br></div><div>No not a bug. It's fine to analyze the boot classpath, it's just  that it adds up in startup time.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im"><br>
>> +<br>
>> +  // Analyze the boot classpath<br>
>> +  analyseClasspathEnv(bootClasspathEnv);<br>
><br>
</div><div class="im">> This should really stay in the if (!bootLoaded) test. It actually parses the<br>
> zip files on the boot classpath, which does have an impact on startup time.<br>
><br>
<br>
</div>Great! And this is why I'm glad you're reviewing these patches :D, and<br>
what you say makes sense so thank you for that :).<br></blockquote><div><br></div><div>No problem, happy I can help! I am also looking forward to use OpenJDK with VMKit!</div><div><br></div><div>Cheers,</div><div>Nicolas</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<font color="#888888"><br>
~Will<br>
</font></blockquote></div><br>