--- a/src/hotspot/share/interpreter/bytecode.cpp Wed Nov 13 11:27:50 2019 +0000
+++ b/src/hotspot/share/interpreter/bytecode.cpp Wed Nov 13 08:23:23 2019 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -151,7 +151,7 @@
}
-methodHandle Bytecode_invoke::static_target(TRAPS) {
+Method* Bytecode_invoke::static_target(TRAPS) {
constantPoolHandle constants(THREAD, this->constants());
Bytecodes::Code bc = invoke_code();
@@ -160,8 +160,10 @@
Handle Bytecode_invoke::appendix(TRAPS) {
ConstantPoolCacheEntry* cpce = cpcache_entry();
- if (cpce->has_appendix())
- return Handle(THREAD, cpce->appendix_if_resolved(constants()));
+ if (cpce->has_appendix()) {
+ constantPoolHandle cp(THREAD, constants());
+ return Handle(THREAD, cpce->appendix_if_resolved(cp));
+ }
return Handle(); // usual case
}