fun ready(var reserve : uchar array[2]) { val ii = 0; while(ii < 2) { val funit = reserve[ii]; if(ii < pipe.resources?length) if((funit & pipe.resources[+ii]) != 0?cvt(uchar)) return false; if(funit & (0x04 | 0x08 | 0x10 ) != 0?cvt(uchar)) { val jj = 0; while(jj < pipe.instructions?length) { var old = pipe.instructions[+jj]; val kk = 0; while(kk < srcQ?length) { if(srcQ[+kk] == old.dest) if(old.ready > 0?cvt(uchar)) return false; kk = kk + 1; } jj = jj + 1; } } else if(funit == 0x40 ) { val jj = 0; while(jj < pipe.instructions?length) { var old = pipe.instructions[+jj]; val kk = 0; while(kk < storeQ?length) { if(storeQ[+kk] == old.dest) if(old.ready > 0?cvt(uchar)) return false; kk = kk + 1; } jj = jj + 1; } } ii = ii + 1; } return true; }