Lines Matching refs:PFS
105 bool initializeRegisterInfo(PerFunctionMIParsingState &PFS,
108 void inferRegisterInfo(const PerFunctionMIParsingState &PFS,
111 bool initializeFrameInfo(PerFunctionMIParsingState &PFS,
114 bool parseCalleeSavedRegister(PerFunctionMIParsingState &PFS,
119 bool parseStackObjectsDebugInfo(PerFunctionMIParsingState &PFS,
123 bool initializeConstantPool(PerFunctionMIParsingState &PFS,
127 bool initializeJumpTableInfo(PerFunctionMIParsingState &PFS,
131 bool parseMDNode(const PerFunctionMIParsingState &PFS, MDNode *&Node,
134 bool parseMBBReference(const PerFunctionMIParsingState &PFS,
295 PerFunctionMIParsingState PFS(MF, SM, IRSlots);
296 if (initializeRegisterInfo(PFS, YamlMF))
301 if (initializeConstantPool(PFS, *ConstantPool, YamlMF))
311 PFS.SM = &BlockSM;
312 if (parseMachineBasicBlockDefinitions(PFS, BlockStr, Error)) {
317 PFS.SM = &SM;
324 if (initializeFrameInfo(PFS, YamlMF))
329 initializeJumpTableInfo(PFS, YamlMF.JumpTableInfo))
338 PFS.SM = &InsnSM;
339 if (parseMachineInstructions(PFS, InsnStr, Error)) {
344 PFS.SM = &SM;
346 inferRegisterInfo(PFS, YamlMF);
354 bool MIRParserImpl::initializeRegisterInfo(PerFunctionMIParsingState &PFS,
356 MachineFunction &MF = PFS.MF;
374 PFS.GenericVRegs.insert(Reg);
388 PFS.GenericVRegs.insert(Reg);
391 if (!PFS.VirtualRegisterSlots.insert(std::make_pair(VReg.ID.Value, Reg))
398 if (parseNamedRegisterReference(PFS, PreferredReg,
408 if (parseNamedRegisterReference(PFS, Reg, LiveIn.Register.Value, Error))
412 if (parseVirtualRegisterReference(PFS, VReg, LiveIn.VirtualRegister.Value,
425 if (parseNamedRegisterReference(PFS, Reg, RegSource.Value, Error))
433 void MIRParserImpl::inferRegisterInfo(const PerFunctionMIParsingState &PFS,
437 MachineRegisterInfo &MRI = PFS.MF.getRegInfo();
438 for (const MachineBasicBlock &MBB : PFS.MF) {
449 bool MIRParserImpl::initializeFrameInfo(PerFunctionMIParsingState &PFS,
451 MachineFunction &MF = PFS.MF;
471 if (parseMBBReference(PFS, MBB, YamlMFI.SavePoint))
477 if (parseMBBReference(PFS, MBB, YamlMFI.RestorePoint))
492 if (!PFS.FixedStackObjectSlots.insert(std::make_pair(Object.ID.Value,
498 if (parseCalleeSavedRegister(PFS, CSIInfo, Object.CalleeSavedRegister,
524 if (!PFS.StackObjectSlots.insert(std::make_pair(Object.ID.Value, ObjectIdx))
529 if (parseCalleeSavedRegister(PFS, CSIInfo, Object.CalleeSavedRegister,
534 if (parseStackObjectsDebugInfo(PFS, Object, ObjectIdx))
546 if (parseStackObjectReference(PFS, FI, YamlMFI.StackProtector.Value, Error))
553 bool MIRParserImpl::parseCalleeSavedRegister(PerFunctionMIParsingState &PFS,
560 if (parseNamedRegisterReference(PFS, Reg, RegisterSource.Value, Error))
581 bool MIRParserImpl::parseStackObjectsDebugInfo(PerFunctionMIParsingState &PFS,
587 if (parseMDNode(PFS, Var, Object.DebugVar) ||
588 parseMDNode(PFS, Expr, Object.DebugExpr) ||
589 parseMDNode(PFS, Loc, Object.DebugLoc))
600 PFS.MF.getMMI().setVariableDbgInfo(DIVar, DIExpr, unsigned(FrameIdx), DILoc);
604 bool MIRParserImpl::parseMDNode(const PerFunctionMIParsingState &PFS,
609 if (llvm::parseMDNode(PFS, Node, Source.Value, Error))
614 bool MIRParserImpl::initializeConstantPool(PerFunctionMIParsingState &PFS,
616 DenseMap<unsigned, unsigned> &ConstantPoolSlots = PFS.ConstantPoolSlots;
617 const MachineFunction &MF = PFS.MF;
639 bool MIRParserImpl::initializeJumpTableInfo(PerFunctionMIParsingState &PFS,
641 MachineJumpTableInfo *JTI = PFS.MF.getOrCreateJumpTableInfo(YamlJTI.Kind);
646 if (parseMBBReference(PFS, MBB, MBBSource.Value))
651 if (!PFS.JumpTableSlots.insert(std::make_pair(Entry.ID.Value, Index))
660 bool MIRParserImpl::parseMBBReference(const PerFunctionMIParsingState &PFS,
664 if (llvm::parseMBBReference(PFS, MBB, Source.Value, Error))