• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/ARM/

Lines Matching refs:ARM_AM

235   int Offset = isAM3 ? ARM_AM::getAM3Offset(OffField)
236 : ARM_AM::getAM5Offset(OffField) * 4;
237 ARM_AM::AddrOpc Op = isAM3 ? ARM_AM::getAM3Op(OffField)
238 : ARM_AM::getAM5Op(OffField);
240 if (Op == ARM_AM::sub)
254 static int getLoadStoreMultipleOpcode(unsigned Opcode, ARM_AM::AMSubMode Mode) {
261 case ARM_AM::ia: return ARM::LDMIA;
262 case ARM_AM::da: return ARM::LDMDA;
263 case ARM_AM::db: return ARM::LDMDB;
264 case ARM_AM::ib: return ARM::LDMIB;
270 case ARM_AM::ia: return ARM::STMIA;
271 case ARM_AM::da: return ARM::STMDA;
272 case ARM_AM::db: return ARM::STMDB;
273 case ARM_AM::ib: return ARM::STMIB;
282 case ARM_AM::ia: return ARM::tLDMIA;
290 case ARM_AM::ia: return ARM::tSTMIA_UPD;
297 case ARM_AM::ia: return ARM::t2LDMIA;
298 case ARM_AM::db: return ARM::t2LDMDB;
305 case ARM_AM::ia: return ARM::t2STMIA;
306 case ARM_AM::db: return ARM::t2STMDB;
312 case ARM_AM::ia: return ARM::VLDMSIA;
313 case ARM_AM::db: return 0; // Only VLDMSDB_UPD exists.
319 case ARM_AM::ia: return ARM::VSTMSIA;
320 case ARM_AM::db: return 0; // Only VSTMSDB_UPD exists.
326 case ARM_AM::ia: return ARM::VLDMDIA;
327 case ARM_AM::db: return 0; // Only VLDMDDB_UPD exists.
333 case ARM_AM::ia: return ARM::VSTMDIA;
334 case ARM_AM::db: return 0; // Only VSTMDDB_UPD exists.
339 static ARM_AM::AMSubMode getLoadStoreMultipleSubMode(unsigned Opcode) {
363 return ARM_AM::ia;
369 return ARM_AM::da;
383 return ARM_AM::db;
389 return ARM_AM::ib;
653 ARM_AM::AMSubMode Mode = ARM_AM::ia;
659 Mode = ARM_AM::ib;
661 Mode = ARM_AM::da;
664 Mode = ARM_AM::db;
1119 ARM_AM::AMSubMode Mode) {
1128 case ARM_AM::ia: return ARM::LDMIA_UPD;
1129 case ARM_AM::ib: return ARM::LDMIB_UPD;
1130 case ARM_AM::da: return ARM::LDMDA_UPD;
1131 case ARM_AM::db: return ARM::LDMDB_UPD;
1139 case ARM_AM::ia: return ARM::STMIA_UPD;
1140 case ARM_AM::ib: return ARM::STMIB_UPD;
1141 case ARM_AM::da: return ARM::STMDA_UPD;
1142 case ARM_AM::db: return ARM::STMDB_UPD;
1148 case ARM_AM::ia: return ARM::t2LDMIA_UPD;
1149 case ARM_AM::db: return ARM::t2LDMDB_UPD;
1155 case ARM_AM::ia: return ARM::t2STMIA_UPD;
1156 case ARM_AM::db: return ARM::t2STMDB_UPD;
1161 case ARM_AM::ia: return ARM::VLDMSIA_UPD;
1162 case ARM_AM::db: return ARM::VLDMSDB_UPD;
1167 case ARM_AM::ia: return ARM::VLDMDIA_UPD;
1168 case ARM_AM::db: return ARM::VLDMDDB_UPD;
1173 case ARM_AM::ia: return ARM::VSTMSIA_UPD;
1174 case ARM_AM::db: return ARM::VSTMSDB_UPD;
1179 case ARM_AM::ia: return ARM::VSTMDIA_UPD;
1180 case ARM_AM::db: return ARM::VSTMDDB_UPD;
1292 ARM_AM::AMSubMode Mode = getLoadStoreMultipleSubMode(Opcode);
1293 if (Mode == ARM_AM::ia && Offset == -Bytes) {
1294 Mode = ARM_AM::db;
1295 } else if (Mode == ARM_AM::ib && Offset == -Bytes) {
1296 Mode = ARM_AM::da;
1299 if (((Mode != ARM_AM::ia && Mode != ARM_AM::ib) || Offset != Bytes) &&
1300 ((Mode != ARM_AM::da && Mode != ARM_AM::db) || Offset != -Bytes)) {
1343 ARM_AM::AddrOpc Mode) {
1350 return Mode == ARM_AM::add ? ARM::VLDMSIA_UPD : ARM::VLDMSDB_UPD;
1352 return Mode == ARM_AM::add ? ARM::VLDMDIA_UPD : ARM::VLDMDDB_UPD;
1354 return Mode == ARM_AM::add ? ARM::VSTMSIA_UPD : ARM::VSTMSDB_UPD;
1356 return Mode == ARM_AM::add ? ARM::VSTMDIA_UPD : ARM::VSTMDDB_UPD;
1368 ARM_AM::AddrOpc Mode) {
1375 return Mode == ARM_AM::add ? ARM::VLDMSIA_UPD : ARM::VLDMSDB_UPD;
1377 return Mode == ARM_AM::add ? ARM::VLDMDIA_UPD : ARM::VLDMDDB_UPD;
1379 return Mode == ARM_AM::add ? ARM::VSTMSIA_UPD : ARM::VSTMSDB_UPD;
1381 return Mode == ARM_AM::add ? ARM::VSTMDIA_UPD : ARM::VSTMDDB_UPD;
1441 if (isAM5 && ARM_AM::getAM5Offset(MI->getOperand(2).getImm()) != 0)
1459 NewOpc = getPreIndexedLoadStoreOpcode(Opcode, ARM_AM::add);
1461 NewOpc = getPreIndexedLoadStoreOpcode(Opcode, ARM_AM::sub);
1465 NewOpc = getPostIndexedLoadStoreOpcode(Opcode, ARM_AM::add);
1467 NewOpc = getPostIndexedLoadStoreOpcode(Opcode, ARM_AM::sub);
1473 ARM_AM::AddrOpc AddSub = Offset < 0 ? ARM_AM::sub : ARM_AM::add;
1498 int Imm = ARM_AM::getAM2Opc(AddSub, Bytes, ARM_AM::no_shift);
1522 int Imm = ARM_AM::getAM2Opc(AddSub, Bytes, ARM_AM::no_shift);
2238 ARM_AM::AddrOpc AddSub = ARM_AM::add;
2240 AddSub = ARM_AM::sub;
2246 Offset = ARM_AM::getAM3Opc(AddSub, OffImm);
2289 = getLoadStoreMultipleOpcode(Op->getOpcode(), ARM_AM::ia);
2555 MI->getOpcode(), Offset > 0 ? ARM_AM::add : ARM_AM::sub);
2636 BaseAccess->getOpcode(), IncrementOffset > 0 ? ARM_AM::add : ARM_AM::sub);