Lines Matching defs:InstInfo

1809     CodeGenInstruction &InstInfo = CDP.getTargetInfo().getInstruction(Operator);
1811 unsigned NumDefsToAdd = InstInfo.Operands.NumDefs;
1814 for (unsigned i = 0; i != InstInfo.Operands.NumDefs; ++i) {
1815 Record *OperandNode = InstInfo.Operands[i].Rec;
1823 if (InstInfo.HasOneImplicitDefWithKnownVT(CDP.getTargetInfo()) !=MVT::Other)
2458 CodeGenInstruction &InstInfo =
2465 unsigned NumResultsToAdd = std::min(InstInfo.Operands.NumDefs,
2472 if (!InstInfo.ImplicitDefs.empty()) {
2478 InstInfo.HasOneImplicitDefWithKnownVT(CDP.getTargetInfo());
2591 if (!InstInfo.Operands.isVariadic && ChildNo != getNumChildren()) {
3506 static bool InferFromPattern(CodeGenInstruction &InstInfo,
3511 // Remember where InstInfo got its flags.
3512 if (InstInfo.hasUndefFlags())
3513 InstInfo.InferredFrom = PatDef;
3516 if (InstInfo.hasSideEffects != PatInfo.hasSideEffects &&
3517 !InstInfo.hasSideEffects_Unset) {
3521 if (!InstInfo.hasSideEffects) {
3524 Twine(InstInfo.hasSideEffects));
3528 if (InstInfo.mayStore != PatInfo.mayStore && !InstInfo.mayStore_Unset) {
3531 Twine(InstInfo.mayStore));
3534 if (InstInfo.mayLoad != PatInfo.mayLoad && !InstInfo.mayLoad_Unset) {
3537 if (!InstInfo.mayLoad) {
3540 Twine(InstInfo.mayLoad));
3545 InstInfo.hasSideEffects |= PatInfo.hasSideEffects;
3546 InstInfo.mayStore |= PatInfo.mayStore;
3547 InstInfo.mayLoad |= PatInfo.mayLoad;
3553 InstInfo.isBitcast |= PatInfo.isBitcast;
3554 InstInfo.hasChain |= PatInfo.hasChain;
3555 InstInfo.hasChain_Inferred = true;
3827 CodeGenInstruction &InstInfo = Target.getInstruction(Instr);
3829 if (InstInfo.Operands.size() != 0) {
3830 for (unsigned j = 0, e = InstInfo.Operands.NumDefs; j < e; ++j)
3831 Results.push_back(InstInfo.Operands[j].Rec);
3834 for (unsigned j = InstInfo.Operands.NumDefs,
3835 e = InstInfo.Operands.size(); j < e; ++j)
3836 Operands.push_back(InstInfo.Operands[j].Rec);
3961 CodeGenInstruction &InstInfo = Target.getInstruction(PatInstrs.front());
3964 if (InstInfo.InferredFrom)
3969 Errors += InferFromPattern(InstInfo, PatInfo, PTM.getSrcRecord());
3978 CodeGenInstruction *InstInfo =
3980 if (InstInfo->InferredFrom)
3984 if (InstInfo->hasSideEffects_Unset)
3985 InstInfo->hasSideEffects = true;
3992 CodeGenInstruction *InstInfo =
3994 if (InstInfo->InferredFrom)
3996 if (InstInfo->hasSideEffects_Unset)
3997 PrintError(InstInfo->TheDef->getLoc(),
3999 if (InstInfo->mayStore_Unset)
4000 PrintError(InstInfo->TheDef->getLoc(),
4002 if (InstInfo->mayLoad_Unset)
4003 PrintError(InstInfo->TheDef->getLoc(),
4024 const CodeGenInstruction &InstInfo = Target.getInstruction(Instr);
4025 NumSideEffects += InstInfo.hasSideEffects;
4026 NumStores += InstInfo.mayStore;
4027 NumLoads += InstInfo.mayLoad;
4064 const CodeGenInstruction &InstInfo = Target.getInstruction(Instr);
4065 if (InstInfo.InferredFrom &&
4066 InstInfo.InferredFrom != InstInfo.TheDef &&
4067 InstInfo.InferredFrom != PTM.getSrcRecord())
4068 PrintError(InstInfo.InferredFrom->getLoc(), "inferred from pattern");