lvm.js

changeset 133
afce5a550d18
parent 132
5a928c1478ad
child 134
2e2d08e3669c
equal deleted inserted replaced
132:5a928c1478ad 133:afce5a550d18
487 break; 487 break;
488 case OP_VARARG: 488 case OP_VARARG:
489 var A = INS_A(instruction); 489 var A = INS_A(instruction);
490 var prevframe = this.callstack[this.callstack.length-2]; 490 var prevframe = this.callstack[this.callstack.length-2];
491 var base = frame.retAt+frame.f.numParameters; 491 var base = frame.retAt+frame.f.numParameters;
492 var available = prevframe.reg.length - base; 492 var available = (prevframe.reg.length - base) - 1;
493 var wanted = INS_B(instruction)-1; 493 var wanted = INS_B(instruction)-1;
494 if(wanted < 0) 494 if(wanted < 0)
495 wanted = available; 495 wanted = available;
496 for(var i = 0; i<wanted; i++) 496 for(var i = 0; i<wanted; i++)
497 { 497 {

mercurial