x86_32 OptoRuntime::generate_exception_blob() unnecessary second get_thread() call?

John Rose John.Rose at Sun.COM
Fri Jul 10 12:10:44 PDT 2009


Roll it in.  If there's any doubt whatever about correctness,  
conditionalize the change on EnableMethodHandles.  -- John

On Jul 10, 2009, at 12:04 PM, Christian Thalinger wrote:

> John Rose wrote:
>> On Jul 10, 2009, at 7:41 AM, Christian Thalinger wrote:
>>
>>> While changing something in OptoRuntime::generate_exception_blob()  
>>> in
>>> runtime_x86_32.cpp I noticed that there are two calls to  
>>> get_thread()
>>> and the second call happens while the register from the first call
>>> still
>>> holds the value.
>>
>> There are three calls to get_thread(rcx).  The first and second are
>> separated by a call to handle_exception_C, which presumably blows  
>> rcx.
>>
>> I think you are right that the third get_thread duplicates the result
>> of the second.
>>
>> And this comment appears to be false:
>>   // rcx contains handler address
>
> Right, I forgot that one in my email.  Should we fix this in one of  
> our
> invokedynamic patches or separately?
>
> -- Christian




More information about the hotspot-compiler-dev mailing list