Lines Matching refs:MF

63   bool mayUseThunk(const MachineFunction &MF) {  in mayUseThunk()
64 const auto &STI = MF.getSubtarget<X86Subtarget>(); in mayUseThunk()
70 void populateThunk(MachineFunction &MF);
75 bool mayUseThunk(const MachineFunction &MF) { in mayUseThunk()
76 return MF.getSubtarget<X86Subtarget>().useLVIControlFlowIntegrity(); in mayUseThunk()
81 void populateThunk(MachineFunction &MF) { in populateThunk()
82 assert (MF.size() == 1); in populateThunk()
83 MachineBasicBlock *Entry = &MF.front(); in populateThunk()
94 const TargetInstrInfo *TII = MF.getSubtarget<X86Subtarget>().getInstrInfo(); in populateThunk()
95 BuildMI(&MF.front(), DebugLoc(), TII->get(X86::LFENCE)); in populateThunk()
96 BuildMI(&MF.front(), DebugLoc(), TII->get(X86::JMP64r)).addReg(X86::R11); in populateThunk()
97 MF.front().addLiveIn(X86::R11); in populateThunk()
110 bool runOnMachineFunction(MachineFunction &MF) override;
123 static bool runTIs(MachineModuleInfo &MMI, MachineFunction &MF, in runTIs() argument
127 Modified |= std::get<ThunkInserterT>(ThunkInserters).run(MMI, MF)...}; in runTIs()
143 void RetpolineThunkInserter::populateThunk(MachineFunction &MF) { in populateThunk() argument
144 bool Is64Bit = MF.getTarget().getTargetTriple().getArch() == Triple::x86_64; in populateThunk()
147 assert(MF.getName() == "__llvm_retpoline_r11" && in populateThunk()
189 if (MF.getName() == EAXRetpolineName) in populateThunk()
191 else if (MF.getName() == ECXRetpolineName) in populateThunk()
193 else if (MF.getName() == EDXRetpolineName) in populateThunk()
195 else if (MF.getName() == EDIRetpolineName) in populateThunk()
201 const TargetInstrInfo *TII = MF.getSubtarget<X86Subtarget>().getInstrInfo(); in populateThunk()
202 assert (MF.size() == 1); in populateThunk()
203 MachineBasicBlock *Entry = &MF.front(); in populateThunk()
207 MF.CreateMachineBasicBlock(Entry->getBasicBlock()); in populateThunk()
209 MF.CreateMachineBasicBlock(Entry->getBasicBlock()); in populateThunk()
210 MCSymbol *TargetSym = MF.getContext().createTempSymbol(); in populateThunk()
211 MF.push_back(CaptureSpec); in populateThunk()
212 MF.push_back(CallTarget); in populateThunk()
250 CallTarget->back().setPreInstrSymbol(MF, TargetSym); in populateThunk()
265 bool X86IndirectThunks::runOnMachineFunction(MachineFunction &MF) { in runOnMachineFunction() argument
268 return runTIs(MMI, MF, TIs); in runOnMachineFunction()