Author: Simon Pilgrim Date: 2020-10-26T12:24:18Z New Revision: e4991867fb5ace434640bfacfd28720ad031d33c
URL: https://github.com/llvm/llvm-project/commit/e4991867fb5ace434640bfacfd28720ad031d33c DIFF: https://github.com/llvm/llvm-project/commit/e4991867fb5ace434640bfacfd28720ad031d33c.diff LOG: [clang-fuzzer] CreateAndRunJITFunc - fix use after move static analyzer warning. We were using the unique_ptr M to determine the triple after it had been moved in the EngineBuilder constructor. Added: Modified: clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp Removed: ################################################################################ diff --git a/clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp b/clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp index d57515b1ac13..17ce40b5b1b6 100644 --- a/clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp +++ b/clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp @@ -158,6 +158,8 @@ static void CreateAndRunJITFunc(const std::string &IR, CodeGenOpt::Level OLvl) { ErrorAndExit("Function not found in module"); std::string ErrorMsg; + Triple ModuleTriple(M->getTargetTriple()); + EngineBuilder builder(std::move(M)); builder.setMArch(codegen::getMArch()); builder.setMCPU(codegen::getCPUStr()); @@ -166,8 +168,6 @@ static void CreateAndRunJITFunc(const std::string &IR, CodeGenOpt::Level OLvl) { builder.setEngineKind(EngineKind::JIT); builder.setMCJITMemoryManager(std::make_unique<SectionMemoryManager>()); builder.setOptLevel(OLvl); - - Triple ModuleTriple(M->getTargetTriple()); builder.setTargetOptions( codegen::InitTargetOptionsFromCodeGenFlags(ModuleTriple)); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits