mirror of
https://github.com/ParkerTenBroeck/coroutines.git
synced 2026-06-07 05:08:51 -04:00
worked on fixed incorrect assumptions about how stack map entires function
This commit is contained in:
parent
f52827f97b
commit
0ad439c4d6
6 changed files with 57 additions and 49 deletions
|
|
@ -279,8 +279,8 @@ public class FrameTracker {
|
|||
while(locals.size()<=slot)locals.add(null);
|
||||
|
||||
var old = locals.get(slot);
|
||||
if(old == Type.DOUBLE_TYPE || old == Type.LONG_TYPE)
|
||||
locals.set(slot+1, Type.TOP_TYPE);
|
||||
if(old == Type.DOUBLE_TYPE || old == Type.LONG_TYPE)
|
||||
locals.set(slot+1, Type.TOP_TYPE);
|
||||
if(old == Type.DOUBLE2_TYPE || old == Type.LONG2_TYPE)
|
||||
locals.set(slot-1, Type.TOP_TYPE);
|
||||
locals.set(slot, type);
|
||||
|
|
@ -471,6 +471,7 @@ public class FrameTracker {
|
|||
public void encounterLabel(Label l) {
|
||||
var tmp = stackMapFrames.get(l);
|
||||
if (tmp != null) {
|
||||
// if(tmp.frameType()==252)
|
||||
stack.clear();
|
||||
locals.clear();
|
||||
for( var sl : tmp.stack())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue