RFR: 8163589: Add back intrinsic methods for event based tracing

Robbin Ehn robbin.ehn at oracle.com
Thu Aug 11 07:41:37 UTC 2016


Hi Aleksey,

Thanks for looking at this!

On 08/10/2016 10:37 PM, Aleksey Shipilev wrote:
> On 08/10/2016 05:05 PM, Robbin Ehn wrote:
>> Hi all,
>>
>> In 8 we had this intrinsic, I'm adding it back
>> Used for event based tracing.
>>
>> Webrev: http://cr.openjdk.java.net/~rehn/8163589/hotspot.01/webrev/
>
> Looks okay.
>
> *) c1_LIRGenerator:
>
> 3097   __ move(new LIR_Address(arg.result(),
> java_lang_Class::klass_offset_in_bytes(), klass_pointer_type), klass, info);
>
> Should klass_pointer_type be T_ADDRESS? It is an injected field of
> intptr_t type, so current code seems fine, but T_ADDRESS matches the
> existing uses in C1 better.

Thanks, fixed.

>
> *) Are these different? Do we want to use one of these consistently?
>
> C1:
> 3099   ByteSize offset = TRACE_KLASS_TRACE_ID_OFFSET;
>
> C2:
> 3169   ByteSize offset = InstanceKlass::trace_id_offset();
>

Yes, thanks, fixed.

>
> *) Is the new intrinsic different from other catered by
> LibraryCallKit::inline_native_Class_query?
>

We could cater this also there, but this is not as generic as those other intrinsic.
Personally I would keep this separate. (we don't need to clobber inline_native_Class_query with ifdef, etc...)
So if there is no strong opinions, I'll leave that as is.

Incremental here:
http://cr.openjdk.java.net/~rehn/8163589/hotspot.01-02/webrev/
Full here:
http://cr.openjdk.java.net/~rehn/8163589/hotspot.02/webrev/

Thanks!

(tested with JMH)

/Robbin

>
> Thanks,
> -Aleksey
>
>
>


More information about the hotspot-compiler-dev mailing list