Home | History | Annotate | Download | only in Lanai

Lines Matching refs:Lanai

1 //===-- LanaiInstrInfo.cpp - Lanai Instruction Information ------*- C++ -*-===//
10 // This file contains the Lanai implementation of the TargetInstrInfo class.
14 #include "Lanai.h"
32 : LanaiGenInstrInfo(Lanai::ADJCALLSTACKDOWN, Lanai::ADJCALLSTACKUP),
41 if (!Lanai::GPRRegClass.contains(DestinationRegister, SourceRegister)) {
45 BuildMI(MBB, Position, DL, get(Lanai::OR_I_LO), DestinationRegister)
60 if (!Lanai::GPRRegClass.hasSubClassEq(RegisterClass)) {
63 BuildMI(MBB, Position, DL, get(Lanai::SW_RI))
80 if (!Lanai::GPRRegClass.hasSubClassEq(RegisterClass)) {
83 BuildMI(MBB, Position, DL, get(Lanai::LDW_RI), DestinationRegister)
173 {MO_ABS_HI, "lanai-hi"},
174 {MO_ABS_LO, "lanai-lo"},
175 {MO_NO_FLAG, "lanai-nf"}};
185 case Lanai::SFSUB_F_RI_LO:
186 case Lanai::SFSUB_F_RI_HI:
192 case Lanai::SFSUB_F_RR:
210 if (CmpI->getOpcode() == Lanai::SFSUB_F_RR &&
211 OI->getOpcode() == Lanai::SUB_R &&
218 if (((CmpI->getOpcode() == Lanai::SFSUB_F_RI_LO &&
219 OI->getOpcode() == Lanai::SUB_I_LO) ||
220 (CmpI->getOpcode() == Lanai::SFSUB_F_RI_HI &&
221 OI->getOpcode() == Lanai::SUB_I_HI)) &&
230 case Lanai::ADD_I_HI:
231 return Lanai::ADD_F_I_HI;
232 case Lanai::ADD_I_LO:
233 return Lanai::ADD_F_I_LO;
234 case Lanai::ADD_R:
235 return Lanai::ADD_F_R;
236 case Lanai::ADDC_I_HI:
237 return Lanai::ADDC_F_I_HI;
238 case Lanai::ADDC_I_LO:
239 return Lanai::ADDC_F_I_LO;
240 case Lanai::ADDC_R:
241 return Lanai::ADDC_F_R;
242 case Lanai::AND_I_HI:
243 return Lanai::AND_F_I_HI;
244 case Lanai::AND_I_LO:
245 return Lanai::AND_F_I_LO;
246 case Lanai::AND_R:
247 return Lanai::AND_F_R;
248 case Lanai::OR_I_HI:
249 return Lanai::OR_F_I_HI;
250 case Lanai::OR_I_LO:
251 return Lanai::OR_F_I_LO;
252 case Lanai::OR_R:
253 return Lanai::OR_F_R;
254 case Lanai::SL_I:
255 return Lanai::SL_F_I;
256 case Lanai::SRL_R:
257 return Lanai::SRL_F_R;
258 case Lanai::SA_I:
259 return Lanai::SA_F_I;
260 case Lanai::SRA_R:
261 return Lanai::SRA_F_R;
262 case Lanai::SUB_I_HI:
263 return Lanai::SUB_F_I_HI;
264 case Lanai::SUB_I_LO:
265 return Lanai::SUB_F_I_LO;
266 case Lanai::SUB_R:
267 return Lanai::SUB_F_R;
268 case Lanai::SUBB_I_HI:
269 return Lanai::SUBB_F_I_HI;
270 case Lanai::SUBB_I_LO:
271 return Lanai::SUBB_F_I_LO;
272 case Lanai::SUBB_R:
273 return Lanai::SUBB_F_R;
274 case Lanai::XOR_I_HI:
275 return Lanai::XOR_F_I_HI;
276 case Lanai::XOR_I_LO:
277 return Lanai::XOR_F_I_LO;
278 case Lanai::XOR_R:
279 return Lanai::XOR_F_R;
281 return Lanai::NOP;
313 if (CmpInstr.getOpcode() == Lanai::SFSUB_F_RI_LO)
325 if (Instr.modifiesRegister(Lanai::SR, TRI) ||
326 Instr.readsRegister(Lanai::SR, TRI))
350 if (flagSettingOpcodeVariant(MI->getOpcode()) != Lanai::NOP) {
362 if (MO.isRegMask() && MO.clobbersPhysReg(Lanai::SR)) {
366 if (!MO.isReg() || MO.getReg() != Lanai::SR)
426 if ((*SI)->isLiveIn(Lanai::SR))
432 MI->addRegisterDefined(Lanai::SR);
444 assert(MI.getOpcode() == Lanai::SELECT && "unknown select instruction");
499 assert(MI.getOpcode() == Lanai::SELECT && "unknown select instruction");
593 if (Instruction->getOpcode() == Lanai::BT) {
622 if (Opcode != Lanai::BRCC)
652 "Lanai branch conditions should have one component.");
674 BuildMI(&MBB, DL, get(Lanai::BT)).addMBB(TrueBlock);
680 "Lanai branch conditions should have one component.");
682 BuildMI(&MBB, DL, get(Lanai::BRCC)).addMBB(TrueBlock).addImm(ConditionalCode);
689 BuildMI(&MBB, DL, get(Lanai::BT)).addMBB(FalseBlock);
701 if (Instruction->getOpcode() != Lanai::BT &&
702 Instruction->getOpcode() != Lanai::BRCC) {
717 if (MI.getOpcode() == Lanai::LDW_RI)
728 if (MI.getOpcode() == Lanai::LDW_RI) {
741 if (MI.getOpcode() == Lanai::SW_RI)
764 case Lanai::LDW_RI:
765 case Lanai::LDW_RR:
766 case Lanai::SW_RR:
767 case Lanai::SW_RI:
770 case Lanai::LDHs_RI:
771 case Lanai::LDHz_RI:
772 case Lanai::STH_RI:
775 case Lanai::LDBs_RI:
776 case Lanai::LDBz_RI:
777 case Lanai::STB_RI:
793 case Lanai::LDW_RI:
794 case Lanai::LDW_RR:
795 case Lanai::SW_RR:
796 case Lanai::SW_RI:
797 case Lanai::LDHs_RI:
798 case Lanai::LDHz_RI:
799 case Lanai::STH_RI:
800 case Lanai::LDBs_RI:
801 case Lanai::LDBz_RI: