LLVM 20.0.0git
|
#include "MetadataLoader.h"
#include "ValueList.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/BitmaskEnum.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/DenseSet.h"
#include "llvm/ADT/STLFunctionalExtras.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallString.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"
#include "llvm/ADT/ilist_iterator.h"
#include "llvm/BinaryFormat/Dwarf.h"
#include "llvm/Bitcode/BitcodeReader.h"
#include "llvm/Bitcode/LLVMBitCodes.h"
#include "llvm/Bitstream/BitstreamReader.h"
#include "llvm/IR/AutoUpgrade.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DebugInfoMetadata.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/GlobalObject.h"
#include "llvm/IR/GlobalVariable.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/TrackingMDRef.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/type_traits.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <deque>
#include <iterator>
#include <limits>
#include <map>
#include <optional>
#include <string>
#include <tuple>
#include <type_traits>
#include <utility>
#include <vector>
Go to the source code of this file.
Classes | |
class | llvm::MetadataLoader::MetadataLoaderImpl |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
#define | DEBUG_TYPE "bitcode-reader" |
#define | GET_OR_DISTINCT(CLASS, ARGS) (IsDistinct ? CLASS::getDistinct ARGS : CLASS::get ARGS) |
Functions | |
STATISTIC (NumMDStringLoaded, "Number of MDStrings loaded") | |
STATISTIC (NumMDNodeTemporary, "Number of MDNode::Temporary created") | |
STATISTIC (NumMDRecordLoaded, "Number of Metadata records loaded") | |
static Error | error (const Twine &Message) |
static Value * | getValueFwdRef (BitcodeReaderValueList &ValueList, unsigned Idx, Type *Ty, unsigned TyID) |
Variables | |
static cl::opt< bool > | ImportFullTypeDefinitions ("import-full-type-definitions", cl::init(false), cl::Hidden, cl::desc("Import full type definitions for ThinLTO.")) |
Flag whether we need to import full type definitions for ThinLTO. | |
static cl::opt< bool > | DisableLazyLoading ("disable-ondemand-mds-loading", cl::init(false), cl::Hidden, cl::desc("Force disable the lazy-loading on-demand of metadata when " "loading bitcode for importing.")) |
#define DEBUG_TYPE "bitcode-reader" |
Definition at line 69 of file MetadataLoader.cpp.
#define GET_OR_DISTINCT | ( | CLASS, | |
ARGS | |||
) | (IsDistinct ? CLASS::getDistinct ARGS : CLASS::get ARGS) |
Definition at line 399 of file MetadataLoader.cpp.
References llvm::make_error_code().
|
static |
Definition at line 1224 of file MetadataLoader.cpp.
References llvm::UndefValue::get(), llvm::BitcodeReaderValueList::getValueFwdRef(), Idx, and llvm::BitcodeReaderValueList::size().
STATISTIC | ( | NumMDNodeTemporary | , |
"Number of MDNode::Temporary created" | |||
) |
STATISTIC | ( | NumMDRecordLoaded | , |
"Number of Metadata records loaded" | |||
) |
STATISTIC | ( | NumMDStringLoaded | , |
"Number of MDStrings loaded" | |||
) |
|
static |
Referenced by llvm::MetadataLoader::MetadataLoaderImpl::parseMetadata().
|
static |
Flag whether we need to import full type definitions for ThinLTO.
Currently needed for Darwin and LLDB.