comparison src/share/vm/graal/graalCompiler.cpp @ 3090:536528f48708

more escape analysis work: debug info
author Lukas Stadler <lukas.stadler@jku.at>
date Tue, 28 Jun 2011 19:14:28 +0200
parents 8b0236cbed14
children 22d11b3bc561
comparison
equal deleted inserted replaced
3089:05b8a7787aaf 3090:536528f48708
142 return VMExits::createRiTypeUnresolved(VmIds::toString<Handle>(name, THREAD), THREAD); 142 return VMExits::createRiTypeUnresolved(VmIds::toString<Handle>(name, THREAD), THREAD);
143 } 143 }
144 } 144 }
145 145
146 oop GraalCompiler::get_RiField(ciField *field, ciInstanceKlass* accessor_klass, KlassHandle accessor, Bytecodes::Code byteCode, TRAPS) { 146 oop GraalCompiler::get_RiField(ciField *field, ciInstanceKlass* accessor_klass, KlassHandle accessor, Bytecodes::Code byteCode, TRAPS) {
147 bool will_link = field->will_link_from_vm(accessor_klass, byteCode); 147 int offset;
148 int offset = (field->holder()->is_loaded() && will_link) ? field->offset() : -1; 148 if (byteCode != Bytecodes::_illegal) {
149 bool will_link = field->will_link_from_vm(accessor_klass, byteCode);
150 offset = (field->holder()->is_loaded() && will_link) ? field->offset() : -1;
151 } else {
152 offset = field->offset();
153 }
149 Handle field_name = VmIds::toString<Handle>(field->name()->get_symbol(), CHECK_0); 154 Handle field_name = VmIds::toString<Handle>(field->name()->get_symbol(), CHECK_0);
150 Handle field_holder = get_RiType(field->holder(), accessor, CHECK_0); 155 Handle field_holder = get_RiType(field->holder(), accessor, CHECK_0);
151 Handle field_type = get_RiType(field->type(), accessor, CHECK_0); 156 Handle field_type = get_RiType(field->type(), accessor, CHECK_0);
152 int flags = field->flags().as_int(); 157 int flags = field->flags().as_int();
153 return VMExits::createRiField(field_holder, field_name, field_type, offset, flags, THREAD); 158 return VMExits::createRiField(field_holder, field_name, field_type, offset, flags, THREAD);