176 Commits (667e04462a8825a38625b716c5b82e2a26240376)

Author SHA1 Message Date
Daniel Grunwald b5ab8a4622 Fix #1338: KeyNotFoundException in SwitchDetection.AnalyzeControlFlow() 7 years ago
Daniel Grunwald e041454987 Add pretty tests for "yield return" and fix some minor bugs: 7 years ago
Daniel Grunwald ed631cc7d3 Fix #1307: some of the blocks made unreachable by the yield-return-transform were not deleted 7 years ago
Daniel Grunwald 5d394b7786 Refactor PR #1303 to make the ConvertBranchAfterYieldReturn logic easier to understand 7 years ago
Wenxuan Zhao 3e937cf7cb
Fix delegate in yield return issue for assembly compiled with Mono 7 years ago
Wenxuan Zhao 9228e0102c
Fix yield return for assembly compiled with Mono 7 years ago
Chicken-Bones e9b766d708 Improve persistence of IL offsets through various transforms. 7 years ago
Chicken-Bones bf17423618 Abort SwitchAnalysis on duplicate condition (redundant code) 7 years ago
Daniel Grunwald f4613de2ba Don't match sub.ovf in SwitchAnalysis. 7 years ago
Chicken-Bones 481e05eabb Better shortcircuit detection to avoid single condition switch statements 7 years ago
Chicken-Bones d8244e347b Select outer-loop continue branches as break targets for switches in nested loops 7 years ago
Chicken-Bones 9f21e6a2b2 Increase max values per switch section 7 years ago
Chicken-Bones eed337c12e Remove dead code when unreachable condition blocks are consumed by SwitchDetection 7 years ago
Chicken-Bones d86f4b4132 Prefer simple if statements over switch with single case block 7 years ago
Chicken-Bones 52a279f861 Restore HighLevelLoopTransform pattern match for loop contents within if body 7 years ago
Chicken-Bones 7017d998d0 Improve switch decompilation in loops via early detection of continue blocks. 7 years ago
Chicken-Bones 1a021635cc Fix detection of switch statements with cases containing a single break; 7 years ago
Chicken-Bones cb4fa90545 Add IL ordering based hint to UseCSharpSwitch 7 years ago
Chicken-Bones 62b2ad4f8d Improve UseCSharpSwitch to reduce over-aggressive use of switch producing poor quality code. 7 years ago
Chicken-Bones 9a3914fca9 Handle roslyn generated sub instructions in partitioned C# switch statements 7 years ago
Siegfried Pammer fc717be0d8 Fix typo in YieldReturnDecompiler 7 years ago
Daniel Grunwald 542e088ceb Fix #1185: assertion with unreachable code in loop detection 7 years ago
Daniel Grunwald c16817ab4e Fix #1186: LoopDetection assertion with unreachable code 7 years ago
Daniel Grunwald ba0a3af3c4 #1195: Fix several issues decompiling SharpSvn.dll (C++/CLI) 7 years ago
Chicken-Bones 5ed5ea0e0f Improve block ordering in ConditionDetection using the ILOffsets of Leave instruction arguments 7 years ago
Siegfried Pammer dbe29596de Fix #1210: v4.x: System.InvalidCastException: Specified cast is not valid 7 years ago
Daniel Grunwald 90d866d78a Fix #1193: Performance issues with deeply nested block structures 7 years ago
Daniel Grunwald bafb6d1d49 Fix #1194: empty if statements are decompiled into goto statements 7 years ago
Daniel Grunwald d8c8a75c2e Fix #1154: Decompilation of fixed statement when pointer variable is unused 7 years ago
Daniel Grunwald b396d203bd Merge IDecompilerTypeSystem with ICompilation. 7 years ago
Daniel Grunwald 1f3916d554 Use the resolve methods in MetadataModule, and remove the wrappers in DecompilerTypeSystem. 7 years ago
Daniel Grunwald 107fe5eb1c Eliminate SpecializingDecompilerTypeSystem and use GenericContext instead. 7 years ago
Daniel Grunwald d166101387 Allow splitting variables that have their address taken. 7 years ago
Siegfried Pammer bcfb3742eb Clean up PEFile, move Pdb related types to DebugInfo namespace 7 years ago
Daniel Grunwald 385433aff4 Add MetadataMethod. 7 years ago
Daniel Grunwald 4b96f48d87 Cosmetic changes during review of PR #1176 7 years ago
Chicken-Bones 3fb7c71f8a Improve control flow decompilation in ConditionDetection 7 years ago
Daniel Grunwald 50509c4985 Fix #1140: Fix assertion when finally block unconditionally throws an exception. 7 years ago
Siegfried Pammer 458f448fae Avoid unnecessary allocations of MetadataReader and clean up Dom structs a bit. 7 years ago
Siegfried Pammer 592935537a Migrate AsyncAwaitDecompiler and YieldReturnDecompiler to SRM. 7 years ago
Pent Ploompuu a63e65fae8 Reduced allocations in ILInlining 7 years ago
Siegfried Pammer fa57b9769f Port AsyncAwaitDecompiler.IsCompilerGeneratedMainMethod 7 years ago
Siegfried Pammer 57d59a703e Fix await in finally pattern with using statement. 7 years ago
Siegfried Pammer b9a6df374d Fix #1101: Error decompiling System.Threading.Tasks.Task System.Net.WebSockets.ClientWebSocket::ConnectAsyncCore(System.Uri,System.Threading.CancellationToken) 7 years ago
Daniel Grunwald ed493c3037 Fix 'await default(SomeStruct)'. 7 years ago
Daniel Grunwald 7b8389dca5 Fix #1078: Eliminate redundant variable in fixed statements. 7 years ago
Daniel Grunwald ae45665ff7 Improve pinned region detection to also handle the case where the pinned variable has array type. (#1078) 7 years ago
Siegfried Pammer 1a0052a345 Cache UsingScope during decompiler run. 7 years ago
Siegfried Pammer a06a04d48b #1080: Add ILTransformContext.RequiredNamespacesSuperset 7 years ago
Daniel Grunwald 8a589b2fd2 Add DecompilerSettings constructor that takes a language version. 7 years ago