review for 7105305: assert check_method_context proper context

Tom Rodriguez tom.rodriguez at
Wed Oct 26 15:45:36 PDT 2011

On Oct 26, 2011, at 3:20 PM, John Rose wrote:

> On Oct 26, 2011, at 2:26 PM, Tom Rodriguez wrote:
>> This may causes some other CTW issues but I will file separate bugs for those, unless they have a simple fix I can include here.
> Good.

Thanks for identifying the real fix.

> Besides uncovering new CTW bugs, I think there's a risk in initializing CTW classes eagerly:  It might cause CTW to give up on processing a class C if its referent D fails to initialize.  This could reduce coverage, since perhaps C used to load and get compiled, where now D's failed initialization will cause C to be skipped.

It doesn't work that way:

        constantPoolKlass::preload_and_initialize_all_classes(k->constants(), THREAD);
          // If something went wrong in preloading we just ignore it                                                                                    
          tty->print_cr("Preloading failed for (%d) %s", _compile_the_world_counter, buffer);

Previously we would load the class and we might throw exceptions and that wouldn't stop compiles either.  We just have more opportunities to throw exceptions that we will just ignore.


> I suggest adding a print statement to the path where D's initialization fails, so we can track whether coverage gets reduced.
> -- John

More information about the hotspot-compiler-dev mailing list