reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Target/ARM/AsmParser/ARMAsmParser.cpp
 1042       if(!Memory.OffsetImm || Memory.OffsetRegNum) return false;
 1042       if(!Memory.OffsetImm || Memory.OffsetRegNum) return false;
 1043       if(Memory.BaseRegNum != ARM::PC) return false;
 1044       Val = Memory.OffsetImm->getValue();
 1293     if (Memory.BaseRegNum &&
 1294         !ARMMCRegisterClasses[ARM::GPRRegClassID].contains(Memory.BaseRegNum) &&
 1295         !ARMMCRegisterClasses[ARM::MQPRRegClassID].contains(Memory.BaseRegNum))
 1297     if (Memory.OffsetRegNum &&
 1299             Memory.OffsetRegNum))
 1306     if (Memory.BaseRegNum &&
 1307         !ARMMCRegisterClasses[ARM::GPRRegClassID].contains(Memory.BaseRegNum))
 1309     if (Memory.OffsetRegNum &&
 1310         !ARMMCRegisterClasses[ARM::GPRRegClassID].contains(Memory.OffsetRegNum))
 1386     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1386     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1387      (alignOK || Memory.Alignment == Alignment);
 1394             Memory.BaseRegNum))
 1398     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1398     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1399      (alignOK || Memory.Alignment == Alignment);
 1406             Memory.BaseRegNum))
 1410     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1410     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1411      (alignOK || Memory.Alignment == Alignment);
 1418             Memory.BaseRegNum))
 1422     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1422     return Memory.OffsetRegNum == 0 && Memory.OffsetImm == nullptr &&
 1423      (alignOK || Memory.Alignment == Alignment);
 1426     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1426     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1429     if (Memory.BaseRegNum != ARM::PC)
 1432     if (!Memory.OffsetImm) return true;
 1433     int64_t Val = Memory.OffsetImm->getValue();
 1513     if (!isGPRMem() || Memory.Alignment != 0) return false;
 1515     if (Memory.OffsetRegNum) return true;
 1517     if (!Memory.OffsetImm) return true;
 1518     int64_t Val = Memory.OffsetImm->getValue();
 1538     if (!isGPRMem() || Memory.Alignment != 0) return false;
 1540     if (Memory.ShiftType != ARM_AM::no_shift) return false;
 1542     if (Memory.OffsetRegNum) return true;
 1544     if (!Memory.OffsetImm) return true;
 1545     int64_t Val = Memory.OffsetImm->getValue();
 1572     if (!isGPRMem() || Memory.Alignment != 0) return false;
 1574     if (Memory.OffsetRegNum) return false;
 1576     if (!Memory.OffsetImm) return true;
 1577     int64_t Val = Memory.OffsetImm->getValue();
 1588     if (!isGPRMem() || Memory.Alignment != 0) return false;
 1590     if (Memory.OffsetRegNum) return false;
 1592     if (!Memory.OffsetImm) return true;
 1593     int64_t Val = Memory.OffsetImm->getValue();
 1599     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1599     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1600         Memory.ShiftType != ARM_AM::no_shift || Memory.Alignment != 0)
 1600         Memory.ShiftType != ARM_AM::no_shift || Memory.Alignment != 0)
 1606     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1606     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1607         Memory.ShiftType != ARM_AM::lsl || Memory.ShiftImm != 1 ||
 1607         Memory.ShiftType != ARM_AM::lsl || Memory.ShiftImm != 1 ||
 1608         Memory.Alignment != 0 )
 1614     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.Alignment != 0)
 1614     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.Alignment != 0)
 1620     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1620     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1621         Memory.Alignment != 0 || Memory.BaseRegNum == ARM::PC)
 1621         Memory.Alignment != 0 || Memory.BaseRegNum == ARM::PC)
 1624     if (Memory.ShiftType == ARM_AM::no_shift)
 1626     if (Memory.ShiftType != ARM_AM::lsl || Memory.ShiftImm > 3)
 1626     if (Memory.ShiftType != ARM_AM::lsl || Memory.ShiftImm > 3)
 1634     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1634     if (!isGPRMem() || !Memory.OffsetRegNum || Memory.isNegative ||
 1635         Memory.ShiftType != ARM_AM::no_shift || Memory.Alignment != 0)
 1635         Memory.ShiftType != ARM_AM::no_shift || Memory.Alignment != 0)
 1637     return isARMLowRegister(Memory.BaseRegNum) &&
 1638       (!Memory.OffsetRegNum || isARMLowRegister(Memory.OffsetRegNum));
 1638       (!Memory.OffsetRegNum || isARMLowRegister(Memory.OffsetRegNum));
 1642     if (!isGPRMem() || Memory.OffsetRegNum != 0 ||
 1643         !isARMLowRegister(Memory.BaseRegNum) || Memory.Alignment != 0)
 1643         !isARMLowRegister(Memory.BaseRegNum) || Memory.Alignment != 0)
 1646     if (!Memory.OffsetImm) return true;
 1647     int64_t Val = Memory.OffsetImm->getValue();
 1652     if (!isGPRMem() || Memory.OffsetRegNum != 0 ||
 1653         !isARMLowRegister(Memory.BaseRegNum) || Memory.Alignment != 0)
 1653         !isARMLowRegister(Memory.BaseRegNum) || Memory.Alignment != 0)
 1656     if (!Memory.OffsetImm) return true;
 1657     int64_t Val = Memory.OffsetImm->getValue();
 1662     if (!isGPRMem() || Memory.OffsetRegNum != 0 ||
 1663         !isARMLowRegister(Memory.BaseRegNum) || Memory.Alignment != 0)
 1663         !isARMLowRegister(Memory.BaseRegNum) || Memory.Alignment != 0)
 1666     if (!Memory.OffsetImm) return true;
 1667     int64_t Val = Memory.OffsetImm->getValue();
 1672     if (!isGPRMem() || Memory.OffsetRegNum != 0 ||
 1673         Memory.BaseRegNum != ARM::SP || Memory.Alignment != 0)
 1673         Memory.BaseRegNum != ARM::SP || Memory.Alignment != 0)
 1676     if (!Memory.OffsetImm) return true;
 1677     int64_t Val = Memory.OffsetImm->getValue();
 1687     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1687     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1690     if (!Memory.OffsetImm) return true;
 1691     int64_t Val = Memory.OffsetImm->getValue();
 1702     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0 ||
 1702     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0 ||
 1704             Memory.BaseRegNum))
 1707     if (!Memory.OffsetImm) return true;
 1708     int64_t Val = Memory.OffsetImm->getValue();
 1713     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1713     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1716     if (!Memory.OffsetImm) return true;
 1717     int64_t Val = Memory.OffsetImm->getValue();
 1722     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1722     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1725     if (Memory.BaseRegNum == ARM::PC) return false;
 1727     if (!Memory.OffsetImm) return true;
 1728     int64_t Val = Memory.OffsetImm->getValue();
 1735     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0 ||
 1735     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0 ||
 1736         !ARMMCRegisterClasses[RegClassID].contains(Memory.BaseRegNum))
 1742     if (!Memory.OffsetImm) return true;
 1743     int64_t Val = Memory.OffsetImm->getValue();
 1762     if (!isMVEMem() || Memory.OffsetImm != 0 || Memory.Alignment != 0)
 1762     if (!isMVEMem() || Memory.OffsetImm != 0 || Memory.Alignment != 0)
 1766             Memory.BaseRegNum))
 1769             Memory.OffsetRegNum))
 1772     if (shift == 0 && Memory.ShiftType != ARM_AM::no_shift)
 1776         (Memory.ShiftType != ARM_AM::uxtw || Memory.ShiftImm != shift))
 1776         (Memory.ShiftType != ARM_AM::uxtw || Memory.ShiftImm != shift))
 1783     if (!isMVEMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1783     if (!isMVEMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1787             Memory.BaseRegNum))
 1790     if(!Memory.OffsetImm) return true;
 1793     int64_t Val = Memory.OffsetImm->getValue();
 1807     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1807     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1810     if (!Memory.OffsetImm) return true;
 1811     int64_t Val = Memory.OffsetImm->getValue();
 1816     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1816     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1819     if (Memory.BaseRegNum == ARM::PC) return false;
 1821     if (!Memory.OffsetImm) return false;
 1822     int64_t Val = Memory.OffsetImm->getValue();
 1828     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1828     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1831     if (!Memory.OffsetImm) return true;
 1832     int64_t Val = Memory.OffsetImm->getValue();
 1844     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1844     if (!isGPRMem() || Memory.OffsetRegNum != 0 || Memory.Alignment != 0)
 1847     if (!Memory.OffsetImm) return true;
 1848     int64_t Val = Memory.OffsetImm->getValue();
 2696     assert(isa<MCConstantExpr>(Memory.OffsetImm) && "Unknown value type!");
 2697     Inst.addOperand(MCOperand::createImm(Memory.OffsetImm->getValue()));
 2717     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2722     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2727     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2732     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2737     int32_t Imm = Memory.OffsetImm->getValue();
 2759     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2760     Inst.addOperand(MCOperand::createImm(Memory.Alignment));
 2809     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2809     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2810     if (!Memory.OffsetRegNum) {
 2819       Val = ARM_AM::getAM2Opc(Memory.isNegative ? ARM_AM::sub : ARM_AM::add,
 2820                               Memory.ShiftImm, Memory.ShiftType);
 2820                               Memory.ShiftImm, Memory.ShiftType);
 2822     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2823     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 2853     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2853     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2854     if (!Memory.OffsetRegNum) {
 2863       Val = ARM_AM::getAM3Opc(Memory.isNegative ? ARM_AM::sub : ARM_AM::add, 0);
 2865     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2866     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 2904     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() / 4 : 0;
 2904     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() / 4 : 0;
 2910     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2926     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() / 2 : 0;
 2926     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() / 2 : 0;
 2932     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2947     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2947     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2948     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2963     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2963     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2964     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2971     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() / 4 : 0;
 2971     int32_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() / 4 : 0;
 2972     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2978     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2978     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2979     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2985     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 2986     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 2999     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 2999     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 3000     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3014     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 3014     int64_t Val = Memory.OffsetImm ? Memory.OffsetImm->getValue() : 0;
 3015     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3029     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3030     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 3035     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3036     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 3042       ARM_AM::getAM2Opc(Memory.isNegative ? ARM_AM::sub : ARM_AM::add,
 3043                         Memory.ShiftImm, Memory.ShiftType);
 3043                         Memory.ShiftImm, Memory.ShiftType);
 3044     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3045     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 3051     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3052     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 3053     Inst.addOperand(MCOperand::createImm(Memory.ShiftImm));
 3058     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3059     Inst.addOperand(MCOperand::createReg(Memory.OffsetRegNum));
 3064     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue() / 4) : 0;
 3064     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue() / 4) : 0;
 3065     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3071     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue() / 2) : 0;
 3071     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue() / 2) : 0;
 3072     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3078     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue()) : 0;
 3078     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue()) : 0;
 3079     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3085     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue() / 4) : 0;
 3085     int64_t Val = Memory.OffsetImm ? (Memory.OffsetImm->getValue() / 4) : 0;
 3086     Inst.addOperand(MCOperand::createReg(Memory.BaseRegNum));
 3630     Op->Memory.BaseRegNum = BaseRegNum;
 3631     Op->Memory.OffsetImm = OffsetImm;
 3632     Op->Memory.OffsetRegNum = OffsetRegNum;
 3633     Op->Memory.ShiftType = ShiftType;
 3634     Op->Memory.ShiftImm = ShiftImm;
 3635     Op->Memory.Alignment = Alignment;
 3636     Op->Memory.isNegative = isNegative;
 3769     if (Memory.BaseRegNum)
 3770       OS << " base:" << RegName(Memory.BaseRegNum);
 3771     if (Memory.OffsetImm)
 3772       OS << " offset-imm:" << *Memory.OffsetImm;
 3773     if (Memory.OffsetRegNum)
 3774       OS << " offset-reg:" << (Memory.isNegative ? "-" : "")
 3775          << RegName(Memory.OffsetRegNum);
 3776     if (Memory.ShiftType != ARM_AM::no_shift) {
 3777       OS << " shift-type:" << ARM_AM::getShiftOpcStr(Memory.ShiftType);
 3778       OS << " shift-imm:" << Memory.ShiftImm;
 3780     if (Memory.Alignment)
 3781       OS << " alignment:" << Memory.Alignment;