Bitcode: Clean up error handling for certain bitcode query functions.
authorPeter Collingbourne <peter@pcc.me.uk>
Fri, 11 Nov 2016 19:50:24 +0000 (19:50 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Fri, 11 Nov 2016 19:50:24 +0000 (19:50 +0000)
commitcd513a41c17a3591e764b1ff986ae501a28cc5f5
tree87db3a383097fc45a617ddc23c42b96e481efddd
parentc0032b717886f4923b682f0f5972ab4ab9c32640
Bitcode: Clean up error handling for certain bitcode query functions.

The functions getBitcodeTargetTriple(), isBitcodeContainingObjCCategory(),
getBitcodeProducerString() and hasGlobalValueSummary() now return errors
via their return value rather than via the diagnostic handler.

To make this work, re-implement these functions using non-member functions
so that they can be used without the LLVMContext required by BitcodeReader.

Differential Revision: https://reviews.llvm.org/D26532

llvm-svn: 286623
12 files changed:
lld/ELF/Driver.cpp
lld/ELF/Driver.h
lld/ELF/InputFiles.cpp
llvm/include/llvm/Bitcode/BitcodeReader.h
llvm/include/llvm/Object/ModuleSummaryIndexObjectFile.h
llvm/lib/Bitcode/Reader/BitcodeReader.cpp
llvm/lib/LTO/LTO.cpp
llvm/lib/LTO/LTOModule.cpp
llvm/lib/LTO/ThinLTOCodeGenerator.cpp
llvm/lib/Object/ModuleSummaryIndexObjectFile.cpp
llvm/tools/llvm-lto/llvm-lto.cpp
llvm/tools/lto/lto.cpp