LLVM  14.0.0git
Macros | Functions | Variables
LowerConstantIntrinsics.cpp File Reference
#include "llvm/Transforms/Scalar/LowerConstantIntrinsics.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/DomTreeUpdater.h"
#include "llvm/Analysis/GlobalsModRef.h"
#include "llvm/Analysis/InstructionSimplify.h"
#include "llvm/Analysis/MemoryBuiltins.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/Dominators.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils/Local.h"
Include dependency graph for LowerConstantIntrinsics.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "lower-is-constant-intrinsic"
 

Functions

 STATISTIC (IsConstantIntrinsicsHandled, "Number of 'is.constant' intrinsic calls handled")
 
 STATISTIC (ObjectSizeIntrinsicsHandled, "Number of 'objectsize' intrinsic calls handled")
 
static ValuelowerIsConstantIntrinsic (IntrinsicInst *II)
 
static bool replaceConditionalBranchesOnConstant (Instruction *II, Value *NewValue, DomTreeUpdater *DTU)
 
static bool lowerConstantIntrinsics (Function &F, const TargetLibraryInfo *TLI, DominatorTree *DT)
 
 INITIALIZE_PASS_BEGIN (LowerConstantIntrinsics, "lower-constant-intrinsics", "Lower constant intrinsics", false, false) INITIALIZE_PASS_END(LowerConstantIntrinsics
 

Variables

lower constant intrinsics
 
lower constant Lower constant false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "lower-is-constant-intrinsic"

Definition at line 40 of file LowerConstantIntrinsics.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( LowerConstantIntrinsics  ,
"lower-constant-intrinsics ,
"Lower constant intrinsics ,
false  ,
false   
)

◆ lowerConstantIntrinsics()

static bool lowerConstantIntrinsics ( Function F,
const TargetLibraryInfo TLI,
DominatorTree DT 
)
static

◆ lowerIsConstantIntrinsic()

static Value* lowerIsConstantIntrinsic ( IntrinsicInst II)
static

◆ replaceConditionalBranchesOnConstant()

static bool replaceConditionalBranchesOnConstant ( Instruction II,
Value NewValue,
DomTreeUpdater DTU 
)
static

◆ STATISTIC() [1/2]

STATISTIC ( IsConstantIntrinsicsHandled  ,
"Number of 'is.constant' intrinsic calls handled"   
)

◆ STATISTIC() [2/2]

STATISTIC ( ObjectSizeIntrinsicsHandled  ,
"Number of 'objectsize' intrinsic calls handled"   
)

Variable Documentation

◆ false

lower constant Lower constant false

Definition at line 201 of file LowerConstantIntrinsics.cpp.

◆ intrinsics

lower constant Lower constant intrinsics

Definition at line 200 of file LowerConstantIntrinsics.cpp.