JDK-8073957 : assert(ary_src != 0) failed: not an array or instance?
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 9
  • Priority: P1
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2015-02-26
  • Updated: 2015-06-03
  • Resolved: 2015-03-04
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b55Fixed
Related Reports
Relates :  
Description
#  Internal Error (C:\jprt\T\P1\200806.rwestrel\s\hotspot\src\share\vm\opto\arraycopynode.cpp:118), pid=44840, tid=47284
#  assert(ary_src != 0) failed: not an array or instance?

# JRE version: Java(TM) SE Runtime Environment (9.0) (build 1.9.0-internal-fastdebug-20150225200806.rwestrel.8073792-b00)
# Java VM: Java HotSpot(TM) Server VM (1.9.0-internal-fastdebug-20150225200806.rwestrel.8073792-b00 mixed mode linux-x86 )

Current thread (0xcde87800):  JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=13940, stack(0xce56e000,0xce5ef000)]

Stack: [0xce56e000,0xce5ef000],  sp=0xce5ec430,  free space=505k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x10514c8]  VMError::report_and_die()+0x198;;  VMError::report_and_die()+0x198
V  [libjvm.so+0x6dae06]  report_vm_error(char const*, int, char const*, char const*)+0x76;;  report_vm_error(char const*, int, char const*, char const*)+0x76
V  [libjvm.so+0x366830]  ArrayCopyNode::get_count(PhaseGVN*) const+0x140;;  ArrayCopyNode::get_count(PhaseGVN*) const+0x140
V  [libjvm.so+0x36ab9c]  ArrayCopyNode::Ideal(PhaseGVN*, bool)+0x36c;;  ArrayCopyNode::Ideal(PhaseGVN*, bool)+0x36c
V  [libjvm.so+0xe1cabc]  PhaseIterGVN::transform_old(Node*)+0xcc;;  PhaseIterGVN::transform_old(Node*)+0xcc
V  [libjvm.so+0xe17584]  PhaseIterGVN::optimize()+0x74;;  PhaseIterGVN::optimize()+0x74
V  [libjvm.so+0x653bf9]  Compile::Optimize()+0x9b9;;  Compile::Optimize()+0x9b9
V  [libjvm.so+0x655c57]  Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool)+0x1737;;  Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool)+0x1737
V  [libjvm.so+0x508696]  C2Compiler::compile_method(ciEnv*, ciMethod*, int)+0x196;;  C2Compiler::compile_method(ciEnv*, ciMethod*, int)+0x196
V  [libjvm.so+0x662fee]  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xc4e;;  CompileBroker::invoke_compiler_on_method(CompileTask*)+0xc4e
V  [libjvm.so+0x663fc6]  CompileBroker::compiler_thread_loop()+0x666;;  CompileBroker::compiler_thread_loop()+0x666
V  [libjvm.so+0xfb73c5]  compiler_thread_entry(JavaThread*, Thread*)+0x55;;  compiler_thread_entry(JavaThread*, Thread*)+0x55
V  [libjvm.so+0xfca302]  JavaThread::thread_main_inner()+0x202;;  JavaThread::thread_main_inner()+0x202
V  [libjvm.so+0xfca656]  JavaThread::run()+0x2e6;;  JavaThread::run()+0x2e6
V  [libjvm.so+0xd89740]  java_start(Thread*)+0x100;;  java_start(Thread*)+0x100
C  [libpthread.so.0+0x6a49]
C  [libc.so.6+0xdee1e]  clone+0x5e

Current CompileTask:
C2: 476549 7688  s!b        sun.net.www.protocol.http.HttpURLConnection::getInputStream0 (2019 bytes)

Comments
regarding lack of test case: requires inputs of ArrayCopyNode to become dead in a particular order which is hard to reproduce with a simple test case.
04-03-2015

ILW=Assert in compiler, a lot, none=M/HHH=P2/P1=P1
27-02-2015