Template interpreter status in JDK7/IcedTea 2.5.2 for PPC64/PPC64LE

Volker Simonis volker.simonis at gmail.com
Mon Sep 8 09:32:37 UTC 2014

Hi Tiago,

we already have the template interpreter in our
http://hg.openjdk.java.net/ppc-aix-port/jdk7u/hotspot repository (even
for ppc64le :) since quite some time (~March 2014). See:

8050942: PPC64: implement template interpreter for ppc64le

New files for template interpreter Missed from 8036976: PPC64:
implement the template interpreter

8036976: PPC64: implement the template interpreter

Without additional parameters the template interpreter is being build
as the default interpreter on ppc64 - at least if you build right from
our PPC-AIX-Port repository (see for example
for recent build logs). Maybe the IcedTea build still sets
"CC_INTERP=true" when building on linux/ppc64? This isn't required any
more and should be removed as we don't actively support the cpp
interpreter any more.

Regarding the question on how to detect the template interpreter - I
don't know a perfect answer either. But you could for example use
"-XX:+UnlockDiagnosticVMOptions -XX:+PrintInterpreter". If you're
running with the template interpreter, the output will be much longer
and print the code templates for each bytecode (if you have the
hsdis-ppc64.so library in the library path it will even print the
disassembly of each bytecode tempalate).


On Sat, Sep 6, 2014 at 7:29 AM, Tiago Stürmer Daitx <tdaitx at br.ibm.com> wrote:
> All-
> What's the status of the template interpreter for JDK7 in the
> ppc-aix-port?
> I can see that JDK 9 does build with the Template Interpreter for both
> PPC64 and PPC64LE, but JDK7 seems to be still using the C++ Interpreter
> on both archs - at least when build from IcedTea 2.5.2, which supposedly
> merged the head from PPC-AIX-Port repo (I haven't build JDK 7 directly
> from the PPC-AIX-Port repo to compare the results... yet).
> What am I missing? How should/can I be sure to enable the template
> interpreter in a  JDK7 build?
> I used
> $ nm -C libjvm.so | grep TemplateTable::initialize
> $ nm -C libjvm.so | grep CppInterpreter::initialize
> to identify which interpreter was build (stolen from [1]), let me know
> if there an easier way to do that.
> Regards,
> Tiago
> [1]
> http://mail.openjdk.java.net/pipermail/hotspot-dev/2013-October/011431.html
> --
> Tiago Stürmer Daitx
> Linux Technology Center [LTC|IBM]
> tdaitx at br.ibm.com

More information about the distro-pkg-dev mailing list