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

Christian Thalinger Christian.Thalinger at Sun.COM
Fri Jul 10 12:04:26 PDT 2009


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