Lines Matching refs:Imm
32 void MipsAnalyzeImmediate::GetInstSeqLsADDiu(uint64_t Imm, unsigned RemSize, in GetInstSeqLsADDiu() argument
34 GetInstSeqLs((Imm + 0x8000ULL) & 0xffffffffffff0000ULL, RemSize, SeqLs); in GetInstSeqLsADDiu()
35 AddInstr(SeqLs, Inst(ADDiu, Imm & 0xffffULL)); in GetInstSeqLsADDiu()
38 void MipsAnalyzeImmediate::GetInstSeqLsORi(uint64_t Imm, unsigned RemSize, in GetInstSeqLsORi() argument
40 GetInstSeqLs(Imm & 0xffffffffffff0000ULL, RemSize, SeqLs); in GetInstSeqLsORi()
41 AddInstr(SeqLs, Inst(ORi, Imm & 0xffffULL)); in GetInstSeqLsORi()
44 void MipsAnalyzeImmediate::GetInstSeqLsSLL(uint64_t Imm, unsigned RemSize, in GetInstSeqLsSLL() argument
46 unsigned Shamt = llvm::countr_zero(Imm); in GetInstSeqLsSLL()
47 GetInstSeqLs(Imm >> Shamt, RemSize - Shamt, SeqLs); in GetInstSeqLsSLL()
51 void MipsAnalyzeImmediate::GetInstSeqLs(uint64_t Imm, unsigned RemSize, in GetInstSeqLs() argument
53 uint64_t MaskedImm = Imm & (0xffffffffffffffffULL >> (64 - Size)); in GetInstSeqLs()
66 if (!(Imm & 0xffff)) { in GetInstSeqLs()
67 GetInstSeqLsSLL(Imm, RemSize, SeqLs); in GetInstSeqLs()
71 GetInstSeqLsADDiu(Imm, RemSize, SeqLs); in GetInstSeqLs()
75 if (Imm & 0x8000) { in GetInstSeqLs()
77 GetInstSeqLsORi(Imm, RemSize, SeqLsORi); in GetInstSeqLs()
97 int64_t Imm = SignExtend64<16>(Seq[0].ImmOpnd); in ReplaceADDiuSLLWithLUi() local
98 int64_t ShiftedImm = (uint64_t)Imm << (Seq[1].ImmOpnd - 16); in ReplaceADDiuSLLWithLUi()
129 &MipsAnalyzeImmediate::Analyze(uint64_t Imm, unsigned Size, in Analyze() argument
148 if (LastInstrIsADDiu | !Imm) in Analyze()
149 GetInstSeqLsADDiu(Imm, Size, SeqLs); in Analyze()
151 GetInstSeqLs(Imm, Size, SeqLs); in Analyze()