<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p>FYI: <a class="moz-txt-link-freetext" href="https://bugs.openjdk.org/browse/JDK-8359057">https://bugs.openjdk.org/browse/JDK-8359057</a></p>
<p>David<br>
</p>
<div class="moz-cite-prefix">On 9/06/2025 4:29 am, <a class="moz-txt-link-abbreviated" href="mailto:me@xdark.dev">me@xdark.dev</a>
wrote:<br>
</div>
<blockquote type="cite" cite="mid:955a583d795914024aaa0d78ef35e274@xdark.dev">
<p>Greetings,<br>
Since <a id="key-val" class="issue-link" href="https://bugs.openjdk.org/browse/JDK-8301995" rel="5093573" data-issue-key="JDK-8301995" moz-do-not-send="true">JDK-8301995</a>, the code to in
AbstractInterpreter::is_not_reached(...) for invokedynamic looks
like this:<br>
```<br>
case Bytecodes::_invokedynamic: {<br>
assert(invoke_bc.has_index_u4(code), "sanity");<br>
int method_index = invoke_bc.get_index_u4(code);<br>
return
cpool->resolved_indy_entry_at(method_index)->is_resolved();<br>
}<br>
```<br>
Is this a bug? Before the change, the code looked like this:<br>
```<br>
case Bytecodes::_invokedynamic: {<br>
assert(invoke_bc.has_index_u4(code), "sanity");<br>
int method_index = invoke_bc.get_index_u4(code);<br>
return
cpool->invokedynamic_cp_cache_entry_at(method_index)->is_f1_null();<br>
}<br>
```<br>
The comment for this method says:<br>
```<br>
// Return true if the interpreter can prove that the given
bytecode has<br>
// not yet been executed (in Java semantics, not in actual
operation).<br>
```<br>
Shouldn't the is_resolved check be negated? The code is two
years old since this change, and it seems like a regression. I'm
unable to submit a patch if that is the case, so, if this is a
bug, It would be great if someone would fix this.<br>
Thanks!</p>
</blockquote>
</body>
</html>