Lines Matching refs:kShift
823 template <unsigned N, unsigned kShift, typename T>
827 if ((raw_bits_ & GetUintMask(kShift)) != 0) return false;
831 unshifted.ArithmeticShiftRight(kShift);
844 // The lane size has to be adjusted to compensate for `kShift`, since the
846 if (unshifted.IsUintN(zd.GetLaneSizeInBits() - kShift)) {
847 int64_t encoded = unshifted.AsIntN(zd.GetLaneSizeInBits() - kShift);
856 // As above, but `kShift` is written to the `*shift` parameter on success, so
863 template <unsigned N, unsigned kShift, typename T, typename S>
867 if (TryEncodeAsShiftedIntNForLane<N, kShift>(zd, imm)) {
868 *shift = kShift;
874 // As above, but assume that `kShift` is 0.
882 template <unsigned N, unsigned kShift, typename T>
891 if ((raw_bits_ & GetUintMask(kShift)) != 0) return false;
893 if (vixl::IsUintN(N, raw_bits_ >> kShift)) {
894 *imm = static_cast<T>(raw_bits_ >> kShift);
900 template <unsigned N, unsigned kShift, typename T, typename S>
904 if (TryEncodeAsShiftedUintNForLane<N, kShift>(zd, imm)) {
905 *shift = kShift;