Lines Matching defs:Module
21 #include "llvm/IR/Module.h"
137 std::unique_ptr<Module> PrefixOutput =
154 std::unique_ptr<Module> OriginalInput =
188 Expected<bool> (*TestFn)(BugDriver &, std::unique_ptr<Module>,
189 std::unique_ptr<Module>);
194 std::unique_ptr<Module>,
195 std::unique_ptr<Module>))
227 static Expected<std::unique_ptr<Module>> testMergedProgram(const BugDriver &BD,
228 const Module &M1,
229 const Module &M2,
245 /// split functions in a Module into two groups: those that are under
247 /// accordingly. Each group of functions becomes a separate Module.
267 std::unique_ptr<Module> Clone = CloneModule(BD.getProgram(), VMap);
268 std::unique_ptr<Module> Orig = BD.swapProgramIn(std::move(Clone));
278 std::unique_ptr<Module> ToNotOptimize = CloneModule(BD.getProgram(), VMap);
279 std::unique_ptr<Module> ToOptimize =
291 static void DisambiguateGlobalSymbols(Module &M) {
292 for (Module::global_iterator I = M.global_begin(), E = M.global_end(); I != E;
296 for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I)
307 Expected<bool> (*TestFn)(BugDriver &, std::unique_ptr<Module>,
308 std::unique_ptr<Module>),
316 std::unique_ptr<Module> ToNotOptimize = CloneModule(BD.getProgram(), VMap);
317 std::unique_ptr<Module> ToOptimize = SplitFunctionsOutOfModule(
319 std::unique_ptr<Module> ToOptimizeLoopExtracted =
335 Expected<std::unique_ptr<Module>> New = testMergedProgram(
343 std::unique_ptr<Module> Old = BD.swapProgramIn(std::move(*New));
370 std::unique_ptr<Module> TOLEBackup =
372 std::unique_ptr<Module> TNOBackup = CloneModule(*ToNotOptimize, VMap);
415 for (Module::iterator I = ToOptimizeLoopExtracted->begin(),
448 Expected<bool> (*TestFn)(BugDriver &, std::unique_ptr<Module>,
449 std::unique_ptr<Module>);
455 std::unique_ptr<Module>,
456 std::unique_ptr<Module>),
504 std::unique_ptr<Module> Clone = CloneModule(BD.getProgram(), VMap);
505 std::unique_ptr<Module> Orig = BD.swapProgramIn(std::move(Clone));
518 std::unique_ptr<Module> ToNotOptimize = CloneModule(BD.getProgram(), VMap);
519 std::unique_ptr<Module> ToOptimize =
524 if (std::unique_ptr<Module> New =
539 Expected<bool> (*TestFn)(BugDriver &, std::unique_ptr<Module>,
540 std::unique_ptr<Module>),
573 std::unique_ptr<Module> ProgClone = CloneModule(BD.getProgram(), VMap);
574 std::unique_ptr<Module> ToExtract =
576 std::unique_ptr<Module> Extracted =
588 for (Module::iterator I = Extracted->begin(), E = Extracted->end(); I != E;
617 Expected<bool> (*TestFn)(BugDriver &, std::unique_ptr<Module>,
618 std::unique_ptr<Module>)) {
624 Module &Prog = BD.getProgram();
701 static Expected<bool> TestOptimizer(BugDriver &BD, std::unique_ptr<Module> Test,
702 std::unique_ptr<Module> Safe) {
706 std::unique_ptr<Module> Optimized =
763 Module *ToNotOptimize = CloneModule(getProgram(), VMap).release();
764 Module *ToOptimize =
781 static std::unique_ptr<Module>
782 CleanupAndPrepareModules(BugDriver &BD, std::unique_ptr<Module> Test,
783 Module *Safe) {
837 for (Module::iterator F = Safe->begin(), E = Safe->end(); F != E; ++F) {
946 std::unique_ptr<Module> Test,
947 std::unique_ptr<Module> Safe) {
1034 std::unique_ptr<Module> ToNotCodeGen = CloneModule(getProgram(), VMap);
1035 std::unique_ptr<Module> ToCodeGen =