#include "LLVMContextImpl.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/OptBisect.h"
#include "llvm/IR/Type.h"
#include "llvm/Support/ManagedStatic.h"
#include <cassert>
#include <utility>
#include "llvm/IR/Metadata.def"
Go to the source code of this file.
|
| llvm |
| This class represents lattice values for constants.
|
|
◆ HANDLE_MDNODE_LEAF_UNIQUABLE [1/2]
#define HANDLE_MDNODE_LEAF_UNIQUABLE |
( |
|
CLASS | ) |
|
Value:for (
auto *
I : CLASS##s) \
I->dropAllReferences();
◆ HANDLE_MDNODE_LEAF_UNIQUABLE [2/2]
#define HANDLE_MDNODE_LEAF_UNIQUABLE |
( |
|
CLASS | ) |
|
Value:for (CLASS *
I : CLASS##s) \
◆ OptBisector
Singleton instance of the OptBisect class.
This singleton is accessed via the LLVMContext::getOptPassGate() function. It provides a mechanism to disable passes and individual optimizations at compile time based on a command line option (-opt-bisect-limit) in order to perform a bisecting search for optimization-related problems.
Even if multiple LLVMContext objects are created, they will all return the same instance of OptBisect in order to provide a single bisect count. Any code that uses the OptBisect object should be serialized when bisection is enabled in order to enable a consistent bisect count.
Definition at line 242 of file LLVMContextImpl.cpp.