RFR(S): 8205609: [PPC64] Fix PPC64 part of 8010319 and TLH without UseSIGTRAP on AIX
David Holmes
david.holmes at oracle.com
Tue Jun 26 02:11:17 UTC 2018
Hi Martin,
On 26/06/2018 12:34 AM, Doerr, Martin wrote:
> Hi,
>
> I'd like to fix issues with the current PPC64 implementation:
>
> * Wrong register usage in template interpreter after JDK-8010319.
Well that's disappointing - I thought it had all been pre-tested.
This code is quite confusing. We have:
3584 prepare_invoke(byte_no, Rinterface_klass, Rret_addr, Rmethod,
Rreceiver, Rflags, Rscratch1);
but the definition of prepare_invoke is:
3332 void TemplateTable::prepare_invoke(int byte_no,
3333 Register Rmethod, // linked method (or i-klass)
3334 Register Rret_addr,// return address
3335 Register Rindex, // itable index, MethodType, etc.
3336 Register Rrecv, // If caller wants to see it.
3337 Register Rflags, // If caller wants to test it.
3338 Register Rscratch
3339 ) {
So this passes Rinterface_klass where Rmethod is expected; and Rmethod
where Rindex is expected. So in that sense I think the register content
will be correct but the name seems completely wrong! ???
Cheers,
David
> * SafepointMechanism implementation for AIX misses the protection of the bad page (ThreadLocalHandshakes with -XX:-UseSIGTRAP). I prefer to implement it using 2 pages like on the other platforms.
> * Remove unused function which is obsolete since the introduction of ThreadLocalHanshakes.
>
> Please review:
> http://cr.openjdk.java.net/~mdoerr/8205609_ppc64_TI_and_TLH_fixes/webrev.00/
>
> Thanks and best regards,
> Martin
>
More information about the hotspot-runtime-dev
mailing list