#include "llvm/IR/PassManager.h"
namespace llvm {
-class DominatorTree;
class Function;
class LoopInfo;
class TargetRegisterClass;
class ConstantFP;
class APFloat;
-class MachineIRBuilder;
// Convenience macros for dealing with vector reduction opcodes.
#define GISEL_VECREDUCE_CASES_ALL \
namespace llvm {
-class BasicBlock;
class Function;
class LLVMTargetMachine;
class MachineFunction;
class FunctionPass;
class MachineFunction;
class MachineFunctionPass;
-class MemoryBuffer;
class ModulePass;
class Pass;
class TargetMachine;
// These two are defined in IntrinsicInst since they're part of the
// IntrinsicInst class hierarchy.
class GCRelocateInst;
-class GCResultInst;
/// Represents a gc.statepoint intrinsic call. This extends directly from
/// CallBase as the IntrinsicInst only supports calls and gc.statepoint is
#include "llvm/MC/MCObjectWriter.h"
namespace llvm {
-class MCAssembler;
-class MCExpr;
class MCInst;
class raw_ostream;
#include "llvm/MC/MCObjectWriter.h"
namespace llvm {
-class MCAssembler;
-class MCExpr;
class MCInst;
class raw_ostream;
namespace llvm {
namespace object {
-class SectionRef;
-
/// Decompressor helps to handle decompression of compressed sections.
class Decompressor {
public:
namespace llvm {
template <typename T> class SmallVectorImpl;
class Error;
-class StringRef;
namespace compression {
namespace zlib {
namespace detail {
class InMemoryDirectory;
-class InMemoryFile;
class InMemoryNode;
struct NewInMemoryNodeInfo {
namespace llvm {
class Triple;
-class FunctionPass;
class ModulePass;
class OptimizationRemarkEmitter;
class Comdat;
#include "llvm/Transforms/Instrumentation/AddressSanitizerOptions.h"
namespace llvm {
-class Function;
-class FunctionPass;
-class GlobalVariable;
-class MDNode;
class Module;
-class ModulePass;
class raw_ostream;
struct AddressSanitizerOptions {
#include "llvm/IR/PassManager.h"
namespace llvm {
-class FunctionPass;
class Module;
class StringRef;
class raw_ostream;
namespace llvm {
class Function;
-class FunctionPass;
class Module;
class StringRef;
class raw_ostream;
namespace llvm {
class Module;
-class ModulePass;
/// This is the ModuleSanitizerCoverage pass used in the new pass manager. The
/// pass instruments functions for coverage, adds initialization calls to the
namespace llvm {
class Function;
-class FunctionPass;
class Module;
/// A function pass for tsan instrumentation.
namespace llvm {
-class Constant;
class Error;
class Type;
class Value;
class MachineLoopInfo;
class MachineOptimizationRemarkEmitter;
class MachineOptimizationRemarkMissed;
-class SlotIndex;
class SlotIndexes;
class TargetInstrInfo;
class VirtRegMap;
using namespace llvm;
using namespace dwarf;
-namespace llvm {
-class DwarfContext;
-}
-
using FileLineInfoKind = DILineInfoSpecifier::FileLineInfoKind;
namespace {
namespace llvm {
class CallGraph;
-class CallGraphSCC;
-class PassRegistry;
namespace coro {
namespace llvm {
-class MachineFunction;
-
struct Chunk {
int Begin;
int End;