Lines Matching refs:TM
225 std::unique_ptr<TargetMachine> TM(TheTarget->createTargetMachine( in createTargetMachine() local
229 assert(TM && "Failed to create target machine"); in createTargetMachine()
232 TM->setLargeDataThreshold(*LargeDataThreshold); in createTargetMachine()
234 return TM; in createTargetMachine()
237 static void runNewPMPasses(const Config &Conf, Module &Mod, TargetMachine *TM, in runNewPMPasses() argument
260 TM->setPGOOption(PGOOpt); in runNewPMPasses()
271 PassBuilder PB(TM, Conf.PTO, PGOOpt, &PIC); in runNewPMPasses()
276 new TargetLibraryInfoImpl(Triple(TM->getTargetTriple()))); in runNewPMPasses()
343 bool lto::opt(const Config &Conf, TargetMachine *TM, unsigned Task, Module &Mod, in opt() argument
365 runNewPMPasses(Conf, Mod, TM, Conf.OptLevel, IsThinLTO, ExportSummary, in opt()
370 static void codegen(const Config &Conf, TargetMachine *TM, in codegen() argument
392 TM->Options.MCOptions.SplitDwarfFile = std::string(DwoFile); in codegen()
394 TM->Options.MCOptions.SplitDwarfFile = Conf.SplitDwarfFile; in codegen()
409 TM->Options.ObjectFilenameForDebug = Stream->ObjectPathName; in codegen()
418 if (TM->addPassesToEmitFile(CodeGenPasses, *Stream->OS, in codegen()
428 static void splitCodeGen(const Config &C, TargetMachine *TM, in splitCodeGen() argument
435 const Target *T = &TM->getTarget(); in splitCodeGen()
461 std::unique_ptr<TargetMachine> TM = in splitCodeGen() local
464 codegen(C, TM.get(), AddStream, ThreadId, *MPartInCtx, in splitCodeGen()
511 std::unique_ptr<TargetMachine> TM = createTargetMachine(C, *TOrErr, Mod); in backend() local
515 if (!opt(C, TM.get(), 0, Mod, /*IsThinLTO=*/false, in backend()
522 codegen(C, TM.get(), AddStream, 0, Mod, CombinedIndex); in backend()
524 splitCodeGen(C, TM.get(), AddStream, ParallelCodeGenParallelismLevel, Mod, in backend()
561 std::unique_ptr<TargetMachine> TM = createTargetMachine(Conf, *TOrErr, Mod); in thinBackend() local
578 codegen(Conf, TM.get(), AddStream, Task, Mod, CombinedIndex); in thinBackend()
586 [&](Module &Mod, TargetMachine *TM, in thinBackend()
588 if (!opt(Conf, TM, Task, Mod, /*IsThinLTO=*/true, in thinBackend()
593 codegen(Conf, TM, AddStream, Task, Mod, CombinedIndex); in thinBackend()
598 return OptimizeAndCodegen(Mod, TM.get(), std::move(DiagnosticOutputFile)); in thinBackend()
603 TM->getTargetTriple().isOSBinFormatELF() && in thinBackend()
604 TM->getRelocationModel() != Reloc::Static && in thinBackend()
668 return OptimizeAndCodegen(Mod, TM.get(), std::move(DiagnosticOutputFile)); in thinBackend()