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

References

lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
 8196         OpInfo.isMatchingInputConstraint()
 8197             ? ConstraintOperands[OpInfo.getMatchedOperand()]
 8198             : OpInfo;
 8199     GetRegistersForValue(DAG, getCurSDLoc(), OpInfo, RefOpInfo);
 8201     switch (OpInfo.Type) {
 8203       if (OpInfo.ConstraintType == TargetLowering::C_Memory ||
 8204           ((OpInfo.ConstraintType == TargetLowering::C_Immediate ||
 8205             OpInfo.ConstraintType == TargetLowering::C_Other) &&
 8206            OpInfo.isIndirect)) {
 8208             TLI.getInlineAsmMemConstraint(OpInfo.ConstraintCode);
 8217         AsmNodeOperands.push_back(OpInfo.CallOperand);
 8219       } else if (((OpInfo.ConstraintType == TargetLowering::C_Immediate ||
 8220                    OpInfo.ConstraintType == TargetLowering::C_Other) &&
 8221                   !OpInfo.isIndirect) ||
 8222                  OpInfo.ConstraintType == TargetLowering::C_Register ||
 8223                  OpInfo.ConstraintType == TargetLowering::C_RegisterClass) {
 8227         if (OpInfo.AssignedRegs.Regs.empty()) {
 8230                       Twine(OpInfo.ConstraintCode) + "'");
 8236         OpInfo.AssignedRegs.AddInlineAsmOperands(
 8237             OpInfo.isEarlyClobber ? InlineAsm::Kind_RegDefEarlyClobber
 8244       SDValue InOperandVal = OpInfo.CallOperand;
 8246       if (OpInfo.isMatchingInputConstraint()) {
 8249         auto CurOp = findMatchingInlineAsmOperand(OpInfo.getMatchedOperand(),
 8256           if (OpInfo.isIndirect) {
 8286                                            true, OpInfo.getMatchedOperand(), dl,
 8298                                                     OpInfo.getMatchedOperand());
 8306       if ((OpInfo.ConstraintType == TargetLowering::C_Immediate ||
 8307            OpInfo.ConstraintType == TargetLowering::C_Other) &&
 8308           OpInfo.isIndirect)
 8309         OpInfo.ConstraintType = TargetLowering::C_Memory;
 8311       if (OpInfo.ConstraintType == TargetLowering::C_Immediate ||
 8312           OpInfo.ConstraintType == TargetLowering::C_Other) {
 8314         TLI.LowerAsmOperandForConstraint(InOperandVal, OpInfo.ConstraintCode,
 8317           if (OpInfo.ConstraintType == TargetLowering::C_Immediate)
 8320                                  Twine(OpInfo.ConstraintCode) + "'");
 8325                                      Twine(OpInfo.ConstraintCode) + "'");
 8338       if (OpInfo.ConstraintType == TargetLowering::C_Memory) {
 8339         assert(OpInfo.isIndirect && "Operand must be indirect to be a mem!");
 8345             TLI.getInlineAsmMemConstraint(OpInfo.ConstraintCode);
 8359       assert((OpInfo.ConstraintType == TargetLowering::C_RegisterClass ||
 8360               OpInfo.ConstraintType == TargetLowering::C_Register ||
 8361               OpInfo.ConstraintType == TargetLowering::C_Immediate) &&
 8365       if (OpInfo.isIndirect) {
 8369                     Twine(OpInfo.ConstraintCode) + "'");
 8374       if (OpInfo.AssignedRegs.Regs.empty()) {
 8376                                    Twine(OpInfo.ConstraintCode) + "'");
 8382       OpInfo.AssignedRegs.getCopyToRegs(InOperandVal, DAG, dl,
 8385       OpInfo.AssignedRegs.AddInlineAsmOperands(InlineAsm::Kind_RegUse, false, 0,
 8392       if (!OpInfo.AssignedRegs.Regs.empty())
 8393         OpInfo.AssignedRegs.AddInlineAsmOperands(InlineAsm::Kind_Clobber,