retdec
Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | List of all members
retdec::bin2llvmir::ConstantsAnalysis Class Reference

#include <constants.h>

Inheritance diagram for retdec::bin2llvmir::ConstantsAnalysis:
Inheritance graph
[legend]
Collaboration diagram for retdec::bin2llvmir::ConstantsAnalysis:
Collaboration graph
[legend]

Public Member Functions

 ConstantsAnalysis ()
 
virtual bool runOnModule (llvm::Module &m) override
 
bool runOnModuleCustom (llvm::Module &m, Config *c, Abi *a, FileImage *i, DebugFormat *d)
 

Static Public Attributes

static char ID = 0
 

Private Member Functions

bool run ()
 
void checkForGlobalInInstruction (ReachingDefinitionsAnalysis &RDA, llvm::Instruction *inst, llvm::Value *val, bool storeValue=false)
 
void tagFunctionsWithUsedCryptoGlobals ()
 

Private Attributes

llvm::Module * _module = nullptr
 
Config_config = nullptr
 
Abi_abi = nullptr
 
FileImage_image = nullptr
 
DebugFormat_dbgf = nullptr
 
std::unordered_set< llvm::Value * > _toRemove
 

Constructor & Destructor Documentation

◆ ConstantsAnalysis()

retdec::bin2llvmir::ConstantsAnalysis::ConstantsAnalysis ( )

Member Function Documentation

◆ checkForGlobalInInstruction()

void retdec::bin2llvmir::ConstantsAnalysis::checkForGlobalInInstruction ( ReachingDefinitionsAnalysis RDA,
llvm::Instruction *  inst,
llvm::Value *  val,
bool  storeValue = false 
)
private

◆ run()

bool retdec::bin2llvmir::ConstantsAnalysis::run ( )
private

◆ runOnModule()

bool retdec::bin2llvmir::ConstantsAnalysis::runOnModule ( llvm::Module &  m)
overridevirtual

◆ runOnModuleCustom()

bool retdec::bin2llvmir::ConstantsAnalysis::runOnModuleCustom ( llvm::Module &  m,
Config c,
Abi a,
FileImage i,
DebugFormat d 
)

◆ tagFunctionsWithUsedCryptoGlobals()

void retdec::bin2llvmir::ConstantsAnalysis::tagFunctionsWithUsedCryptoGlobals ( )
private

Member Data Documentation

◆ _abi

Abi* retdec::bin2llvmir::ConstantsAnalysis::_abi = nullptr
private

◆ _config

Config* retdec::bin2llvmir::ConstantsAnalysis::_config = nullptr
private

◆ _dbgf

DebugFormat* retdec::bin2llvmir::ConstantsAnalysis::_dbgf = nullptr
private

◆ _image

FileImage* retdec::bin2llvmir::ConstantsAnalysis::_image = nullptr
private

◆ _module

llvm::Module* retdec::bin2llvmir::ConstantsAnalysis::_module = nullptr
private

◆ _toRemove

std::unordered_set<llvm::Value*> retdec::bin2llvmir::ConstantsAnalysis::_toRemove
private

◆ ID

char retdec::bin2llvmir::ConstantsAnalysis::ID = 0
static

The documentation for this class was generated from the following files: