comparison src/share/vm/c1x/c1x_CodeInstaller.cpp @ 2049:7e09ea4a8f36

Added leaf method assumptions.
author Thomas Wuerthinger <wuerthinger@ssw.jku.at>
date Mon, 10 Jan 2011 16:59:48 +0100
parents 177398c6147d
children b6d2c238e585
comparison
equal deleted inserted replaced
2048:177398c6147d 2049:7e09ea4a8f36
311 _dependencies->assert_abstract_with_unique_concrete_subtype(context, type); 311 _dependencies->assert_abstract_with_unique_concrete_subtype(context, type);
312 } 312 }
313 } 313 }
314 314
315 void CodeInstaller::assumption_ConcreteMethod(oop assumption) { 315 void CodeInstaller::assumption_ConcreteMethod(oop assumption) {
316 fatal("unimplemented"); 316 oop context_oop = CiAssumptions_ConcreteMethod::context(assumption);
317 oop method_oop = CiAssumptions_ConcreteMethod::method(assumption);
318 jlong context_oop_id = HotSpotMethodResolved::vmId(context_oop);
319 jlong method_oop_id = HotSpotMethodResolved::vmId(method_oop);
320 methodOop method = VmIds::get<methodOop>(method_oop_id);
321 methodOop context = VmIds::get<methodOop>(context_oop_id);
322
323 ciMethod* m = (ciMethod*) CURRENT_ENV->get_object(method);
324 ciMethod* c = (ciMethod*) CURRENT_ENV->get_object(context);
325 ciKlass* context_klass = c->holder();
326 _dependencies->assert_unique_concrete_method(context_klass, m);
317 } 327 }
318 328
319 void CodeInstaller::process_exception_handlers() { 329 void CodeInstaller::process_exception_handlers() {
320 // allocate some arrays for use by the collection code. 330 // allocate some arrays for use by the collection code.
321 const int num_handlers = 5; 331 const int num_handlers = 5;