Mercurial > hg > graal-jvmci-8
comparison src/share/vm/graal/graalVMEntries.cpp @ 3655:2a0cb564e470
Do not use result when resolve_field throws an exception.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 17 Nov 2011 00:52:17 +0100 |
parents | 6aef50c6d967 |
children | 56c8f567dfb6 |
comparison
equal
deleted
inserted
replaced
3654:4123781869da | 3655:2a0cb564e470 |
---|---|
546 LinkResolver::resolve_field(result, cp, index, | 546 LinkResolver::resolve_field(result, cp, index, |
547 Bytecodes::java_code(code), | 547 Bytecodes::java_code(code), |
548 true, false, Thread::current()); | 548 true, false, Thread::current()); |
549 if (HAS_PENDING_EXCEPTION) { | 549 if (HAS_PENDING_EXCEPTION) { |
550 CLEAR_PENDING_EXCEPTION; | 550 CLEAR_PENDING_EXCEPTION; |
551 } | 551 } else { |
552 offset = result.field_offset(); | 552 offset = result.field_offset(); |
553 flags = result.access_flags(); | 553 flags = result.access_flags(); |
554 holder_klass = result.klass()->as_klassOop(); | 554 holder_klass = result.klass()->as_klassOop(); |
555 basic_type = result.field_type(); | 555 basic_type = result.field_type(); |
556 holder = GraalCompiler::get_RiType(holder_klass, CHECK_NULL); | 556 holder = GraalCompiler::get_RiType(holder_klass, CHECK_NULL); |
557 } | |
557 } | 558 } |
558 | 559 |
559 Handle type = GraalCompiler::get_RiTypeFromSignature(cp, sig_index, cp->pool_holder(), CHECK_NULL); | 560 Handle type = GraalCompiler::get_RiTypeFromSignature(cp, sig_index, cp->pool_holder(), CHECK_NULL); |
560 Handle field_handle = GraalCompiler::get_RiField(offset, flags.as_int(), name, holder, type, code, THREAD); | 561 Handle field_handle = GraalCompiler::get_RiField(offset, flags.as_int(), name, holder, type, code, THREAD); |
561 | 562 |