comparison src/share/vm/classfile/systemDictionary.cpp @ 1258:38836cf1d8d2

6920977: G1: guarantee(k == probe->klass(),"klass should be in dictionary") fails Summary: the guarantee is too strict and the test will fail (incorrectly) if the class is not in the system dictionary but in the placeholders. Reviewed-by: acorn, phh
author tonyp
date Fri, 05 Feb 2010 11:05:50 -0500
parents 4ce7240d622c
children 09ac706c2623
comparison
equal deleted inserted replaced
1247:230fac611b50 1258:38836cf1d8d2
2571 GCMutexLocker mu(SystemDictionary_lock); 2571 GCMutexLocker mu(SystemDictionary_lock);
2572 placeholders()->verify(); 2572 placeholders()->verify();
2573 2573
2574 // Verify constraint table 2574 // Verify constraint table
2575 guarantee(constraints() != NULL, "Verify of loader constraints failed"); 2575 guarantee(constraints() != NULL, "Verify of loader constraints failed");
2576 constraints()->verify(dictionary()); 2576 constraints()->verify(dictionary(), placeholders());
2577 } 2577 }
2578 2578
2579 2579
2580 void SystemDictionary::verify_obj_klass_present(Handle obj, 2580 void SystemDictionary::verify_obj_klass_present(Handle obj,
2581 symbolHandle class_name, 2581 symbolHandle class_name,