LLVM 24.0.0git
CodeGenPassBuilder.h File Reference

Interfaces for producing common pass manager configurations. More...

#include "llvm/ADT/FunctionExtras.h"
#include "llvm/ADT/STLForwardCompat.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/CodeGen/MachinePassManager.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Error.h"
#include "llvm/Target/CGPassBuilderOption.h"
#include "llvm/Target/TargetMachine.h"
#include <cassert>
#include <utility>
#include "llvm/Passes/MachinePassRegistry.def"

Go to the source code of this file.

Classes

class  llvm::PassManagerWrapper
class  llvm::CodeGenPassBuilder
 This class provides access to building LLVM's passes. More...

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.

Macros

#define DUMMY_FUNCTION_PASS(NAME, PASS_NAME)
#define DUMMY_MACHINE_MODULE_PASS(NAME, PASS_NAME)
#define DUMMY_MACHINE_FUNCTION_PASS(NAME, PASS_NAME)

Detailed Description

Interfaces for producing common pass manager configurations.

Definition in file CodeGenPassBuilder.h.

Macro Definition Documentation

◆ DUMMY_FUNCTION_PASS

#define DUMMY_FUNCTION_PASS ( NAME,
PASS_NAME )
Value:
struct PASS_NAME : public OptionalPassInfoMixin<PASS_NAME> { \
template <typename... Ts> PASS_NAME(Ts &&...) {} \
PreservedAnalyses run(Function &, FunctionAnalysisManager &) { \
return PreservedAnalyses::all(); \
} \
};
#define PASS_NAME

Definition at line 36 of file CodeGenPassBuilder.h.

◆ DUMMY_MACHINE_FUNCTION_PASS

#define DUMMY_MACHINE_FUNCTION_PASS ( NAME,
PASS_NAME )
Value:
struct PASS_NAME : public OptionalPassInfoMixin<PASS_NAME> { \
template <typename... Ts> PASS_NAME(Ts &&...) {} \
PreservedAnalyses run(MachineFunction &, \
MachineFunctionAnalysisManager &) { \
return PreservedAnalyses::all(); \
} \
};

Definition at line 50 of file CodeGenPassBuilder.h.

◆ DUMMY_MACHINE_MODULE_PASS

#define DUMMY_MACHINE_MODULE_PASS ( NAME,
PASS_NAME )
Value:
struct PASS_NAME : public OptionalPassInfoMixin<PASS_NAME> { \
template <typename... Ts> PASS_NAME(Ts &&...) {} \
PreservedAnalyses run(Module &, ModuleAnalysisManager &) { \
return PreservedAnalyses::all(); \
} \
};
Machine Check Debug Module

Definition at line 43 of file CodeGenPassBuilder.h.