Lines Matching refs:Mips
35 : MipsInstrInfo(STI, Mips::Bimm16), RI() {}
67 if (Mips::CPU16RegsRegClass.contains(DestReg) &&
68 Mips::GPR32RegClass.contains(SrcReg))
69 Opc = Mips::MoveR3216;
70 else if (Mips::GPR32RegClass.contains(DestReg) &&
71 Mips::CPU16RegsRegClass.contains(SrcReg))
72 Opc = Mips::Move32R16;
73 else if ((SrcReg == Mips::HI0) &&
74 (Mips::CPU16RegsRegClass.contains(DestReg)))
75 Opc = Mips::Mfhi16, SrcReg = 0;
77 else if ((SrcReg == Mips::LO0) &&
78 (Mips::CPU16RegsRegClass.contains(DestReg)))
79 Opc = Mips::Mflo16, SrcReg = 0;
103 if (Mips::CPU16RegsRegClass.hasSubClassEq(RC))
104 Opc = Mips::SwRxSpImmX16;
122 if (Mips::CPU16RegsRegClass.hasSubClassEq(RC))
123 Opc = Mips::LwRxSpImmX16;
134 case Mips::RetRA16:
135 ExpandRetRA16(MBB, MI, Mips::JrcRa16);
147 case Mips::BeqzRxImmX16: return Mips::BnezRxImmX16;
148 case Mips::BnezRxImmX16: return Mips::BeqzRxImmX16;
149 case Mips::BeqzRxImm16: return Mips::BnezRxImm16;
150 case Mips::BnezRxImm16: return Mips::BeqzRxImm16;
151 case Mips::BteqzT8CmpX16: return Mips::BtnezT8CmpX16;
152 case Mips::BteqzT8SltX16: return Mips::BtnezT8SltX16;
153 case Mips::BteqzT8SltiX16: return Mips::BtnezT8SltiX16;
154 case Mips::Btnez16: return Mips::Bteqz16;
155 case Mips::BtnezX16: return Mips::BteqzX16;
156 case Mips::BtnezT8CmpiX16: return Mips::BteqzT8CmpiX16;
157 case Mips::BtnezT8SltuX16: return Mips::BteqzT8SltuX16;
158 case Mips::BtnezT8SltiuX16: return Mips::BteqzT8SltiuX16;
159 case Mips::Bteqz16: return Mips::Btnez16;
160 case Mips::BteqzX16: return Mips::BtnezX16;
161 case Mips::BteqzT8CmpiX16: return Mips::BtnezT8CmpiX16;
162 case Mips::BteqzT8SltuX16: return Mips::BtnezT8SltuX16;
163 case Mips::BteqzT8SltiuX16: return Mips::BtnezT8SltiuX16;
164 case Mips::BtnezT8CmpX16: return Mips::BteqzT8CmpX16;
165 case Mips::BtnezT8SltX16: return Mips::BteqzT8SltX16;
166 case Mips::BtnezT8SltiX16: return Mips::BteqzT8SltiX16;
182 case Mips::RA:
183 case Mips::S0:
184 case Mips::S1:
187 case Mips::S2:
203 bool SaveS2 = Reserved[Mips::S2];
205 unsigned Opc = ((FrameSize <= 128) && !SaveS2)? Mips::Save16:Mips::SaveX16;
210 MIB.addReg(Mips::S2);
221 adjustStackPtrBig(SP, -Remainder, MBB, I, Mips::V0, Mips::V1);
233 bool SaveS2 = Reserved[Mips::S2];
236 Mips::Restore16:Mips::RestoreX16;
247 adjustStackPtrBig(SP, Remainder, MBB, I, Mips::A0, Mips::A1);
253 MIB.addReg(Mips::S2, RegState::Define);
274 MachineInstrBuilder MIB1 = BuildMI(MBB, I, DL, get(Mips::LwConstant32), Reg1);
276 MachineInstrBuilder MIB2 = BuildMI(MBB, I, DL, get(Mips::MoveR3216), Reg2);
277 MIB2.addReg(Mips::SP, RegState::Kill);
278 MachineInstrBuilder MIB3 = BuildMI(MBB, I, DL, get(Mips::AdduRxRyRz16), Reg1);
281 MachineInstrBuilder MIB4 = BuildMI(MBB, I, DL, get(Mips::Move32R16),
282 Mips::SP);
338 (*II->getParent()->getParent(), &Mips::CPU16RegsRegClass);
364 BitVector Available = rs.getRegsAvailable(&Mips::CPU16RegsRegClass);
380 FirstRegSavedTo = Mips::T0;
386 BuildMI(MBB, II, DL, get(Mips::LwConstant32), Reg).addImm(Imm).addImm(-1);
388 if (FrameReg == Mips::SP) {
395 SecondRegSavedTo = Mips::T1;
402 copyPhysReg(MBB, II, DL, SpReg, Mips::SP, false);
403 BuildMI(MBB, II, DL, get(Mips:: AdduRxRyRz16), Reg).addReg(SpReg, RegState::Kill)
407 BuildMI(MBB, II, DL, get(Mips:: AdduRxRyRz16), Reg).addReg(FrameReg)
420 return (Opc == Mips::BeqzRxImmX16 || Opc == Mips::BimmX16 ||
421 Opc == Mips::Bimm16 ||
422 Opc == Mips::Bteqz16 || Opc == Mips::Btnez16 ||
423 Opc == Mips::BeqzRxImm16 || Opc == Mips::BnezRxImm16 ||
424 Opc == Mips::BnezRxImmX16 || Opc == Mips::BteqzX16 ||
425 Opc == Mips::BteqzT8CmpX16 || Opc == Mips::BteqzT8CmpiX16 ||
426 Opc == Mips::BteqzT8SltX16 || Opc == Mips::BteqzT8SltuX16 ||
427 Opc == Mips::BteqzT8SltiX16 || Opc == Mips::BteqzT8SltiuX16 ||
428 Opc == Mips::BtnezX16 || Opc == Mips::BtnezT8CmpX16 ||
429 Opc == Mips::BtnezT8CmpiX16 || Opc == Mips::BtnezT8SltX16 ||
430 Mips::BtnezT8SltuX16 || Opc == Mips::BtnezT8SltiX16 ||
431 Opc == Mips::BtnezT8SltiuX16 ) ? Opc : 0;
442 return get(Mips::AddiuSpImm16);
444 return get(Mips::AddiuSpImmX16);
460 case Mips::LbRxRyOffMemX16:
461 case Mips::LbuRxRyOffMemX16:
462 case Mips::LhRxRyOffMemX16:
463 case Mips::LhuRxRyOffMemX16:
464 case Mips::SbRxRyOffMemX16:
465 case Mips::ShRxRyOffMemX16:
466 case Mips::LwRxRyOffMemX16:
467 case Mips::SwRxRyOffMemX16:
468 case Mips::SwRxSpImmX16:
469 case Mips::LwRxSpImmX16:
471 case Mips::AddiuRxRyOffMemX16:
472 if ((Reg == Mips::PC) || (Reg == Mips::SP))