RFR (M): 8145435: [JVMCI] some tests on Windows fail with: assert(!thread->is_Java_thread()) failed: must not be java thread

Doug Simon doug.simon at oracle.com
Wed Dec 16 22:31:19 UTC 2015


> On 16 Dec 2015, at 01:08, Tom Rodriguez <tom.rodriguez at oracle.com> wrote:
> 
>>> 
>>> http://cr.openjdk.java.net/~twisti/8145435/webrev/src/share/vm/runtime/java.cpp.udiff.html
>>> 
>>> and moved abort_on_pending_exception into JVMCICompiler and made it private.  It’s used for one thing only now.
> 
> That all seems ok to me.
> 
>>> 
>>> Finally I replaced JVMCIRuntime::call_printStackTrace with calls to java_lang_Throwable::print_stack_trace.
>> 
> 
> I feel like there was a reason we weren’t using java_lang_Throwable::print_stack_trace but it looks like it handles the causes properly which is the only reason I could think of.  Maybe Doug knows?


There are two issues with java_lang_Throwable::print_stack_trace:

1. It doesn’t print the exception message, just the stack.
2. It doesn’t synchronize the printing on the stream object (in contrast to Throwable.printStackTrace()).

Unless java_lang_Throwable::print_stack_trace is be modified to (optionally) include these 2 features, I think we should keep using JVMCIRuntime::call_printStackTrace and add a comment to it highlighting these differences.

-Doug


More information about the hotspot-dev mailing list