Internal testing showed that a java.lang.ThreadDeath thrown asynchronously as a result of a call to Thread.stop could be swallowed by the JVMCI code path that allows a JVMCI compiler to adjust the selected compilation policy when a profiling counter overflows.