RFR (L) 8174749: Use hash table/oops for MemberName table
John Rose
john.r.rose at oracle.com
Sat May 27 02:48:42 UTC 2017
On May 26, 2017, at 2:48 PM, coleen.phillimore at oracle.com wrote:
>
> On 5/26/17 4:48 PM, John Rose wrote:
>> On May 26, 2017, at 10:47 AM, coleen.phillimore at oracle.com <mailto:coleen.phillimore at oracle.com> wrote:
>>>
>>> Hi, I made the changes below, which turned out very nice. It didn't take that long to retest. See:
>>>
>>> open webrev at http://cr.openjdk.java.net/~coleenp/8174749.04/webrev <http://cr.openjdk.java.net/%7Ecoleenp/8174749.04/webrev>
>>> open webrev at http://cr.openjdk.java.net/~coleenp/8174749.jdk.04/webrev <http://cr.openjdk.java.net/%7Ecoleenp/8174749.jdk.04/webrev>
>>>
>>> I don't know how to do delta webrevs, so just look at linkResolver.cpp/hpp and methodHandles.cpp
>>
>> Re-reviewed.
>>
>> See previous message for a late-breaking comment on expand.
>> See below for a sketch of what I mean by keeping "have_defc" as is.
> Hi John,
>
> I was just thinking of this change below, it makes sense to treat field and method MemberName differently as you have below. The field needs the clazz present to be expanded but method MemberName does not.
>
> Yes, this makes sense.
Excellent. I reviewed the change in the 05 version of the webrev and it looks good to go.
>>
>> ...It seems just
>> as reasonable to me that linkResolver.cpp would do that job, than that it
>> would be to delegate via javaClasses.cpp. I also think the patch will get
>> a little smaller if you cut javaClasses.cpp out of that loop.
>
> JavaClasses is in the loop because it knows which fields to assign and how to create a ResolvedMethodName. I think this makes sense to isolate it like this an appreciated only changing javaClasses.cpp when I kept changing the names of the fields.
OK, then keep it as is. The allocate_instance call on RMN seems at home in jC.cpp.
>> I wouldn't object if you anticipated this in the present change set, but it's OK
>> to do it later.
>
> Yes, it has to be later. I'm going to file a couple of RFE's after this that we discussed so that RMN can be used instead of MN. And believe it or not, large changes make me anxious. :)
Yep. An RFE to track this makes me happy.
>>
>> P.P.S. Here's a sketch of what I mean by walking back some of the "have_defc"
>> changes. Maybe I'm missing something, but I think this version makes more
>> sense than the current version:
>
> Done. Passes java/lang/invoke tests (as sanity).
>
> http://cr.openjdk.java.net/~coleenp/8174749.05/webrev <http://cr.openjdk.java.net/~coleenp/8174749.05/webrev>
>
> (wish I could do incremental webrevs because full webrevs take forever).
>
> Thank you for all your help and comments.
Re-reviewed. Even better, and still good to go.
— John
More information about the hotspot-dev
mailing list