Lines Matching refs:Imm
77 static uint64_t getChunk(uint64_t Imm, unsigned ChunkIdx) { in getChunk() argument
80 return (Imm >> (ChunkIdx * 16)) & 0xFFFF; in getChunk()
85 static uint64_t replicateChunk(uint64_t Imm, unsigned FromIdx, unsigned ToIdx) { in replicateChunk() argument
90 const uint64_t Chunk = getChunk(Imm, FromIdx) << ShiftAmt; in replicateChunk()
92 Imm &= ~(0xFFFFLL << ShiftAmt); in replicateChunk()
94 return Imm | Chunk; in replicateChunk()
257 static uint64_t updateImm(uint64_t Imm, unsigned Idx, bool Clear) { in updateImm() argument
262 Imm &= ~(Mask << (Idx * 16)); in updateImm()
265 Imm |= Mask << (Idx * 16); in updateImm()
267 return Imm; in updateImm()
406 uint64_t Imm = MI.getOperand(1).getImm(); in expandMOVImm() local
410 uint64_t UImm = Imm << (64 - BitSize) >> (64 - BitSize); in expandMOVImm()
429 const unsigned Chunk = (Imm >> Shift) & Mask; in expandMOVImm()
515 Imm = ~Imm; in expandMOVImm()
520 Imm &= (1LL << 32) - 1; in expandMOVImm()
527 if (Imm != 0) { in expandMOVImm()
528 unsigned LZ = countLeadingZeros(Imm); in expandMOVImm()
529 unsigned TZ = countTrailingZeros(Imm); in expandMOVImm()
533 unsigned Imm16 = (Imm >> Shift) & Mask; in expandMOVImm()
546 Imm = ~Imm; in expandMOVImm()
558 Imm16 = (Imm >> Shift) & Mask; in expandMOVImm()