retdec
|
An analysis providing use-def chains. More...
#include <use_def_analysis.h>
Public Member Functions | |
ShPtr< UseDefChains > | getUseDefChains (ShPtr< Function > func, ShPtr< DefUseChains > ducs) |
Returns use-def chains for the given function. More... | |
Static Public Member Functions | |
static ShPtr< UseDefAnalysis > | create (ShPtr< Module > module) |
Creates a new analysis. More... | |
Private Member Functions | |
UseDefAnalysis (ShPtr< Module > module) | |
Constructs a new analysis. More... | |
![]() | |
NonCopyable (const NonCopyable &)=delete | |
NonCopyable & | operator= (const NonCopyable &)=delete |
NonCopyable ()=default | |
~NonCopyable ()=default | |
Static Private Member Functions | |
static void | computeUseDefChains (ShPtr< UseDefChains > udcs, ShPtr< DefUseChains > ducs) |
Computes the UD[x, s] set for each variable x that is used in a statement s . More... | |
Private Attributes | |
ShPtr< Module > | module |
Module that is being analyzed. More... | |
An analysis providing use-def chains.
For some basic information about use-def chains, see http://en.wikipedia.org/wiki/Use-define_chain.
Use-def chains are computed from def-use chains.
Use create() to create instances. Instances of this class have reference object semantics.
Constructs a new analysis.
See create() for the description of the parameters.
|
staticprivate |
Computes the UD[x, s]
set for each variable x
that is used in a statement s
.
This function modifies udcs.
|
static |
Creates a new analysis.
[in] | module | Module for which the analysis is created. |
ShPtr< UseDefChains > retdec::llvmir2hll::UseDefAnalysis::getUseDefChains | ( | ShPtr< Function > | func, |
ShPtr< DefUseChains > | ducs | ||
) |
Returns use-def chains for the given function.
[in] | func | Function for which the analysis is computed. |
[in] | ducs | Def-use chains for func. |