diff src/share/vm/c1x/c1x_Compiler.cpp @ 1461:944071972cd9

Small fix.
author Thomas Wuerthinger <wuerthinger@ssw.jku.at>
date Sat, 13 Nov 2010 19:58:27 +0100
parents a8f9f091c219
children 2c754f3a2722
line wrap: on
line diff
--- a/src/share/vm/c1x/c1x_Compiler.cpp	Sat Nov 13 18:29:13 2010 +0100
+++ b/src/share/vm/c1x/c1x_Compiler.cpp	Sat Nov 13 19:58:27 2010 +0100
@@ -100,15 +100,12 @@
   }
 }
 
-oop C1XCompiler::get_RiField(ciField *field, KlassHandle accessor, Bytecodes::Code byteCode, TRAPS) {
+oop C1XCompiler::get_RiField(ciField *field, ciInstanceKlass* accessor_klass, KlassHandle accessor, Bytecodes::Code byteCode, TRAPS) {
+  bool will_link = field->will_link_from_vm(accessor_klass, byteCode);
+  int offset = (field->holder()->is_loaded() && will_link) ? field->offset() : -1;
+  Handle field_name = VmIds::toString<Handle>(field->name()->get_symbolOop(), CHECK_0);
   Handle field_holder = get_RiType(field->holder(), accessor, CHECK_0);
   Handle field_type = get_RiType(field->type(), accessor, CHECK_0);
-  Handle field_name = VmIds::toString<Handle>(field->name()->get_symbolOop(), CHECK_0);
-
-  ciInstanceKlass* accessor_klass = (ciInstanceKlass *) CURRENT_ENV->get_object(accessor());
-  bool will_link = field->will_link_from_vm(accessor_klass, byteCode);
-
-  int offset = (field->holder()->is_loaded() && will_link) ? field->offset() : -1;
 
   // TODO: implement caching
   return VMExits::createRiField(field_holder, field_name, field_type, offset, THREAD);