comparison src/share/vm/c1/c1_Compilation.cpp @ 780:c96bf21b756f

6788527: Server vm intermittently fails with assertion "live value must not be garbage" with fastdebug bits Summary: Cache Jvmti and DTrace flags used by Compiler. Reviewed-by: never
author kvn
date Fri, 08 May 2009 10:44:20 -0700
parents a61af66fc99e
children bd02caa94611
comparison
equal deleted inserted replaced
779:d0e0d6d824d8 780:c96bf21b756f
317 // This can happen if the method is obsolete or breakpointed. 317 // This can happen if the method is obsolete or breakpointed.
318 bailout("Bailing out because method is not compilable"); 318 bailout("Bailing out because method is not compilable");
319 return; 319 return;
320 } 320 }
321 321
322 if (JvmtiExport::can_hotswap_or_post_breakpoint()) { 322 if (_env->jvmti_can_hotswap_or_post_breakpoint()) {
323 // We can assert evol_method because method->can_be_compiled is true. 323 // We can assert evol_method because method->can_be_compiled is true.
324 dependency_recorder()->assert_evol_method(method()); 324 dependency_recorder()->assert_evol_method(method());
325 } 325 }
326 326
327 if (method()->break_at_execute()) { 327 if (method()->break_at_execute()) {
433 PhaseTraceTime timeit(_t_compile); 433 PhaseTraceTime timeit(_t_compile);
434 434
435 assert(_arena == NULL, "shouldn't only one instance of Compilation in existence at a time"); 435 assert(_arena == NULL, "shouldn't only one instance of Compilation in existence at a time");
436 _arena = Thread::current()->resource_area(); 436 _arena = Thread::current()->resource_area();
437 _compilation = this; 437 _compilation = this;
438 _needs_debug_information = JvmtiExport::can_examine_or_deopt_anywhere() || 438 _needs_debug_information = _env->jvmti_can_examine_or_deopt_anywhere() ||
439 JavaMonitorsInStackTrace || AlwaysEmitDebugInfo || DeoptimizeALot; 439 JavaMonitorsInStackTrace || AlwaysEmitDebugInfo || DeoptimizeALot;
440 _exception_info_list = new ExceptionInfoList(); 440 _exception_info_list = new ExceptionInfoList();
441 _implicit_exception_table.set_size(0); 441 _implicit_exception_table.set_size(0);
442 compile_method(); 442 compile_method();
443 } 443 }