retdec
Public Types | Public Member Functions | Public Attributes | List of all members
retdec::llvmir2hll::UseDefChains Class Reference

Use-def chains. More...

#include <use_def_analysis.h>

Collaboration diagram for retdec::llvmir2hll::UseDefChains:
Collaboration graph
[legend]

Public Types

using VarStmtPair = std::pair< ShPtr< Variable >, ShPtr< Statement > >
 (variable, statement) pair More...
 
using StmtVarPairSet = std::set< VarStmtPair >
 Set of (variable, statement) pairs. More...
 
using UseDefChain = std::map< VarStmtPair, StmtSet >
 

Public Member Functions

void debugPrint ()
 Emits all the live variables info to standard error. More...
 

Public Attributes

ShPtr< Functionfunc
 Function for which the chains have been computed. More...
 
ShPtr< CFGcfg
 CFG of func. More...
 
UseDefChain ud
 

Detailed Description

Use-def chains.

See the description of UseDefAnalysis for more info.

Member Typedef Documentation

◆ StmtVarPairSet

Set of (variable, statement) pairs.

◆ UseDefChain

Mapping of a pair (variable, statement) to a set of statements (a use-def chain).

◆ VarStmtPair

(variable, statement) pair

Member Function Documentation

◆ debugPrint()

void retdec::llvmir2hll::UseDefChains::debugPrint ( )

Emits all the live variables info to standard error.

Only for debugging purposes.

Member Data Documentation

◆ cfg

ShPtr<CFG> retdec::llvmir2hll::UseDefChains::cfg

CFG of func.

◆ func

ShPtr<Function> retdec::llvmir2hll::UseDefChains::func

Function for which the chains have been computed.

◆ ud

UseDefChain retdec::llvmir2hll::UseDefChains::ud

Use-def chain for each variable x that is used in a statement s:

UD[x, s] = {d | d is a reachable definition of x in s}.

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