Request for reviews (XS): 8004741: Missing compiled exception handle table entry for multidimensional array allocation
vladimir.kozlov at oracle.com
Mon Dec 10 14:50:57 PST 2012
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.
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.
> 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:
>>> 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.
More information about the hotspot-compiler-dev