<div dir="ltr"><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">The second revision of the Hotspot patch to support little-endian PowerPC64 running Linux has been uploaded to <a href="http://cr.openjdk.java.net/~rasbold/ppc64le/hotspot/webrev.01" target="_blank">http://cr.openjdk.java.net/~rasbold/ppc64le/hotspot/webrev.01</a></div>


<div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Compared to the previous revision, this one is much smaller as the patch to support ELFv2 ABI has been submitted (thanks, Goetz!). It addresses the reviewers&#39; comments.</div>

<div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small">Please take a look.</div><div class="gmail_default" style="font-family:verdana,sans-serif;font-size:small"><br></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Feb 18, 2014 at 5:52 PM, Alexander Smundak <span dir="ltr">&lt;<a href="mailto:asmundak@google.com" target="_blank">asmundak@google.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">&gt; I would propose to split the hotspot change into the fixes for the<br>
&gt; new abi and those for the endianess. The abi changes are almost ppc-only<br>
&gt; and thus easier to get reviewed. I prepared a change including only<br>
&gt; that:<br>
&gt; <a href="http://cr.openjdk.java.net/~goetz/webrevs/abi_elfv2/" target="_blank">http://cr.openjdk.java.net/~goetz/webrevs/abi_elfv2/</a><br>
</div>Thank you for doing this. Your patch works, and the remaining patch is<br>
much smaller.<br>
My only question is why it was necessary to have explicit<br>
#include &quot;macroAssembler_ppc.inline.hpp&quot;<br>
in src/cpu/ppc/vm/vm_version_ppc.cpp as  &quot;assembler_ppc.inline.hpp&quot;<br>
which is one line above, already does that.<br>
<div class=""><br>
&gt; Please have a look at this change and test it.  . Feel free to further<br>
&gt; change it.  If the change is ok for you I&#39;ll push it right away<br>
</div>Yes, please do.<br>
<br>
I&#39;ve addressed your remaining comments and will post revised diff once<br>
you submit elfv2 change and I pull it.<br>
Do you have any comments on jdk/ change?<br>
<div class=""><br>
&gt; For the remaining changes to hotspot it would be great if we could<br>
</div>&gt; avoid all the duplication of files.... I think you just need to change<br>
<div class="">&gt; arch_model and os_arch_model in platform_ppc64le.<br>
</div>Yes, this works.<br>
<div class=""><br>
&gt; I would prefer if you use VM_LITTLE_ENDIAN to distinguish in C-code<br>
</div>Done.<br>
<div class=""><br>
&gt; Did you build and use SA? Does it work? So far, we never tried to.<br>
</div>Yes, I&#39;ve built it, but it&#39;s not very useful until<br>
agent/src/share/classes/sun/jvm/hotspot/runtime/ contains powerpc64-specific<br>
classes. It&#39;s not worth putting it into this patch.<br>
<div class=""><br>
&gt; Your change in os_linux.cpp to arch_array looks wrong. As you use<br>
&gt; the same code entry for both ppc64, in the loop below, running_arch_code<br>
&gt; will always point to your new entry.<br>
</div>Fixed that.<br>
<div class=""><br>
&gt; Further I think, the CPU architecture string should be<br>
&gt;<br>
&gt; #elif defined(PPC64)<br>
&gt; #ifdef VM_LITTLE_ENDIAN<br>
&gt; static char cpu_arch[] = &quot;ppc64le&quot;;<br>
&gt; #else<br>
&gt; static char cpu_arch[] = &quot;ppc64&quot;;<br>
&gt; #endif<br>
</div>Done.<br>
</blockquote></div><br></div>