339 Commits (1de895524f93a183f67ae3ab589a70bc0c01eea1)

Author SHA1 Message Date
Siegfried Pammer 8da8a7f0c9 HighLevelLoopTransform: implement detection of for and do-while 8 years ago
Siegfried Pammer af6274c5ae HighLevelLoopTransform: Add support for while (condition) loops 8 years ago
Daniel Grunwald 7af15d27cd Fix #905: improve exit point detection for foreach loops. 8 years ago
Siegfried Pammer 349183544a Rename BlockType to BlockKind 8 years ago
Daniel Grunwald 6d8d37f8fc Add ValueTypeCall foreach testcase. 8 years ago
Siegfried Pammer a9fd937099 Fix bug in TransformArrayInitializers.HandleJaggedArrayInitializer 8 years ago
Siegfried Pammer d2f2a13982 Add RemoveDeadCode option 8 years ago
Daniel Grunwald a82430fc78 Add missing safety checks to inline assignment transforms. 8 years ago
Daniel Grunwald 11631d6cf0 Remove redundant code from TransformAssignment. 8 years ago
Daniel Grunwald 7847a69d69 Fix compound assignment and post-increment. 8 years ago
Daniel Grunwald 4c5f0b7e9c Convert TransformAssignment into a statement transform and add support for inline property assignments. 8 years ago
Siegfried Pammer 8135157e95 Fix #951: Incorrect decompilation of anonymous delegate 8 years ago
Daniel Grunwald 40a4f08a8d Add support for compound assignment of short integers. 8 years ago
Daniel Grunwald 248a9ad76f Fix #954: don't use invalid compound assignments on enums 8 years ago
Daniel Grunwald b0bf6326ad Allow inline assignments to short integers when we can tell that there's no truncation. 8 years ago
Daniel Grunwald c7e60a9b3c Avoid using inline assignments if they truncate the input value. 8 years ago
Daniel Grunwald 385005b2e5 More strictly test the inline assignment pattern. 8 years ago
Siegfried Pammer 4afb7230f1 GenerateForeachVariableName: Use root ILFunction and descendants as context for variable naming in GenerateForeachVariableName; Fixes #957: Invalid foreach naming 8 years ago
Daniel Grunwald f4682fd75a AssignVariableNames.GetNameFromInstruction: also handle LdFlda directly 8 years ago
Siegfried Pammer aa87169331 Clean up RemoveDeadVariableInit 8 years ago
Siegfried Pammer 9e2f98cb8d Improve RemoveDeadVariableInit and CopyPropagation 8 years ago
Daniel Grunwald 255fab7bd6 Fix short-circuiting operators when the rhs is a comparison with 0. 8 years ago
Siegfried Pammer 425d1ae697 Fix ArgumentOutOfRangeException in CopyPropagation while decompiling System.Security.Cryptography.CryptoStream.ReadAsyncInternal from mscorlib.v4 8 years ago
Siegfried Pammer 9630acd8b7 SwitchOnNullableTransform: Fix another special case produced by the Roslyn compiler. 8 years ago
Siegfried Pammer 7e9f60533b Use proposedNameForStoresFromNewObj only in case of stack slots. 8 years ago
Siegfried Pammer 461e59bd3f Clean up and documentation 8 years ago
Siegfried Pammer 08dcead162 Fix false positive in struct initializers with default.value init 8 years ago
Siegfried Pammer 60894a02a4 Fix missing ILStackWasEmpty-flag on call after conversion to newobj 8 years ago
Siegfried Pammer a014684918 Fix regression in AssignVariableNames 8 years ago
Siegfried Pammer 11a9d901e2 Fix foreach variable naming in case of parameter in-expression. Add more tests. 8 years ago
Siegfried Pammer 0b6987f195 Fix pretty unit tests. 8 years ago
Siegfried Pammer 381bd42599 Fix bug mentioned in #909 8 years ago
Siegfried Pammer 14b6c599c1 Fix object initializers directly accessing struct members + add initializer pretty tests. 8 years ago
Siegfried Pammer 4ca4d97011 Improve SequencePointBuilder 8 years ago
Siegfried Pammer 2169d44c81 Implement sequence points for using statement. 8 years ago
Siegfried Pammer 5e50294c82 Fix ILRange of ILFunction in DelegateConstruction 8 years ago
Daniel Grunwald 2824906f8f Code cleanup SwitchOnStringTransform. 8 years ago
Siegfried Pammer 1ac631b3f1 SwitchOnStringTransform: fix bugs in ExtractStringValuesFromInitBlock and MatchAddCall 8 years ago
Siegfried Pammer a423e7da9c Expand checks in ExtractStringValuesFromInitBlock and MatchAddCall 8 years ago
Siegfried Pammer e6608832a4 Add documentation to SwitchOnStringTransform 8 years ago
Daniel Grunwald 9fcee831d2 Simplify SimplifyCascadingIfStatements 8 years ago
Siegfried Pammer f988c11229 Refactor SwitchOnStringTransform.Run 8 years ago
Daniel Grunwald 6272c21ece Simplify SwitchOnNullableTransform. 8 years ago
Siegfried Pammer 63b626716f Refactoring and cleanup of SimplifyCascadingIfStatements and other switch transforms. 8 years ago
Daniel Grunwald faa0c8a805 Aggressively inline in the whole catch-when block, not just on top-level. 8 years ago
Siegfried Pammer 9e5d4c10f7 Fix array.Length == 0 in Roslyn. 8 years ago
mohe2015 fc9ee0ff90 Add comments for clarification. 8 years ago
Daniel Grunwald 236c7c28b4 Remove redundant lambda casts. 8 years ago
Siegfried Pammer 67272e58ef SwitchOnStringTransform: Remove extra variables introduced by switch pattern. 8 years ago
Siegfried Pammer d39a21afd7 SimplifyCascadingIfStatements: Remove extra variable declarations before switch, if possible. 8 years ago