Steve.Goldman at Sun.COM
Thu Nov 8 08:58:50 PST 2007
Volker Simonis wrote:
> Hi folks,
> here finally comes the patche-set to get the C++-Interpreter running
> under Solaris/SPARC in 64-bit mode.
> The file 'bytecodeInterpreter.cpp.patch' contains a patch to get the
> C++ Interpreter working in the opt-build on 'i486' machines. I include
> it here just for your convenience, as I already posted it to this list
> The other three files
> contain the patches for Solaris/SPARC in 64-bit mode. Now, everything
> in 64-bit should work as in the 32-bit mode (at least JVM98 passes
> without errors).
> There was an error with OSR in 64-bit mode that I could only fixed in
> shared code (in 'parseHelper.cpp'). The problem is related to the fact
> that the counters are 64-bit values in 64-bit mode, but are updated as
> 32-bit values in JITed code. This led to errors on big-endian
> archtectures like SPARC because the wrong half of the 64-bit counter
> was incremented.
In my work on producing a 64bit c1 on x86 I've also found that counters
are being treated in a dubious manner between 32/64 bit. I don't believe
the mdo really needs 64bit counters in the first place so in the end I
think the proper fix will be to clean everything up to be 32bits. At the
moment I have my own set of hacks for c1.
BTW 64bit c1 is working fairly well at the moment. Unfortunately It'll
be a while before it shows up what with reviews and the switch to mercurial.
More information about the hotspot-dev