Lines Matching refs:BD

75   BugDriver &BD;  member in llvm::ReducePassList
78 ReducePassList(BugDriver &bd) : BD(bd) {} in ReducePassList()
96 if (BD.runPasses(BD.getProgram(), Prefix, PrefixOutput)) in doTest()
99 OrigProgram = std::move(BD.Program); in doTest()
101 BD.Program = parseInputFile(PrefixOutput, BD.getContext()); in doTest()
102 if (BD.Program == nullptr) { in doTest()
103 errs() << BD.getToolName() << ": Error reading bitcode file '" in doTest()
113 if (BD.runPasses(BD.getProgram(), Suffix)) in doTest()
118 BD.Program = std::move(OrigProgram); in doTest()
129 BugDriver &BD; member in __anon627d05070211::ReduceCrashingGlobalInitializers
134 : BD(bd), TestFn(testFn) {} in ReduceCrashingGlobalInitializers()
153 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestGlobalVariables()
178 if (TestFn(BD, M.get())) { in TestGlobalVariables()
179 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestGlobalVariables()
196 BugDriver &BD; member in __anon627d05070311::ReduceCrashingFunctions
201 : BD(bd), TestFn(testFn) {} in ReduceCrashingFunctions()
242 if (KeepMain && !is_contained(Funcs, BD.getProgram().getFunction("main"))) in TestFuncs()
247 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestFuncs()
310 if (TestFn(BD, M.get())) { in TestFuncs()
311 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestFuncs()
327 BugDriver &BD; member in __anon627d05070411::ReduceCrashingFunctionAttributes
334 : BD(bd), FnName(FnName), TestFn(testFn) {} in ReduceCrashingFunctionAttributes()
352 std::unique_ptr<Module> M = CloneModule(BD.getProgram()); in TestFuncAttrs()
361 NewAttrs = NewAttrs.addFnAttributes(BD.getContext(), AB); in TestFuncAttrs()
372 if (TestFn(BD, M.get())) { in TestFuncAttrs()
373 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestFuncAttrs()
431 BugDriver &BD; member in __anon627d05070511::ReduceCrashingBlocks
435 ReduceCrashingBlocks(BugDriver &BD, BugTester testFn) in ReduceCrashingBlocks() argument
436 : BD(BD), TestFn(testFn) {} in ReduceCrashingBlocks()
454 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestBlocks()
515 std::unique_ptr<Module> New = BD.runPassesOn(M.get(), Passes); in TestBlocks()
523 if (TestFn(BD, M.get())) { in TestBlocks()
524 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestBlocks()
529 const ValueSymbolTable &GST = BD.getProgram().getValueSymbolTable(); in TestBlocks()
549 BugDriver &BD; member in __anon627d05070611::ReduceCrashingConditionals
555 : BD(bd), TestFn(testFn), Direction(Direction) {} in ReduceCrashingConditionals()
574 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestBlocks()
623 std::unique_ptr<Module> New = BD.runPassesOn(M.get(), Passes); in TestBlocks()
631 if (TestFn(BD, M.get())) { in TestBlocks()
632 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestBlocks()
637 const ValueSymbolTable &GST = BD.getProgram().getValueSymbolTable(); in TestBlocks()
655 BugDriver &BD; member in __anon627d05070711::ReduceSimplifyCFG
661 : BD(bd), TestFn(testFn), TTI(bd.getProgram().getDataLayout()) {} in ReduceSimplifyCFG()
679 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestBlocks()
716 std::unique_ptr<Module> New = BD.runPassesOn(M.get(), Passes); in TestBlocks()
724 if (TestFn(BD, M.get())) { in TestBlocks()
725 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestBlocks()
730 const ValueSymbolTable &GST = BD.getProgram().getValueSymbolTable(); in TestBlocks()
748 BugDriver &BD; member in __anon627d05070811::ReduceCrashingInstructions
753 : BD(bd), TestFn(testFn) {} in ReduceCrashingInstructions()
772 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestInsts()
805 if (TestFn(BD, M.get())) { in TestInsts()
806 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestInsts()
824 BugDriver &BD; member in __anon627d05070911::ReduceCrashingMetadata
829 : BD(bd), TestFn(testFn) {} in ReduceCrashingMetadata()
847 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestInsts()
877 if (TestFn(BD, M.get())) { in TestInsts()
878 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestInsts()
895 BugDriver &BD; member in __anon627d05070a11::ReduceCrashingNamedMD
900 : BD(bd), TestFn(testFn) {} in ReduceCrashingNamedMD()
918 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestNamedMDs()
952 if (TestFn(BD, M.get())) { in TestNamedMDs()
953 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestNamedMDs()
962 BugDriver &BD; member in __anon627d05070b11::ReduceCrashingNamedMDOps
967 : BD(bd), TestFn(testFn) {} in ReduceCrashingNamedMDOps()
997 std::unique_ptr<Module> M = CloneModule(BD.getProgram(), VMap); in TestNamedMDOps()
1001 for (auto &NamedMD : BD.getProgram().named_metadata()) { in TestNamedMDOps()
1017 if (TestFn(BD, M.get())) { in TestNamedMDOps()
1024 BD.setNewProgram(std::move(M)); // It crashed, keep the trimmed version... in TestNamedMDOps()
1032 static Error ReduceGlobalInitializers(BugDriver &BD, BugTester TestFn) { in ReduceGlobalInitializers() argument
1033 Module &OrigM = BD.getProgram(); in ReduceGlobalInitializers()
1057 if (TestFn(BD, M.get())) { // Still crashes? in ReduceGlobalInitializers()
1058 BD.setNewProgram(std::move(M)); in ReduceGlobalInitializers()
1077 ReduceCrashingGlobalInitializers(BD, TestFn).reduceList(GVs); in ReduceGlobalInitializers()
1082 BD.EmitProgressBitcode(BD.getProgram(), "reduced-global-variables"); in ReduceGlobalInitializers()
1087 static Error ReduceInsts(BugDriver &BD, BugTester TestFn) { in ReduceInsts() argument
1092 for (const Function &F : BD.getProgram()) in ReduceInsts()
1099 ReduceCrashingInstructions(BD, TestFn).reduceList(Insts); in ReduceInsts()
1127 for (Module::const_iterator FI = BD.getProgram().begin(), in ReduceInsts()
1128 E = BD.getProgram().end(); in ReduceInsts()
1148 BD.deleteInstructionFromProgram(&*I, Simplification); in ReduceInsts()
1151 if (TestFn(BD, M.get())) { in ReduceInsts()
1154 BD.setNewProgram(std::move(M)); in ReduceInsts()
1172 for (Function &F : BD.getProgram()) in ReduceInsts()
1177 ReduceCrashingMetadata(BD, TestFn).reduceList(Insts); in ReduceInsts()
1182 BD.EmitProgressBitcode(BD.getProgram(), "reduced-instructions"); in ReduceInsts()
1189 static Error DebugACrash(BugDriver &BD, BugTester TestFn) { in DebugACrash() argument
1193 if (Error E = ReduceGlobalInitializers(BD, TestFn)) in DebugACrash()
1198 for (Function &F : BD.getProgram()) in DebugACrash()
1208 ReduceCrashingFunctions(BD, TestFn).reduceList(Functions); in DebugACrash()
1213 BD.EmitProgressBitcode(BD.getProgram(), "reduced-function"); in DebugACrash()
1219 for (Function &F : BD.getProgram()) in DebugACrash()
1229 Function *Fn = BD.getProgram().getFunction(Name); in DebugACrash()
1238 ReduceCrashingFunctionAttributes(BD, Name, TestFn).reduceList(Attrs); in DebugACrash()
1246 BD.EmitProgressBitcode(BD.getProgram(), "reduced-function-attributes"); in DebugACrash()
1254 for (Function &F : BD.getProgram()) in DebugACrash()
1259 ReduceCrashingConditionals(BD, TestFn, true).reduceList(Blocks); in DebugACrash()
1262 Result = ReduceCrashingConditionals(BD, TestFn, false).reduceList(Blocks); in DebugACrash()
1266 BD.EmitProgressBitcode(BD.getProgram(), "reduced-conditionals"); in DebugACrash()
1276 for (Function &F : BD.getProgram()) in DebugACrash()
1280 Expected<bool> Result = ReduceCrashingBlocks(BD, TestFn).reduceList(Blocks); in DebugACrash()
1284 BD.EmitProgressBitcode(BD.getProgram(), "reduced-blocks"); in DebugACrash()
1289 for (Function &F : BD.getProgram()) in DebugACrash()
1293 Expected<bool> Result = ReduceSimplifyCFG(BD, TestFn).reduceList(Blocks); in DebugACrash()
1297 BD.EmitProgressBitcode(BD.getProgram(), "reduced-simplifycfg"); in DebugACrash()
1303 if (Error E = ReduceInsts(BD, TestFn)) in DebugACrash()
1308 std::unique_ptr<Module> M = CloneModule(BD.getProgram()); in DebugACrash()
1310 if (TestFn(BD, M.get())) in DebugACrash()
1311 BD.setNewProgram(std::move(M)); in DebugACrash()
1328 for (auto &NamedMD : BD.getProgram().named_metadata()) in DebugACrash()
1331 ReduceCrashingNamedMD(BD, TestFn).reduceList(NamedMDNames); in DebugACrash()
1340 for (auto &NamedMD : BD.getProgram().named_metadata()) in DebugACrash()
1344 ReduceCrashingNamedMDOps(BD, TestFn).reduceList(NamedMDOps); in DebugACrash()
1348 BD.EmitProgressBitcode(BD.getProgram(), "reduced-named-md"); in DebugACrash()
1354 std::unique_ptr<Module> M = CloneModule(BD.getProgram()); in DebugACrash()
1355 M = BD.performFinalCleanups(std::move(M), true); in DebugACrash()
1358 if (M && TestFn(BD, M.get())) in DebugACrash()
1359 BD.setNewProgram( in DebugACrash()
1363 BD.EmitProgressBitcode(BD.getProgram(), "reduced-simplified"); in DebugACrash()
1368 static bool TestForOptimizerCrash(const BugDriver &BD, Module *M) { in TestForOptimizerCrash() argument
1369 return BD.runPasses(*M, BD.getPassesToRun()); in TestForOptimizerCrash()
1409 static bool TestForCodeGenCrash(const BugDriver &BD, Module *M) { in TestForCodeGenCrash() argument
1410 if (Error E = BD.compileProgram(*M)) { in TestForCodeGenCrash()