1328 Commits (51b3cf51c6b3fc8a01880335bb56b3918eefe47a)

Author SHA1 Message Date
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
Siegfried Pammer 0e87dfb9aa Add IInstructionWithMethodOperand for LdFtn and LdVirtFtn 9 years ago
Daniel Grunwald 3faca4372e Fix subtle issues with BitNot operator. 9 years ago
Daniel Grunwald 903d86e4b2 Fix Conv.Kind when overflow checking is enabled. 9 years ago
Daniel Grunwald e1930e9170 Adjust comp.unsigned(ldlen array > ldc.i4 0) transforms to explicit i4->i conversions. 9 years ago
Daniel Grunwald 55d953b889 Remove CompoundAssignmentType from BinaryNumericInstruction: 9 years ago
Siegfried Pammer 128bf41d6c Fix unit test ValueTypeCall 9 years ago
Siegfried Pammer f3f78ebfab Add IInstructionWithFieldOperand 9 years ago
Daniel Grunwald 935f0118d1 First attempt at better cast handling 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 a95cf38ab6 Eliminate GetStackType() for cecil type references; it was incorrect for arrays of enums. 9 years ago
Daniel Grunwald ae318eca02 Make implicit I4->I conversions explicit in ILAst. 9 years ago
Daniel Grunwald c3937c3fab Add ImplicitConversions test and fix some conversions. 9 years ago
Daniel Grunwald 9678c692ad Fix NullReferenceException in DetectPinRegions 9 years ago
Daniel Grunwald 7e50076671 Introduce array.to.pointer instruction. 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 e953379916 Add NRefactory to RoundtripAssembly. 9 years ago
Daniel Grunwald 2730133f5f Combine switch sections that branch to same label. 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 077a39519a ILReader: call Warn() on stack mismatch 9 years ago
Daniel Grunwald a40f0754c1 Add InvalidInstruction to represent invalid IL opcodes in the ILAst instead of crashing. 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
Siegfried Pammer 7aa1d46178 Allow changes to ILVariable.Type as long as StackType stays the same. 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
Siegfried Pammer 61fe3b4412 Add variable ResultType to Ldlen instruction 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 3fc12209b1 Add IsDirty tracking to ILInstruction 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 0969abd8c9 properly handle char[] access and bool ref/out access 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
Daniel Grunwald eb48a3764e Fix various issues that caused conversions to decompile to code with different semantics: 9 years ago
Daniel Grunwald d3de90389e Fix comparisons between signed and unsigned integers. 9 years ago
Daniel Grunwald 184b371f72 Fix 'this' type in generic classes/structs. 9 years ago
Siegfried Pammer f781c0335a replace IsSingleUse with IsSingleDefinition 9 years ago