trace_bytecode

yumin qi yumin.qi at gmail.com
Sat Jun 4 22:02:49 UTC 2016


I mean the inside 'ifndef PRODUCT' is not needed.

On Saturday, June 4, 2016, David Holmes <david.holmes at oracle.com> wrote:

> Hi Yumin,
>
> On 5/06/2016 6:12 AM, yumin qi wrote:
>
>> Hi,
>>
>>   In JDK8/hotspot: sharedRuntime.cpp, there is an embedded macro checking:
>>
>> #ifndef PRODUCT
>>
>> JRT_ENTRY(intptr_t, SharedRuntime::trace_bytecode(JavaThread* thread,
>> intptr_t preserve_this_value, intptr_t tos, intptr_t tos2))
>>
>>   const frame f = thread->last_frame();
>>
>>   assert(f.is_interpreted_frame(), "must be an interpreted frame");
>>
>> #ifndef PRODUCT
>>
>>   methodHandle mh(THREAD, f.interpreter_frame_method());
>>
>>   BytecodeTracer::trace(mh, f.interpreter_frame_bcp(), tos, tos2);
>>
>> #endif // !PRODUCT
>>
>>   return preserve_this_value;
>>
>> JRT_END
>>
>> #endif // !PRODUCT
>>
>> It looks not necessary --- JDK9 has changed.
>>
>
> Why do you think this is unnecessary? In 9 it has moved to
> interpreterRuntime.cpp
>
> David
> -----
>
> I could not file bug (still could not logon to bugjira), could someone file
>> a bug for it?
>>
>> Thanks
>>
>> Yumin
>>
>>


More information about the hotspot-runtime-dev mailing list