64 Commits (eae6e21ee5c434c5ed4837f70dbe5f0013b33712)

Author SHA1 Message Date
apmoskevitz d89f85087e focus on CS8603, return null from method 10 months ago
apmoskevitz 30421e7309 added notnullwhen annotations 10 months ago
apmoskevitz ef8e709ecc applied fixer for drect assignment from null 10 months ago
Siegfried Pammer 2e7991eee3 TransformDisplayClassUsage: Fix #3233 by ignoring nullability annotations, when trying to find a variable to reuse/propagate. 1 year 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