Lines Matching refs:W
216 uint16_t B = M.first(), E = M.last(), W = width(); in insert() local
218 assert(B < W && E < W); in insert()
222 assert(B <= E || E+(W-B)+1 == RC.width()); // E < B => E+(W-B)+1 = |RC|. in insert()
227 for (uint16_t i = 0; i < W-B; ++i) in insert()
230 Bits[i] = RC[i+(W-B)]; in insert()
236 uint16_t B = M.first(), E = M.last(), W = width(); in extract() local
237 assert(B < W && E < W); in extract()
245 RegisterCell RC(E+(W-B)+1); in extract()
246 for (uint16_t i = 0; i < W-B; ++i) in extract()
249 RC.Bits[i+(W-B)] = Bits[i]; in extract()
256 uint16_t W = width(); in rol() local
257 Sh = Sh % W; in rol()
261 RegisterCell Tmp(W-Sh); in rol()
263 for (uint16_t i = 0; i < W-Sh; ++i) in rol()
267 Bits[i] = Bits[W-Sh+i]; in rol()
269 for (uint16_t i = 0; i < W-Sh; ++i) in rol()
285 uint16_t W = width(), WRC = RC.width(); in cat() local
286 Bits.resize(W+WRC); in cat()
288 Bits[i+W] = RC.Bits[i]; in cat()
293 uint16_t W = width(); in ct() local
296 while (C < W && Bits[C] == V) in ct()
302 uint16_t W = width(); in cl() local
305 while (C < W && Bits[W-(C+1)] == V) in cl()
311 uint16_t W = Bits.size(); in operator ==() local
312 if (RC.Bits.size() != W) in operator ==()
314 for (uint16_t i = 0; i < W; ++i) in operator ==()
389 uint16_t W = A.width(); in isInt() local
390 for (uint16_t i = 0; i < W; ++i) in isInt()
400 uint16_t W = A.width(); in toInt() local
401 for (uint16_t i = 0; i < W; ++i) { in toInt()
412 BT::RegisterCell BT::MachineEvaluator::eIMM(int64_t V, uint16_t W) const { in eIMM()
413 RegisterCell Res(W); in eIMM()
415 for (uint16_t i = 0; i < W; ++i) { in eIMM()
434 uint16_t W = A1.width(); in eADD() local
435 assert(W == A2.width()); in eADD()
436 RegisterCell Res(W); in eADD()
439 for (I = 0; I < W; ++I) { in eADD()
448 for (; I < W; ++I) { in eADD()
460 for (; I < W; ++I) in eADD()
467 uint16_t W = A1.width(); in eSUB() local
468 assert(W == A2.width()); in eSUB()
469 RegisterCell Res(W); in eSUB()
472 for (I = 0; I < W; ++I) { in eSUB()
481 for (; I < W; ++I) { in eSUB()
493 for (; I < W; ++I) in eSUB()
500 uint16_t W = A1.width() + A2.width(); in eMLS() local
502 RegisterCell Res(W); in eMLS()
504 Res.fill(Z, W, BitValue::self()); in eMLS()
510 uint16_t W = A1.width() + A2.width(); in eMLU() local
512 RegisterCell Res(W); in eMLU()
514 Res.fill(Z, W, BitValue::self()); in eMLU()
529 uint16_t W = A1.width(); in eLSR() local
530 assert(Sh <= W); in eLSR()
532 Res.rol(W-Sh); in eLSR()
533 Res.fill(W-Sh, W, BitValue::Zero); in eLSR()
539 uint16_t W = A1.width(); in eASR() local
540 assert(Sh <= W); in eASR()
542 BitValue Sign = Res[W-1]; in eASR()
543 Res.rol(W-Sh); in eASR()
544 Res.fill(W-Sh, W, Sign); in eASR()
550 uint16_t W = A1.width(); in eAND() local
551 assert(W == A2.width()); in eAND()
552 RegisterCell Res(W); in eAND()
553 for (uint16_t i = 0; i < W; ++i) { in eAND()
572 uint16_t W = A1.width(); in eORL() local
573 assert(W == A2.width()); in eORL()
574 RegisterCell Res(W); in eORL()
575 for (uint16_t i = 0; i < W; ++i) { in eORL()
594 uint16_t W = A1.width(); in eXOR() local
595 assert(W == A2.width()); in eXOR()
596 RegisterCell Res(W); in eXOR()
597 for (uint16_t i = 0; i < W; ++i) { in eXOR()
613 uint16_t W = A1.width(); in eNOT() local
614 RegisterCell Res(W); in eNOT()
615 for (uint16_t i = 0; i < W; ++i) { in eNOT()
644 uint16_t W) const { in eCLB()
649 return eIMM(C, W); in eCLB()
650 return RegisterCell::self(0, W); in eCLB()
654 uint16_t W) const { in eCTB()
659 return eIMM(C, W); in eCTB()
660 return RegisterCell::self(0, W); in eCTB()
665 uint16_t W = A1.width(); in eSXT() local
666 assert(FromN <= W); in eSXT()
670 Res.fill(FromN, W, Sign); in eSXT()
676 uint16_t W = A1.width(); in eZXT() local
677 assert(FromN <= W); in eZXT()
679 Res.fill(FromN, W, BitValue::Zero); in eZXT()
685 uint16_t W = A1.width(); in eXTR() local
686 assert(B < W && E <= W); in eXTR()
689 uint16_t Last = (E > 0) ? E-1 : W-1; in eXTR()
709 uint16_t W = getRegBitWidth(Reg); in mask() local
710 assert(W > 0 && "Cannot generate mask for empty register"); in mask()
711 return BitMask(0, W-1); in mask()
733 uint16_t W = getRegBitWidth(RD); in evaluate() local
734 RegisterCell Res(W); in evaluate()