Mercurial > hg > truffle
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); |