C# Class Telerik.JustDecompiler.Decompiler.DefineUseAnalysis.StackUsageAnalysis

Performs the stack analysis. This class is responsible for the generation of PhiVariables.
Inheritance: IDecompilationStep
Exibir arquivo Open project: codemerx/CodemerxDecompile

Public Methods

Method Description
Process ( DecompilationContext context, BlockStatement body ) : BlockStatement
StackUsageAnalysis ( ) : Mono.Cecil

Private Methods

Method Description
AnalyzeStackUsage ( ) : void
ComputeStackUsage ( InstructionBlock block ) : void
GenerateStackData ( ) : void
GenerateStackVariables ( ) : void
GetDefineUseInfo ( Telerik.JustDecompiler.Decompiler.DefineUseAnalysis.StackUsageData stackData, VariableDefinition varDef ) : Telerik.JustDecompiler.Decompiler.DefineUseAnalysis.StackVariableDefineUseInfo
GetPopDelta ( uint stackHeight, Instruction instruction ) : uint
GetPushDelta ( Instruction instruction ) : uint
IsVoid ( TypeReference type ) : bool
RecursiveDfs ( InstructionBlock currentBlock, Array initialStack ) : void
UpdateCurrentStackVariables ( InstructionBlock parent, InstructionBlock successor ) : void

Method Details

Process() public method

public Process ( DecompilationContext context, BlockStatement body ) : BlockStatement
context DecompilationContext
body BlockStatement
return BlockStatement

StackUsageAnalysis() public method

public StackUsageAnalysis ( ) : Mono.Cecil
return Mono.Cecil