338 Commits (070307bb734978c6b62d992ee4a10aa3b191e21a)

Author SHA1 Message Date
Daniel Grunwald f0e230ae91 Run a second pass of DetectExitPoints to use 'return;' as exit point if no previous transform picked another exit point. 9 years ago
Daniel Grunwald 1001ff5721 Fix 'yield break;' in try-catch blocks. 9 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
Siegfried Pammer a5b67ffc0e Add UsingLocal and ForeachLocal VariableKinds 9 years ago
Daniel Grunwald 38a81d1edf Fix indentation 9 years ago
Daniel Grunwald fe84ea9730 WIP: yield return decompiler 9 years ago
Siegfried Pammer 41bcf920d3 Improved handling of captured variables. 9 years ago
Siegfried Pammer 0970b95d5f Rename ILVariable.Scope to Function and introduce BlockContainer CaptureScope 9 years ago
Daniel Grunwald 6343ab7c15 Improve debug UI 9 years ago
Daniel Grunwald 66dee6c6f9 LoopDetection: find appropriate exit points 9 years ago
Daniel Grunwald e871f7c05a Convert LoopDetection into a block transform. 9 years ago
Daniel Grunwald ed3d4aba9d Run IntroduceExitPoints before loop detection, and let loop detection introduce its own exit points. 9 years ago
Siegfried Pammer fc8825d895 Try to detect while conditions, do-while-loops and for-loops 9 years ago
Daniel Grunwald 5530f7ec2e Distinguish between PreOrderTransforms and PostOrderTransforms in BlockILTransform. 9 years ago
Daniel Grunwald b3590ec292 Update cecil. 9 years ago
Siegfried Pammer 0524b4a353 Remove unused usings in solution; remove dead code; unify namespaces 9 years ago
Siegfried Pammer 840ec04fde Namespace adjustments for Syntax classes 9 years ago
Christoph Wille 1ce8349dd9 Adjust namespaces 9 years ago
Daniel Grunwald 8d2116dea7 Fix casts to type parameters. 9 years ago
Siegfried Pammer 4fa22d6c30 Add ExpressionTransforms and RemoveDeadVariableInit after DetectPinnedRegions; Remove InlineCompilerGeneratedVariables 9 years ago
Siegfried Pammer 4c5f3839a3 fix bug in CachedDelegateInitialization 9 years ago
Daniel Grunwald 85bab79e19 Respect context.Settings.AnonymousMethods in CachedDelegateInitialization. 9 years ago
Siegfried Pammer 4ac1c2d0b0 add CachedDelegateInitialization block transform 9 years ago
Daniel Grunwald 760e02a511 Add step messages to all block transforms. 9 years ago
Siegfried Pammer 94d1d76ec3 More DebugStep UI options 9 years ago
Daniel Grunwald d50695c218 more step groups 9 years ago
Daniel Grunwald fe1b9dcef0 Add steps for transforms. 9 years ago
Daniel Grunwald 51a9786243 Change some transforms to block transforms. 9 years ago
Siegfried Pammer 19c819cd95 Remove BinaryComparisonInstruction.Create from T4 template 9 years ago
Siegfried Pammer b2ef367c77 Added UI for debug steps 9 years ago
Daniel Grunwald 7273fe58fd Add BlockTransform concept and apply a bunch of refactoring essentials suggestions. 9 years ago
Daniel Grunwald dfe70d5366 Improve detection of short-circuiting operators. 9 years ago
Daniel Grunwald dd485b971d Eliminate goto in conditional return in try block. 9 years ago
Daniel Grunwald 5150cdce25 Improve handling of short-circuiting operators. 9 years ago
Daniel Grunwald 15b776faa2 Initial attempt at short-circuiting if conditions 9 years ago
Daniel Grunwald 0fade5cb0f Add single-stepping support to some ILAst transforms. 9 years ago
Daniel Grunwald 267c69cc80 Get rid of custom Mono.Cecil version on newdecompiler branch; use official cecil instead. 9 years ago
Daniel Grunwald 4a13491ff9 Improve switch simplifcation: combine case section with default block where possible 9 years ago
Daniel Grunwald 11bb3060a7 Try a bit harder to find an exitInst for switch-case. 9 years ago
Daniel Grunwald a6fc52a63f ConditionDetection: move blocks into switch sections 9 years ago
Daniel Grunwald 36d61db3a7 Add support for sparse integer switches. 9 years ago
Siegfried Pammer d1026c4646 Fix/Add more pretty tests for compound assignment 9 years ago
Siegfried Pammer ce02331366 Fix bugs in DelegateConstruction 9 years ago
Daniel Grunwald 9dec6c80a7 LoopDetection: use post-dominance to find better loop exit points 9 years ago
Daniel Grunwald 0e118f0977 LoopDetection: in loops without any exit points, exclude the largest possible code block from the loop 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 e6b889ac92 Fix comment 9 years ago
Siegfried Pammer adb8a987d1 Use IL pattern matching in ExpressionTransforms instead of IsSameTarget hack. 9 years ago