#include "llvm/ADT/Statistic.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/InstrTypes.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/InstIterator.h"
#include "SVF-LLVM/BasicTypes.h"
#include "SVF-LLVM/BreakConstantExpr.h"
#include <iostream>
#include <map>
#include <utility>
Go to the source code of this file.
◆ DEBUG_TYPE
◆ convertExpression()
Definition at line 162 of file BreakConstantExpr.cpp.
163{
164
165
166
167 if (
CE->getOpcode() == Instruction::GetElementPtr)
173}
llvm::Instruction Instruction
llvm::IRBuilder IRBuilder
◆ hasConstantBinaryOrUnaryOp()
Definition at line 112 of file BreakConstantExpr.cpp.
113{
115 {
116 if (Instruction::isBinaryOp(
CE->getOpcode()) || Instruction::isUnaryOp(
CE->getOpcode()))
117 {
119 }
120 else
121 {
123 {
126 }
127 }
128 }
129
130 return nullptr;
131}
static ConstantExpr * hasConstantBinaryOrUnaryOp(Value *V)
llvm::ConstantExpr ConstantExpr
◆ hasConstantExpr()
Definition at line 136 of file BreakConstantExpr.cpp.
137{
139 {
141 }
143 {
145 }
146 else
147 {
148 return nullptr;
149 }
150}
static ConstantExpr * hasConstantGEP(Value *V)
◆ hasConstantGEP()
Definition at line 87 of file BreakConstantExpr.cpp.
88{
90 {
91 if (
CE->getOpcode() == Instruction::GetElementPtr)
92 {
94 }
95 else
96 {
98 {
101 }
102 }
103 }
104
105 return nullptr;
106}
◆ STATISTIC() [1/2]
◆ STATISTIC() [2/2]