fun Rx_dest(var inst : InstOp, i0) { val ii = i0?ext(32); if(ii >= 8) { val win = (CWP?cvt(ulong) - (ii / 16) + 8 ) % 8 ; ii = ii & 0xf?ext(32); inst.destq?push_back(rmap_dest(2 ,16*win+ii)); } else if(ii > 0) { inst.destq?push_back(rmap_dest(1 ,ii-1)); } else { val dest : DestRef; dest.rtype = 0 ?cvt(uchar); dest.regnum = 0?cvt(uchar); inst.destq?push_back(dest); } }