Running Nashorn + Octane with a fastdebug build and -Xcomp crashes the VM:
99 ConI === 0 [[ 21081 20723 20684 36796 28724 29144 8663 9607 28721 9609 9202 366 6213 14156 18493 7269 495 126 9823 5779 7267 10801 761 14023 10570 17746 7081 885 532 1007 17744 23287 11798 8907 10093 10095 5368 1320 23284 17360 4506 6669 14792 3643 11921 10367 17133 11187 13026 12387 14163 10365 1934 7765 3641 4061 8157 6211 11938 9200 2226 11931 4063 12107 11678 16410 5777 8917 11676 16227 13412 8661 13410 4938 14332 2836 5366 13903 14146 14614 15754 6671 15586 8924 15584 8784 4504 4940 15339 11185 14616 15182 13901 8159 23741 23738 24019 24016 24297 24294 24575 24572 24867 24864 25068 25897 25899 27006 26718 27008 27451 27448 27879 27876 28298 28295 29331 29856 30126 30123 30661 30664 30956 31440 31697 31918 32182 32185 32479 32476 33018 33501 33772 33775 34010 34274 34277 34570 34567 35111 35114 35406 35700 35906 36795 36804 36804 ]] #int:1
36795 AddI === _ 36795 99 [[ 31943 33048 32192 19605 32207 36804 36804 36804 36796 36795 19813 31710 33302 32398 33474 32104 33694 31928 34020 34196 31726 35947 35710 35622 35416 35328 35044 35028 35121 35136 34577 34592 34284 34299 34035 33782 33797 33458 33511 33526 32951 32935 32988 33031 31450 31465 30878 30969 30594 30578 30671 30686 30148 29789 29773 29826 29869 29344 20267 19000 29360 20244 32777 20219 32486 29615 20182 36689 19086 19086 36447 29885 20086 30133 36202 30422 35932 35741 19178 19178 35447 30631 19952 30985 19925 19285 19257 35081 34871 31239 31397 31413 34489 19631 ]] !jvms: JSType::addExact @ bci:2 1359484306::invokeStatic_I3_I @ bci:14 232635121::reinvoke @ bci:24 537235912::linkToTargetMethod @ bci:6 Script$Recompilation$2499$833928AAZAA$typescript_compiler::L:16271$TypeChecker$sourceIsRelatableToTarget @ bci:1982
20219 ConvI2L === _ 36795 [[ 19032 19000 ]] #long:minint..maxint:www !orig=[18994] !jvms: Script$Recompilation$2499$833928AAZAA$typescript_compiler::L:16271$TypeChecker$sourceIsRelatableToTarget @ bci:985
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc: SuppressErrorAt=/phaseX.cpp:785
#
# A fatal error has been detected by the Java Runtime Environment:
#
# Internal Error (/oracle/8144212/hotspot/src/share/vm/opto/phaseX.cpp:785), pid=25672, tid=25692
# assert(no_dead_loop) failed: dead loop detected
#
# JRE version: Java(TM) SE Runtime Environment (9.0) (build 1.9.0-internal-fastdebug-tohartma_2015_11_30_14_45-b00)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (1.9.0-internal-fastdebug-tohartma_2015_11_30_14_45-b00, compiled mode, tiered, compressed oops, g1 gc, linux-amd64)
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %P" (or dumping to /home/tohartma/programs/octane/core.25672)
#
# An error report file with more information is saved as:
# /home/tohartma/programs/octane/hs_err_pid25672.log
#
# Compiler replay data is saved as:
# /home/tohartma/programs/octane/replay_pid25672.log
Stack: [0x00007f57982fe000,0x00007f57983ff000], sp=0x00007f57983f8ba0, free space=1002k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x127fda2] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x182
V [libjvm.so+0x1280aea] VMError::report_and_die(Thread*, char const*, int, char const*, char const*, __va_list_tag*)+0x4a
V [libjvm.so+0x8b7ca4] report_vm_error(char const*, int, char const*, char const*, ...)+0xd4
V [libjvm.so+0x103e23e] PhaseGVN::dead_loop_check(Node*)+0x26e
V [libjvm.so+0x1044e5f] PhaseIterGVN::transform_old(Node*)+0x8f
V [libjvm.so+0x1040504] PhaseIterGVN::optimize()+0x84
V [libjvm.so+0x832764] Compile::inline_incrementally(PhaseIterGVN&)+0x3f4
V [libjvm.so+0x8361e1] Compile::Optimize()+0x401
V [libjvm.so+0x838066] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0x1406
V [libjvm.so+0x6d5a83] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0x113
To reproduce run Nashorn with the Octane benchmark "jjs -J-Xcomp run.js".
Where run.js can be modified to only execute the "typescript" benchmarks (see attached version of run.js).