I think, it happens due to changing of an Ideal graph since
the different changes in 1.5 and 1.6 caused the assert.
I was able to reproduce it on both 64bits VM: amd64 and sparcv9
jano% setenv TEST_JAVA /java/re/jdk/1.6.0/promoted/all/b82/binaries/solaris-sparcv9/fastdebug
jano% setenv LD_LIBRARY_PATH /net/sqesvr-nfs.sfbay/global/nfs/vm/users/viswadeep/1.5.0/VM/TIGER_TESTBASE/bin/lib/sparcv9/runtime/ParallelClassLoading/shared
jano% $TEST_JAVA/bin/java -d64 -server -Xverify:all -Xcomp -Xbatch -XX:+UnlockDiagnosticVMOptions -d64 -Xverify:all -cp /net/sqesvr-nfs.sfbay/global/nfs/vm/users/viswadeep/1.5.0/VM/TIGER_TESTBASE/bin/classes -agentlib:redefineClasses \
runtime.ParallelClassLoading.shared.ReflectionLoadingController -ITERATIONS 100 -DEBUG true -waitTimeInMin 2 -THREADS_COUNT 5 -classDir \
/net/sqesvr-nfs.sfbay/global/nfs/vm/users/viswadeep/1.5.0/VM/TIGER_TESTBASE/bin/classes/runtime/ParallelClassLoading/shared/hierarchies/static-load/static-init/anonymous/complex -class \
custom.R% -provoke reflect -provoke newInstance -regexForFreeingLock custom.A.\* -loadedClasses custom.D1,custom.D2,custom.D3,custom.D4,custom.D5,custom.D6,custom.D7,custom.D8,custom.D9,custom.D10
In 1.6 (Mustang) the assert started after the next fix (#6359906)
# Internal Error (/net/prt-solamd64-q1-4/PrtBuildDir/workspace/src/share/vm/opto/parse1.cpp, 1555), pid=18647, tid=11
#
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20051214080340.nips.divmod-debug compiled mode)
#
# Error: assert(n != top() || r->in(pnum) == top(),"live value must not be garbage")
In 1.5.0_07 (Tiger update7) it started after (#6322757)
# Internal Error (/net/prt-sparc-q2-9/tmp/PrtBuildDir/workspace/src/share/vm/opto/parse1.cpp, 1501 [ Patched ]), pid=12448, tid=26
#
# Java VM: Java HotSpot(TM) 64-Bit Server VM (20051216122827.chrisphi.hotspot-debug compiled mode)
#
# Error: assert(n != top() || r->in(pnum) == top(),"live value must not be garbage")
|