77 Commits (03aecf047dcdb55ab7a8009ad37f0c1c77b6a8d0)

Author SHA1 Message Date
Siegfried Pammer 03aecf047d Add VariableScope and rework AssignVariableNames step to support renaming parameters of nested ILFunctions in the future. 3 months ago
Siegfried Pammer ca78d4a14d Use MetadataFile instead of PEFile in TypeSystem. 1 year ago
ElektroKill 341074aa58
Extend VBPretty Async test code 3 years ago
ElektroKill 5d3f9d3a6f
Add support for Visual Basic async await state machine decompilation 3 years ago
Siegfried Pammer 6766ad0c59 #2823: Introduce `IType.GetDefinitionOrUnknown()` to allow better detection of async state-machines involving unknown types. 3 years ago
Daniel Grunwald 503048b314 Prevent the early ILInlining pass from creating `addressof` instructions 3 years ago
Daniel Grunwald 3c847b56a2 Fix decompilation of async streams compiled with Roslyn 4.2 3 years ago
Daniel Grunwald 407ec6be5b Adjust AsyncAwaitDecompiler to Roslyn 3.9.0. 4 years ago
Daniel Grunwald b035ec1960 Fix #2129: be more flexible about the initialization order for the async state machine. 5 years ago
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 5 years ago
Daniel Grunwald 5bd47c171f Don't require a definition for the task builder type, also accept an UnknownType. 5 years ago
Daniel Grunwald 2acc4339df #2058: Mark most transforms as public to help users that use the ILAst directly without decompiling to C#. 5 years ago
Daniel Grunwald d8e837ef47 Fix #1772: Support EnumeratorCancellationAttribute 5 years ago
Daniel Grunwald 2da513eb24 Fix #1988: handle Roslyn 3.6 task creation pattern in async/await decompiler. 5 years ago
Jackson Davis 6ab1f98fa3 Expand the range of sequence points out the closest empty ilstack 5 years ago
Daniel Grunwald 4b1f0b342c Fix #1925: Adjust AsyncAwaitDecompiler to changes in Roslyn 3.5.0-beta2 5 years ago
Daniel Grunwald 1b505b8c6d Adjust async-streams decompiler for dotnet/roslyn#39436 6 years ago
Daniel Grunwald eaecedd8ea Fix #1782: AsyncAwaitDecompiler for methods in struct 6 years ago
Daniel Grunwald fc95f3056b Fix #1788: async/await decompilation fails with custom task type when the builder and/or awaiter is a reference type. 6 years ago
Daniel Grunwald c88bd597df Fix null checks. 6 years ago
Daniel Grunwald 233f33f197 Handle 'yield break;' in async streams 6 years ago
Daniel Grunwald de33e79384 Add tests for 'async IAsyncEnumerable'. 6 years ago
Daniel Grunwald be2731c6e6 Handle `if (disposeMode)` in async streams. 6 years ago
Daniel Grunwald ef699c096b Support parameters in IAsyncEnumerator methods 6 years ago
Daniel Grunwald 67fa24b09f Improve async/await decompilation when reference assemblies are missing 6 years ago
Daniel Grunwald f8ee7c2bf3 Initial support for `async IAsyncEnumerator<T>` methods 6 years ago
Daniel Grunwald 0d3a3bee82 Fix #1703: Support async methods that never return normally. 6 years ago
Siegfried Pammer 4db22c87e1 Implement detection of custom task implementations + tests. 6 years ago
Siegfried Pammer e5d603ced2 Fix #1632: await pattern might use negated IsCompleted check. 6 years ago
Daniel Grunwald 5177c56d88 Reject MoveNext() methods with more than one cachedStateVar. 6 years ago
Daniel Grunwald 3f996ff2c0 Fix #1604: async methods that had no 'await' but were capturing 'this' were not decompiled correctly 6 years ago
Daniel Grunwald beed6b5e24 Remove MarkGeneratedVariables() step in AsyncAwaitDecompiler. 6 years ago
Siegfried Pammer ab55086cd7 Use ILRange API in AsyncAwaitDecompiler. 6 years ago
Siegfried Pammer c1fca21e8a Make ILRange field private - introduce public API for IL range manipulation. 6 years ago
Daniel Grunwald f1c8142ce2 PDB generator now can emit "method stepping information" for async functions. 6 years ago
Siegfried Pammer d9952a7e10 #1388: Fix ArgumentOutOfRangeException in AsyncAwaitDecompiler.AnalyzeAwaitBlock. 6 years ago
Daniel Grunwald 47ca51a769 Clarify the meaning of ILVariable.Index 6 years ago
Siegfried Pammer 00a54a278a Fix #1344: Fix GetCodeMappingInfo for nested async FSMs 7 years ago
Daniel Grunwald deb2ceebd8 Fix #970: 'await' decompilation when the awaiter does not implement ICriticalNotifyCompletion 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
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
Daniel Grunwald ed493c3037 Fix 'await default(SomeStruct)'. 7 years ago
Siegfried Pammer adda97cf84 Add AwaitInFinallyTransform 7 years ago
Siegfried Pammer 9b665b7cbc Add AwaitInCatchTransform 7 years ago
MikeFH c299304034 Check that method is actually the entry point 8 years ago
MikeFH 66d806b2d9 Add support for async main method 8 years ago