43 Commits (fcc910cb4d900fdf69708a8e572a46557beaea43)

Author SHA1 Message Date
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. 5 years ago
Siegfried Pammer f831e4713f Fix #1867: Captures of copies of this are not properly handled by the decompiler 5 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
Daniel Grunwald 33c7425fa2 Fix several bugs with compound assignments on indexers. 6 years ago
Siegfried Pammer f3f38783df ICSharpCode.Decompiler roundtrip test now completes 6 years ago
Daniel Grunwald f2151972a0 Redesign CompoundAssignmentInstruction to support an 'Address' mode where we don't implicitly turn an LdObj into an StObj, but instead directly operate on an address. 6 years ago
Siegfried Pammer b83cb41f2e Add pretty tests for local functions. 6 years ago
Siegfried Pammer 305b47245e Refactor representation of local functions in ILAst. 6 years ago
Siegfried Pammer 16d6e16da7 Add support for local function references and recursive local functions. 6 years ago
Siegfried Pammer 8d1522f387 Transform display classes used in local functions. 6 years ago
Siegfried Pammer 6d05f36821 Fix #1562: Do not transform display class initialization to object initializer. 6 years ago
Siegfried Pammer b4a59ae4dd Remove obsolete code from DelegateConstruction.cs 6 years ago
Siegfried Pammer 7f8856b10f Fix #1026: Improve support for mcs in TransformDisplayClassUsage 6 years ago
Siegfried Pammer 5a2302089b Refactor TransformDisplayClassUsage into separate transform. 6 years ago