Lines Matching refs:W
200 uint16_t B = M.first(), E = M.last(), W = width(); in insert() local
202 assert(B < W && E < W); in insert()
206 assert(B <= E || E+(W-B)+1 == RC.width()); // E < B => E+(W-B)+1 = |RC|. in insert()
211 for (uint16_t i = 0; i < W-B; ++i) in insert()
214 Bits[i] = RC[i+(W-B)]; in insert()
221 uint16_t B = M.first(), E = M.last(), W = width(); in extract() local
222 assert(B < W && E < W); in extract()
230 RegisterCell RC(E+(W-B)+1); in extract()
231 for (uint16_t i = 0; i < W-B; ++i) in extract()
234 RC.Bits[i+(W-B)] = Bits[i]; in extract()
242 uint16_t W = width(); in rol() local
243 Sh = Sh % W; in rol()
247 RegisterCell Tmp(W-Sh); in rol()
249 for (uint16_t i = 0; i < W-Sh; ++i) in rol()
253 Bits[i] = Bits[W-Sh+i]; in rol()
255 for (uint16_t i = 0; i < W-Sh; ++i) in rol()
273 uint16_t W = width(), WRC = RC.width(); in cat() local
274 Bits.resize(W+WRC); in cat()
276 Bits[i+W] = RC.Bits[i]; in cat()
282 uint16_t W = width(); in ct() local
285 while (C < W && Bits[C] == V) in ct()
292 uint16_t W = width(); in cl() local
295 while (C < W && Bits[W-(C+1)] == V) in cl()
302 uint16_t W = Bits.size(); in operator ==() local
303 if (RC.Bits.size() != W) in operator ==()
305 for (uint16_t i = 0; i < W; ++i) in operator ==()
386 uint16_t W = A.width(); in isInt() local
387 for (uint16_t i = 0; i < W; ++i) in isInt()
398 uint16_t W = A.width(); in toInt() local
399 for (uint16_t i = 0; i < W; ++i) { in toInt()
411 BT::RegisterCell BT::MachineEvaluator::eIMM(int64_t V, uint16_t W) const { in eIMM()
412 RegisterCell Res(W); in eIMM()
414 for (uint16_t i = 0; i < W; ++i) { in eIMM()
435 uint16_t W = A1.width(); in eADD() local
436 assert(W == A2.width()); in eADD()
437 RegisterCell Res(W); in eADD()
440 for (I = 0; I < W; ++I) { in eADD()
449 for (; I < W; ++I) { in eADD()
461 for (; I < W; ++I) in eADD()
469 uint16_t W = A1.width(); in eSUB() local
470 assert(W == A2.width()); in eSUB()
471 RegisterCell Res(W); in eSUB()
474 for (I = 0; I < W; ++I) { in eSUB()
483 for (; I < W; ++I) { in eSUB()
495 for (; I < W; ++I) in eSUB()
503 uint16_t W = A1.width() + A2.width(); in eMLS() local
505 RegisterCell Res(W); in eMLS()
507 Res.fill(Z, W, BitValue::self()); in eMLS()
514 uint16_t W = A1.width() + A2.width(); in eMLU() local
516 RegisterCell Res(W); in eMLU()
518 Res.fill(Z, W, BitValue::self()); in eMLU()
535 uint16_t W = A1.width(); in eLSR() local
536 assert(Sh <= W); in eLSR()
538 Res.rol(W-Sh); in eLSR()
539 Res.fill(W-Sh, W, BitValue::Zero); in eLSR()
546 uint16_t W = A1.width(); in eASR() local
547 assert(Sh <= W); in eASR()
549 BitValue Sign = Res[W-1]; in eASR()
550 Res.rol(W-Sh); in eASR()
551 Res.fill(W-Sh, W, Sign); in eASR()
558 uint16_t W = A1.width(); in eAND() local
559 assert(W == A2.width()); in eAND()
560 RegisterCell Res(W); in eAND()
561 for (uint16_t i = 0; i < W; ++i) { in eAND()
581 uint16_t W = A1.width(); in eORL() local
582 assert(W == A2.width()); in eORL()
583 RegisterCell Res(W); in eORL()
584 for (uint16_t i = 0; i < W; ++i) { in eORL()
604 uint16_t W = A1.width(); in eXOR() local
605 assert(W == A2.width()); in eXOR()
606 RegisterCell Res(W); in eXOR()
607 for (uint16_t i = 0; i < W; ++i) { in eXOR()
624 uint16_t W = A1.width(); in eNOT() local
625 RegisterCell Res(W); in eNOT()
626 for (uint16_t i = 0; i < W; ++i) { in eNOT()
658 uint16_t W) const { in eCLB()
663 return eIMM(C, W); in eCLB()
664 return RegisterCell::self(0, W); in eCLB()
669 uint16_t W) const { in eCTB()
674 return eIMM(C, W); in eCTB()
675 return RegisterCell::self(0, W); in eCTB()
681 uint16_t W = A1.width(); in eSXT() local
682 assert(FromN <= W); in eSXT()
686 Res.fill(FromN, W, Sign); in eSXT()
693 uint16_t W = A1.width(); in eZXT() local
694 assert(FromN <= W); in eZXT()
696 Res.fill(FromN, W, BitValue::Zero); in eZXT()
703 uint16_t W = A1.width(); in eXTR() local
704 assert(B < W && E <= W); in eXTR()
707 uint16_t Last = (E > 0) ? E-1 : W-1; in eXTR()
729 uint16_t W = getRegBitWidth(Reg); in mask() local
730 assert(W > 0 && "Cannot generate mask for empty register"); in mask()
731 return BitMask(0, W-1); in mask()
748 uint16_t W = getRegBitWidth(RD); in evaluate() local
749 RegisterCell Res(W); in evaluate()