Lines Matching defs:shiftAmt
92 ArmStaticInst::shiftReg64(uint64_t base, uint64_t shiftAmt,
95 shiftAmt = shiftAmt % width;
102 return base << shiftAmt;
104 if (shiftAmt == 0)
107 return (base & mask(width)) >> shiftAmt;
109 if (shiftAmt == 0) {
113 base >>= shiftAmt;
114 base = sign_bit ? (base | ~mask(intWidth - shiftAmt)) : base;
118 if (shiftAmt == 0)
121 return (base << (width - shiftAmt)) | (base >> shiftAmt);
132 uint64_t shiftAmt, uint8_t width) const
166 len = len <= width - shiftAmt ? len : width - shiftAmt;
167 uint64_t tmp = (uint64_t) bits(base, len - 1, 0) << shiftAmt;
169 int sign_bit = bits(tmp, len + shiftAmt - 1);
170 tmp = sign_bit ? (tmp | ~mask(len + shiftAmt)) : tmp;
496 uint32_t shiftAmt,
508 if ((type == LSR || type == ASR) && immShift && shiftAmt == 0)
509 shiftAmt = 32;
513 if (immShift && shiftAmt == 0) {
532 if (immShift && shiftAmt == 0) {
550 os << "#" << shiftAmt;
559 int64_t shiftAmt) const
564 if (type == UXTX && shiftAmt == 0)
584 if (type == UXTX || shiftAmt)
585 ccprintf(os, " #%d", shiftAmt);
591 IntRegIndex rm, IntRegIndex rs, uint32_t shiftAmt,
616 printShiftOperand(os, rm, immShift, shiftAmt, rs, type);