Request for reviews (XS): 8004741: Missing compiled exception handle table entry for multidimensional array allocation

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon Dec 10 14:50:57 PST 2012


Updated webrev:

http://cr.openjdk.java.net/~kvn/8004741/webrev.01

I ran compiler regression tests with disable dioptimization for 
exceptions processing. And 2 tests failed because thrown exception 
(NegativeArraySizeException) during runtime call was not caught by catch 
block. The problem was C2 expected only OutOfMemoryError (which is not 
Exception) from slow allocation runtime calls. I replaced it with 
Throwable which C2 uses for other calls.

Thanks,
Vladimir

On 12/7/12 6:11 PM, Vladimir Kozlov wrote:
> Thank you, Christian
>
> As you asked I modified code in JavaThread::send_thread_stop() to skip
> deoptimization and immediately hit the failure without fix.
>
> Thanks,
> Vladimir
>
> On 12/07/12 17:32, Christian Thalinger wrote:
>> Looks good.  -- Chris
>>
>> On Dec 7, 2012, at 4:42 PM, Vladimir
>> Kozlov<vladimir.kozlov at oracle.com>  wrote:
>>
>>> http://cr.openjdk.java.net/~kvn/8004741/webrev
>>>
>>> Added missing exception path for multidimensional array allocation
>>> runtime calls. It cased "missing exception handler" error during an
>>> exception processing on the return from such runtime call. It is very
>>> rare case because usually the compiled frame is deoptimized (go back
>>> to Interpreter) to process an exception.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>>
>>


More information about the hotspot-compiler-dev mailing list