Use the attached SDD0.java to reproduce this issue.
Current CompileTask:
C2: 1633 1094 % ! 4 SDD0::mainTest @ 119 (703 bytes)
Stack: [0x00007f879017c000,0x00007f879027d000], sp=0x00007f8790277db0, free space=1007k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x18b9b94] VMError::report_and_die(int, char const*, char const*, __va_list_tag*, Thread*, unsigned char*, void*, void*, char const*, int, unsigned long)+0x194
V [libjvm.so+0x18babff] VMError::report_and_die(Thread*, void*, char const*, int, char const*, char const*, __va_list_tag*)+0x2f
V [libjvm.so+0xaff2e0] report_vm_error(char const*, int, char const*, char const*, ...)+0x100
V [libjvm.so+0xbf987b] PhaseCFG::do_DFS(Tarjan*, unsigned int)+0x1ab
V [libjvm.so+0xbf9bcc] PhaseCFG::build_dominator_tree()+0xdc
V [libjvm.so+0xd781f1] PhaseCFG::do_global_code_motion()+0x11
V [libjvm.so+0xa25e8c] Compile::Code_Gen()+0x24c
V [libjvm.so+0xa29f84] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, bool, DirectiveSet*)+0x1064
V [libjvm.so+0x82bbdb] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0xfb
V [libjvm.so+0xa37b12] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x392
V [libjvm.so+0xa38dc8] CompileBroker::compiler_thread_loop()+0x5b8
V [libjvm.so+0x17f768b] JavaThread::thread_main_inner()+0x20b
V [libjvm.so+0x17f30ea] Thread::call_run()+0x19a
V [libjvm.so+0x15027b6] thread_native_entry(Thread*)+0x106