C# Класс Reko.Analysis.DataFlowAnalysis

We are keenly interested in discovering the register linkage between procedures, i.e. what registers are used by a called procedure, and what modified registers are used by a calling procedure. Once these registers have been discovered, we can separate the procedures from each other and proceed with the decompilation.
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
AnalyzeProgram ( ) : void
AnalyzeProgram2 ( ) : void

Analyizes the procedures of a program by finding all strongly connected components (SCCs) and processing the SCCs one by one.

BuildExpressionTrees ( ) : void

Processes procedures individually, building complex expression trees out of the simple, close-to-the-machine code generated by the disassembly.

DataFlowAnalysis ( Program program, IImportResolver importResolver, DecompilerEventListener eventListener ) : Reko.Core
DumpProgram ( ) : void
UntangleProcedures ( ) : void

Finds all interprocedural register dependencies (in- and out-parameters) and abstracts them away by rewriting as calls.

Приватные методы

Метод Описание
UntangleProcedureScc ( IList procs ) : void

Описание методов

AnalyzeProgram() публичный Метод

public AnalyzeProgram ( ) : void
Результат void

AnalyzeProgram2() публичный Метод

Analyizes the procedures of a program by finding all strongly connected components (SCCs) and processing the SCCs one by one.
public AnalyzeProgram2 ( ) : void
Результат void

BuildExpressionTrees() публичный Метод

Processes procedures individually, building complex expression trees out of the simple, close-to-the-machine code generated by the disassembly.
public BuildExpressionTrees ( ) : void
Результат void

DataFlowAnalysis() публичный Метод

public DataFlowAnalysis ( Program program, IImportResolver importResolver, DecompilerEventListener eventListener ) : Reko.Core
program Program
importResolver IImportResolver
eventListener DecompilerEventListener
Результат Reko.Core

DumpProgram() публичный Метод

public DumpProgram ( ) : void
Результат void

UntangleProcedures() публичный Метод

Finds all interprocedural register dependencies (in- and out-parameters) and abstracts them away by rewriting as calls.
public UntangleProcedures ( ) : void
Результат void