Lines Matching refs:spvtools
215 spvtools::fuzz::RepeatedPassStrategy* repeated_pass_strategy, in ParseFlags()
216 FuzzingTarget* fuzzing_target, spvtools::FuzzerOptions* fuzzer_options, in ParseFlags()
217 spvtools::ValidatorOptions* validator_options) { in ParseFlags()
223 spvtools::fuzz::RepeatedPassStrategy::kLoopedWithRecommendations; in ParseFlags()
229 spvtools::Logf(FuzzDiagnostic, SPV_MSG_INFO, nullptr, {}, "%s\n", in ParseFlags()
243 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
255 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
259 std::string strategy = spvtools::utils::SplitFlagArgs(cur_arg).second; in ParseFlags()
262 spvtools::fuzz::RepeatedPassStrategy::kLoopedWithRecommendations; in ParseFlags()
265 spvtools::fuzz::RepeatedPassStrategy::kRandomWithRecommendations; in ParseFlags()
268 spvtools::fuzz::RepeatedPassStrategy::kSimple; in ParseFlags()
274 spvtools::Error(FuzzDiagnostic, nullptr, {}, ss.str().c_str()); in ParseFlags()
279 std::string target = spvtools::utils::SplitFlagArgs(cur_arg).second; in ParseFlags()
288 spvtools::Error(FuzzDiagnostic, nullptr, {}, ss.str().c_str()); in ParseFlags()
293 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
304 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
307 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
316 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
325 const auto split_flag = spvtools::utils::SplitFlagArgs(cur_arg); in ParseFlags()
344 spvtools::Error(FuzzDiagnostic, nullptr, {}, ss.str().c_str()); in ParseFlags()
359 spvtools::Error(FuzzDiagnostic, nullptr, {}, "No input file specified"); in ParseFlags()
364 spvtools::Error(FuzzDiagnostic, nullptr, {}, "-o required"); in ParseFlags()
374 spvtools::Error(FuzzDiagnostic, nullptr, {}, in ParseFlags()
386 spvtools::Error(FuzzDiagnostic, nullptr, {}, in ParseFlags()
393 spvtools::Error(FuzzDiagnostic, nullptr, {}, in ParseFlags()
401 spvtools::Error( in ParseFlags()
412 spvtools::Error(FuzzDiagnostic, nullptr, {}, in ParseFlags()
423 spvtools::Error( in ParseFlags()
441 spvtools::Error(FuzzDiagnostic, nullptr, {}, in ParseFlags()
450 spvtools::fuzz::protobufs::TransformationSequence* transformations) { in ParseTransformations()
458 spvtools::Error(FuzzDiagnostic, nullptr, {}, in ParseTransformations()
471 const spvtools::fuzz::protobufs::FactSequence& initial_facts, in Replay()
474 spvtools::fuzz::protobufs::TransformationSequence* in Replay()
476 spvtools::fuzz::protobufs::TransformationSequence transformation_sequence; in Replay()
500 spvtools::fuzz::Replayer( in Replay()
501 target_env, spvtools::utils::CLIMessageConsumer, binary_in, in Replay()
508 spvtools::fuzz::Replayer::ReplayerResultStatus::kComplete; in Replay()
515 const spvtools::fuzz::protobufs::FactSequence& initial_facts, in Shrink()
520 spvtools::fuzz::protobufs::TransformationSequence* in Shrink()
522 spvtools::fuzz::protobufs::TransformationSequence transformation_sequence; in Shrink()
537 spvtools::fuzz::Shrinker::InterestingnessFunction interestingness_function = in Shrink()
553 spvtools::fuzz::Shrinker( in Shrink()
554 target_env, spvtools::utils::CLIMessageConsumer, binary_in, in Shrink()
562 return spvtools::fuzz::Shrinker::ShrinkerResultStatus::kComplete == in Shrink()
564 spvtools::fuzz::Shrinker::ShrinkerResultStatus::kStepLimitReached == in Shrink()
572 const spvtools::fuzz::protobufs::FactSequence& initial_facts, in Fuzz()
574 spvtools::fuzz::RepeatedPassStrategy repeated_pass_strategy, in Fuzz()
576 spvtools::fuzz::protobufs::TransformationSequence* in Fuzz()
578 auto message_consumer = spvtools::utils::CLIMessageConsumer; in Fuzz()
580 std::vector<spvtools::fuzz::fuzzerutil::ModuleSupplier> donor_suppliers; in Fuzz()
584 spvtools::Error(FuzzDiagnostic, nullptr, {}, "Error opening donors file"); in Fuzz()
591 target_env]() -> std::unique_ptr<spvtools::opt::IRContext> { in Fuzz()
597 return spvtools::BuildModule(target_env, message_consumer, in Fuzz()
603 std::unique_ptr<spvtools::opt::IRContext> ir_context; in Fuzz()
604 if (!spvtools::fuzz::fuzzerutil::BuildIRContext(target_env, message_consumer, in Fuzz()
607 spvtools::Error(FuzzDiagnostic, nullptr, {}, "Initial binary is invalid"); in Fuzz()
614 auto fuzzer_context = spvtools::MakeUnique<spvtools::fuzz::FuzzerContext>( in Fuzz()
615 spvtools::MakeUnique<spvtools::fuzz::PseudoRandomGenerator>( in Fuzz()
619 spvtools::fuzz::FuzzerContext::GetMinFreshId(ir_context.get()), in Fuzz()
623 spvtools::MakeUnique<spvtools::fuzz::TransformationContext>( in Fuzz()
624 spvtools::MakeUnique<spvtools::fuzz::FactManager>(ir_context.get()), in Fuzz()
629 spvtools::fuzz::Fuzzer fuzzer( in Fuzz()
636 spvtools::fuzz::Fuzzer::Status::kFuzzerPassLedToInvalidModule) { in Fuzz()
637 spvtools::Error(FuzzDiagnostic, nullptr, {}, "Error running fuzzer"); in Fuzz()
659 void DumpShader(spvtools::opt::IRContext* context, const char* filename) { in DumpShader()
668 const spvtools::fuzz::protobufs::TransformationSequence& transformations, in DumpTransformationsBinary()
679 const spvtools::fuzz::protobufs::TransformationSequence& transformations, in DumpTransformationsJson()
703 spvtools::fuzz::RepeatedPassStrategy repeated_pass_strategy; in main()
706 spvtools::FuzzerOptions fuzzer_options; in main()
707 spvtools::ValidatorOptions validator_options; in main()
725 spvtools::fuzz::protobufs::FactSequence initial_facts; in main()
740 spvtools::Error(FuzzDiagnostic, nullptr, {}, "Error reading facts data"); in main()
746 spvtools::fuzz::protobufs::TransformationSequence transformations_applied; in main()
752 if (!spvtools::fuzz::ForceRenderRed( in main()
754 spvtools::utils::CLIMessageConsumer, &binary_out)) { in main()
792 spvtools::Error(FuzzDiagnostic, nullptr, {}, "Error writing out binary"); in main()
809 spvtools::Error(FuzzDiagnostic, nullptr, {}, in main()
820 spvtools::Error(FuzzDiagnostic, nullptr, {}, in main()