64 Commits (d89f85087efbb94595891f6989543eaaf8924cdb)

Author SHA1 Message Date
apmoskevitz d89f85087e focus on CS8603, return null from method 9 months ago
apmoskevitz 30421e7309 added notnullwhen annotations 9 months ago
apmoskevitz ef8e709ecc applied fixer for drect assignment from null 9 months ago
Siegfried Pammer 2e7991eee3 TransformDisplayClassUsage: Fix #3233 by ignoring nullability annotations, when trying to find a variable to reuse/propagate. 11 months ago
Siegfried Pammer ca78d4a14d Use MetadataFile instead of PEFile in TypeSystem. 1 year ago
ElektroKill b110d5c2dc
Implement support for Visual Basic yield return state machines 2 years ago
Siegfried Pammer f801059659 TDCU: make sure that copies of display-class variables are validated as well. 4 years ago
Siegfried Pammer e1ca4db851 Fix #2527: Support skip locals init 4 years ago
Siegfried Pammer 62fc4bc1a3 Fix #1858, Fix #2188: Remove variables that contain copies of display-class variables. 4 years ago
Siegfried Pammer 584d1847df Fix #2405: Assertion fail in TDCU 4 years ago
Siegfried Pammer d92dd153fc #2390: Make sure all unused captured variables are removed even in lambdas. 4 years ago
Siegfried Pammer 3a7c69e5b9 Fix #2192: Add support for VB.NET delegate construction 5 years ago
Siegfried Pammer 2612a06a11 Fix #2174: Some compilers produce display class ctors with unused local variables 5 years ago
Siegfried Pammer 71b54e87a0 Fix #2174: Some compilers produce display class ctors with unused local variables 5 years ago
Siegfried Pammer 5d244efab6 Fix #2149: handle uninitialized fields of display classes as variables with HasInitialValue = true. Might happen in obfuscated code. 5 years ago
Siegfried Pammer c74680df33 Fix #1781: TDCU: Support methods without .locals init 5 years ago
Siegfried Pammer 52263da8df #2129: prevent state-machines from being treated as display classes. 5 years ago
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 5 years ago
Siegfried Pammer e7d49b2305 Fix #2079: Allow variables generated from state-machine fields to be propagated in TDCU. 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
Siegfried Pammer 5da3b87845 Fix #2060: Add support for alternate code patterns in TransformDisplayClassUsage.ValidateConstructor 5 years ago
Daniel Grunwald 80063e3c15 Fix TDCU's version of copy propagation being too aggressive. 5 years ago
Siegfried Pammer fcc910cb4d Cleanup and refactoring after code review 5 years ago
Siegfried Pammer 0b8824ca84 Fix two small bugs in TDCU 5 years ago
Siegfried Pammer 101aba3362 Validate uses of display-class variable copies before removing them 5 years ago
Siegfried Pammer d4fd92bf0f Fix initializer block detection of display structs. 5 years ago
Siegfried Pammer ab336cdc94 Fix build. 5 years ago
Siegfried Pammer d457ef38f4 Make ValidateConstructor safe 5 years ago
Siegfried Pammer f1cbc7c8db Add AggressiveScalarReplacementOfAggregates option 5 years ago
Siegfried Pammer 53c593af0b Fixed all TDCU related tests. 5 years ago
Siegfried Pammer b6259b7dca Fix #1981: Ensure correctness of TDCU 5 years ago
Siegfried Pammer 69ac54fbb6 Fix #1879: Do not remove variables that look like display class variables, but are used in other patterns as well. 5 years ago
Siegfried Pammer 5ee172d4c4 Fix #1900: RemoveDeadVariableInit.ResetHasInitialValueFlag should handle local functions 5 years ago
Siegfried Pammer bef75321fb #1913: Do not destroy control-flow by removing return statements 5 years ago
Siegfried Pammer 73e0f7c3ac Fix #1936: TransformDisplayClassUsage should remove copies of display-class references. 5 years ago
Siegfried Pammer d8a08822b7 Fix #1879: Incorrectly detected display class. 6 years ago
Siegfried Pammer f831e4713f Fix #1867: Captures of copies of this are not properly handled by the decompiler 6 years ago
SilverFox 33f96fd888 Fix tests `LocalFunctions.NestedCapture1` 6 years ago
Siegfried Pammer 9bb2ea872c Fix #1773: Remove copies of parameter values only if the types match exactly. 6 years ago
Siegfried Pammer 413c9eba2c #1759: Follow-up: Handle nested generic arguments as well. 6 years ago
Siegfried Pammer 6330be36b3 Fix #1759: Substitute display-class type parameters with method type parameters in TransformDisplayClassUsage. 6 years ago
Siegfried Pammer b8ee3d4183 Respect decompiler settings in TransformDisplayClassUsage. 6 years ago
Siegfried Pammer 7c8458dfa3 Refactor TransformDisplayClassUsage 6 years ago
Siegfried Pammer 81e702f840 #1638: Make TransformDisplayClassUsage.IsPotentialClosure less aggressive 6 years ago
Siegfried Pammer 0ca5ace524 #1349: Fix assertions triggered by incorrect local function decompilation. 6 years ago
Siegfried Pammer 2ca8c31d8e Fix ArgumentException: ignore duplicate keys after variable splitting in TransformDisplayClassUsage 6 years ago
Siegfried Pammer 7d62a7e032 Reset HasInitialValue flag after TransformDisplayClassUsage. 6 years ago
Siegfried Pammer e5f95143cf TransformDisplayClassUsage: set HasInitialValue = true for newly introduced locals. 6 years ago
Siegfried Pammer f10ab69328 Improve local-function detection to minimize false positives. 6 years ago
Siegfried Pammer a109b77858 Refactor LocalFunctionDecompiler to allow mutually recursive local functions to be decompiled correctly. 6 years ago