Lines Matching refs:SplatBits
3564 static SDValue isNEONModifiedImm(uint64_t SplatBits, uint64_t SplatUndef,
3574 if (SplatBits == 0)
3582 assert((SplatBits & ~0xff) == 0 && "one byte splat value is too big");
3584 Imm = SplatBits;
3591 if ((SplatBits & ~0xff) == 0) {
3594 Imm = SplatBits;
3597 if ((SplatBits & ~0xff00) == 0) {
3600 Imm = SplatBits >> 8;
3611 if ((SplatBits & ~0xff) == 0) {
3614 Imm = SplatBits;
3617 if ((SplatBits & ~0xff00) == 0) {
3620 Imm = SplatBits >> 8;
3623 if ((SplatBits & ~0xff0000) == 0) {
3626 Imm = SplatBits >> 16;
3629 if ((SplatBits & ~0xff000000) == 0) {
3632 Imm = SplatBits >> 24;
3639 if ((SplatBits & ~0xffff) == 0 &&
3640 ((SplatBits | SplatUndef) & 0xff) == 0xff) {
3643 Imm = SplatBits >> 8;
3644 SplatBits |= 0xff;
3648 if ((SplatBits & ~0xffffff) == 0 &&
3649 ((SplatBits | SplatUndef) & 0xffff) == 0xffff) {
3652 Imm = SplatBits >> 16;
3653 SplatBits |= 0xffff;
3673 if (((SplatBits | SplatUndef) & BitMask) == BitMask) {
3676 } else if ((SplatBits & BitMask) != 0) {
3684 SplatBits = Val;
3932 APInt SplatBits, SplatUndef;
3935 if (BVN->isConstantSplat(SplatBits, SplatUndef, SplatBitSize, HasAnyUndefs)) {
3939 SDValue Val = isNEONModifiedImm(SplatBits.getZExtValue(),
3949 uint64_t NegatedImm = (~SplatBits).getZExtValue();
6680 APInt SplatBits, SplatUndef;
6684 BVN->isConstantSplat(SplatBits, SplatUndef, SplatBitSize, HasAnyUndefs)) {
6687 SDValue Val = isNEONModifiedImm((~SplatBits).getZExtValue(),
6716 APInt SplatBits, SplatUndef;
6720 BVN->isConstantSplat(SplatBits, SplatUndef, SplatBitSize, HasAnyUndefs)) {
6723 SDValue Val = isNEONModifiedImm(SplatBits.getZExtValue(),
7497 APInt SplatBits, SplatUndef;
7500 if (! BVN || ! BVN->isConstantSplat(SplatBits, SplatUndef, SplatBitSize,
7504 Cnt = SplatBits.getSExtValue();