RFR 8144534: Refactor templateInterpreter and templateInterpreterGenerator functions

Coleen Phillimore coleen.phillimore at oracle.com
Thu Dec 3 13:22:33 UTC 2015


Goetz,

Thank you for trying this out and your comments.  I was hoping you 
weren't on vacation...

On 12/3/15 8:14 AM, Lindenmaier, Goetz wrote:
> Hi Coleen,
>
> I've been looking at this change. A cleanup in this area is really
> useful.
> I missed templateInterpreter_ppc.cpp in your patch, I guess you forgot
> "hg add" for it.
> In addition, I had to fix some code around math_entry_available(), see this patch:
> http://cr.openjdk.java.net/~goetz/webrevs/8144534-interp/8144534-fixes_for_ppc.patch
>
> In general, I think it's strange that AbstractInterpreterGenerator
> implementations are in interpreter_<cpu>.cpp, as mentioned In the bug.
> Why not move them to templateInterpreterGenerator_<cpu>.cpp? Or will
> this be subject to a later change that removes the funny common
> subclasses Interpreter/InterpreterGenerator?

Yes.  It is strange.  I've been confused by where things are for way too 
long!  I think when the CC_INTERP goes away this interpreter_<cpu>.cpp 
file will go away and the functions moved to 
templateInterpreterGenerator_<cpu>.cpp

Or templateIntepreterGenerator_<cpu>.cpp could be 
InterpreterGenerator_<cpu>.cpp and maybe there is no 
AbstractInterpreterGenerator for Zero.  I haven't gotten that far yet 
and wanted to break this out into chunks so it's possible to do.
>
> Should I make a change removing the CC_INTERP support from ppc?

I can make them when I figure out how to do keep Zero working and can 
you test them for me?  Or you can help remove it and be contributed-by 
but I don't know if you care about that.

Thanks!! and Thanks for the patch.

Coleen
>
> Best regards,
>    Goetz.
>
>> -----Original Message-----
>> From: hotspot-dev [mailto:hotspot-dev-bounces at openjdk.java.net] On
>> Behalf Of Coleen Phillimore
>> Sent: Donnerstag, 3. Dezember 2015 02:58
>> To: hotspot-dev developers <hotspot-dev at openjdk.java.net>
>> Subject: RFR 8144534: Refactor templateInterpreter and
>> templateInterpreterGenerator functions
>>
>> Summary: merged templateInterpreter_x86_32/64 into
>> templateInterpreterGenerator_x86.cpp (some 32/64 functions remain for
>> the hand coded crc functions).
>>
>> open webrev at http://cr.openjdk.java.net/~coleenp/8144534.01/
>> bug link https://bugs.openjdk.java.net/browse/JDK-8144534
>>
>> I tried to make this reviewable by hg renaming files.   I basically
>> renamed templateInterpreter_ppc.cpp and removed the
>> AbstractInterpreter
>> functions and put them back into templateInterpreter_ppc.cpp.  I didn't
>> really delete 4000 lines of code, more like 1500.
>>
>> Also, can someone with the PPC and AARCH port look at and test out these
>> changes? I tried to reduce the #includes in the new
>> templateInterpreter_ppc/aarch64.cpp files which worked for sparc.
>>
>> Tested with JPRT on all platforms, also ran jtreg and
>> collocated/non-collocated tonga tests for linux x64 and i386 since
>> that's were the real changes are.
>>
>> See the bug for more details and my partial vision of how these
>> functions will be reorganized when I remove the broken c++ interpreter.
>>
>> Also tested that Zero still builds.
>>
>> Thanks!
>> Coleen
>>



More information about the hotspot-dev mailing list