89 Commits (846c8613b0c48fdb25a057b6572a65b6f455426d)

Author SHA1 Message Date
Siegfried Pammer d1a514b451 Redesign of UsingInstruction. 8 years ago
Daniel Grunwald d0f1b60a04 Fix type names in ILAst debug output. 8 years ago
Siegfried Pammer dea81a685d Add UsingInstruction to ILAst. 8 years ago
Daniel Grunwald b7320b25e4 [nullables] Lift three-valued logic operators ('&' and '|' on bool?) 8 years ago
Daniel Grunwald 53a050552b Add support for syntax sugar when writing out the ILAst. 8 years ago
Daniel Grunwald 66d1b744c3 Add ILAstWritingOptions parameter to ILInstruction.WriteTo(). 8 years ago
Daniel Grunwald 63d6f4bbca [nullables] Add lifting for operator~. 8 years ago
Daniel Grunwald 919219524b Eliminate the dedicated logic.not instruction, and treat it as syntax sugar similar to logic.and/logic.or. 8 years ago
Daniel Grunwald 21ef967d4d [nullables] Lifting for non-equality comparisons. 8 years ago
Daniel Grunwald 4830b37ab9 [nullables] Add support for '??' operator on nullables. 8 years ago
Siegfried Pammer 4da1addd2b Implement C# 2, C# 4 legacy and Roslyn lock patterns. 8 years ago
Siegfried Pammer 53322a6ba7 Add ExpectedResultType to BlockContainer (default is StackType.Void) 8 years ago
Siegfried Pammer 206cdecf30 Merge Return instruction into Leave. 8 years ago
Daniel Grunwald 7d6122cfaf [async] Decompile await operator. 8 years ago
Daniel Grunwald 40212685b6 [async]: control flow reconstruction 8 years ago
Siegfried Pammer 5007c660ca Add NullCoalescingInstruction 8 years ago
Daniel Grunwald 00564f5fcd Fix detection of do-while and for loops. 8 years ago
Daniel Grunwald 5621101436 Reconstruct try-finally blocks in yield return decompiler 9 years ago
Siegfried Pammer 54a48b520e Add instruction<->variable mapping to ILVariable 9 years ago
Daniel Grunwald fe84ea9730 WIP: yield return decompiler 9 years ago
Siegfried Pammer 0970b95d5f Rename ILVariable.Scope to Function and introduce BlockContainer CaptureScope 9 years ago
Siegfried Pammer fc8825d895 Try to detect while conditions, do-while-loops and for-loops 9 years ago
Siegfried Pammer 840ec04fde Namespace adjustments for Syntax classes 9 years ago
Christoph Wille 1ce8349dd9 Adjust namespaces 9 years ago
Siegfried Pammer 19c819cd95 Remove BinaryComparisonInstruction.Create from T4 template 9 years ago
Daniel Grunwald a6fc52a63f ConditionDetection: move blocks into switch sections 9 years ago
Siegfried Pammer 7689e99e1c Add missing members to IL pattern matching. 9 years ago
Daniel Grunwald 6774b3c3cc Add struct TranslationContext to ExpressionBuilder 9 years ago
Daniel Grunwald 00b017778c Add missing DoMatch call for collection members 9 years ago
Daniel Grunwald 14815abd7c Initial version of IL pattern matching. 9 years ago
Siegfried Pammer 1d92df7723 Add HasTypeOperand to CompoundAssignmentInstruction 9 years ago
Daniel Grunwald 2663416fb6 Throw NotImplementedException when attempting to clone a VariableScope. 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 8766783eb6 Remove ld(s)fld/st(s)fld 9 years ago
Daniel Grunwald 56c179b98e Add DelayExceptions flag to LdElema and LdFlda. 9 years ago
Daniel Grunwald 20aec66815 Initial support for decompiling fixed statements 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 55d953b889 Remove CompoundAssignmentType from BinaryNumericInstruction: 9 years ago
Siegfried Pammer f3f78ebfab Add IInstructionWithFieldOperand 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 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 61fe3b4412 Add variable ResultType to Ldlen instruction 9 years ago
Daniel Grunwald b55775e2cc Add reaching definitions analysis. 9 years ago
Daniel Grunwald c171dbd520 Add class VariableScope. 9 years ago
Daniel Grunwald 8edfe57b85 Fix bug in Clone() impl for collection slots. 9 years ago