OpenJDK7 port to the little endian PowerPC64

Alexander Smundak asmundak at
Tue Mar 4 11:29:11 PST 2014

The second revision of the Hotspot patch to support little-endian PowerPC64
running Linux has been uploaded to
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' comments.
Please take a look.

On Tue, Feb 18, 2014 at 5:52 PM, Alexander Smundak <asmundak at>wrote:

> > I would propose to split the hotspot change into the fixes for the
> > new abi and those for the endianess. The abi changes are almost ppc-only
> > and thus easier to get reviewed. I prepared a change including only
> > that:
> >
> Thank you for doing this. Your patch works, and the remaining patch is
> much smaller.
> My only question is why it was necessary to have explicit
> #include "macroAssembler_ppc.inline.hpp"
> in src/cpu/ppc/vm/vm_version_ppc.cpp as  "assembler_ppc.inline.hpp"
> which is one line above, already does that.
> > Please have a look at this change and test it.  . Feel free to further
> > change it.  If the change is ok for you I'll push it right away
> Yes, please do.
> I've addressed your remaining comments and will post revised diff once
> you submit elfv2 change and I pull it.
> Do you have any comments on jdk/ change?
> > For the remaining changes to hotspot it would be great if we could
> > avoid all the duplication of files.... I think you just need to change
> > arch_model and os_arch_model in platform_ppc64le.
> Yes, this works.
> > I would prefer if you use VM_LITTLE_ENDIAN to distinguish in C-code
> Done.
> > Did you build and use SA? Does it work? So far, we never tried to.
> Yes, I've built it, but it's not very useful until
> agent/src/share/classes/sun/jvm/hotspot/runtime/ contains
> powerpc64-specific
> classes. It's not worth putting it into this patch.
> > Your change in os_linux.cpp to arch_array looks wrong. As you use
> > the same code entry for both ppc64, in the loop below, running_arch_code
> > will always point to your new entry.
> Fixed that.
> > Further I think, the CPU architecture string should be
> >
> > #elif defined(PPC64)
> > static char cpu_arch[] = "ppc64le";
> > #else
> > static char cpu_arch[] = "ppc64";
> > #endif
> Done.
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the ppc-aix-port-dev mailing list