80 Commits (ae7dd7c4318dfbd20c2f039f6fd37ab2db3611e4)

Author SHA1 Message Date
Siegfried Pammer d87a9bf149 Add BlockType 9 years ago
Siegfried Pammer ddb6f96976 Fix DelegateConstruction with local -> field store 9 years ago
Siegfried Pammer e921239bda Fix unit test failure 9 years ago
Siegfried Pammer 40aaabe4be Inline all stack variables that hold addresses if used in stobj/ldobj 9 years ago
Siegfried Pammer fc45d47615 Extend CompoundAssignment-transformation to ldelema patterns 9 years ago
Siegfried Pammer 40819d2bfb Try to inline stack variables that are only used in ldobj/stobj and hold a ldelema reference 9 years ago
Siegfried Pammer ae75c57e22 Basic implementation of CompoundAssignmentInstruction 9 years ago
Siegfried Pammer 3a89500e0c Merge binary arithmetic instructions into one class. 9 years ago
Siegfried Pammer 92e8deaf30 Improve TransformInlineAssignment 9 years ago
Siegfried Pammer dde966746c Remove unnecessary Clone() calls in TransformArrayInitializers 9 years ago
Siegfried Pammer cd8c4e03a2 Improve TransformArrayInitializers 9 years ago
Siegfried Pammer c4092ac91e Extend TransformInlineAssignment for fields 9 years ago
Siegfried Pammer a80aaed1c3 Fix TransformArrayInitializers 9 years ago
Daniel Grunwald 07e2493645 Keep copy propagation enabled 9 years ago
Siegfried Pammer 8766783eb6 Remove ld(s)fld/st(s)fld 9 years ago
Daniel Grunwald 9803fd90e3 Actually use the improved code in ILInlining.IsSafeForInlineOver() 9 years ago
Daniel Grunwald 6d9e53bf4f Improve ILInlining.IsSafeForInlineOver() 9 years ago
Daniel Grunwald 449bbe2043 Move transforms to transforms namespace 9 years ago
Siegfried Pammer ee1b26d04d Add TransformInlineAssignment and InlineAssignmentTest 9 years ago
Siegfried Pammer 2715c47f19 Extend copy propagation on all simple instructions. 9 years ago
Siegfried Pammer 2d70721679 Fixed some bugs in TransformArrayInitializers 9 years ago
Siegfried Pammer 22c22a3032 Add detection of jagged arrays to TransformArrayInitializers 9 years ago
Siegfried Pammer ffda608f47 Fixed some bugs in DelegateConstruction (closure display-class reversal is still missing) 9 years ago
Siegfried Pammer e790646244 Detect simple array initializers as well 9 years ago
Siegfried Pammer abada2acdf Move DecompilerSettings from ICSharpCode.Decompiler.CSharp to ICSharpCode.Decompiler; Add Settings to ILTransformContext 9 years ago
Siegfried Pammer 81e8df3f96 Move DelegateConstruction transform to ILAst 9 years ago
Siegfried Pammer ab357e00a6 WIP: DelegateConstruction: implemented basic transformations 9 years ago
Daniel Grunwald e1930e9170 Adjust comp.unsigned(ldlen array > ldc.i4 0) transforms to explicit i4->i conversions. 9 years ago
Siegfried Pammer 128bf41d6c Fix unit test ValueTypeCall 9 years ago
Siegfried Pammer 15d0a405db Properly inline single-use locals in case of ldloca 9 years ago
Siegfried Pammer 8d96a72b3c Add back RemoveDeadVariableInit 9 years ago
Siegfried Pammer 134d4610d6 Convert simple IfInstructions to ConditionalExpression 9 years ago
Daniel Grunwald 275a147224 First attempt at pinned regions. 9 years ago
Daniel Grunwald bb1beedbd4 Reactivate PatternStatementTransform 9 years ago
Daniel Grunwald ec226b0006 Add ILAst folding and remove unused RemoveDeadVariableInit transform. 9 years ago
Daniel Grunwald ffe23f5bd6 Remove 'TransformingVisitor' -- it belonged to the ILAst variant with stack instructions and no longer had any effect. 9 years ago
Daniel Grunwald f3d108c469 Add SplitVariables transforms. 9 years ago
Daniel Grunwald f1021d18af Make comparisons in the ILAst more similar to C# comparisons. 9 years ago
Daniel Grunwald 1aaf7b3dc0 Fix bugs in data flow analysis. 9 years ago
Siegfried Pammer 01c3721c33 Add expression transform for (unsigned)x > 0 -> (unsigned)x != 0 9 years ago
Daniel Grunwald f5e66ff623 Extract reusable DataFlowVisitor from ReachingDefinitions; and add ILVariable.HasInitialValue. 9 years ago
Siegfried Pammer 78d593f3ff fix bug in StObj-ExpressionTransform 9 years ago
Siegfried Pammer e831a2ab0e Add LoopingTransform 9 years ago
Siegfried Pammer 9aea030746 merge NRTypeExtensions and DecompilerTypeSystemUtils into TypeUtils 9 years ago
Siegfried Pammer 849f899926 transform stobj(ldloca(v), value) to stloc(v, value) 9 years ago
Siegfried Pammer ab9083f897 remove doubled check from CopyPropagation 9 years ago
Daniel Grunwald b55775e2cc Add reaching definitions analysis. 9 years ago
Daniel Grunwald c171dbd520 Add class VariableScope. 9 years ago
Siegfried Pammer f781c0335a replace IsSingleUse with IsSingleDefinition 9 years ago
Siegfried Pammer 13bf6fbe9f add simple CopyPropagation transform 9 years ago