58 Commits (343694c5499d2dd68896563bbbfc72604231deef)

Author SHA1 Message Date
Siegfried Pammer c5ff0cafc5 TransformInlineAssignmentStObjOrCall: Make sure no dead store is produced by the transform. 3 years ago
Daniel Grunwald bd9aabeae2 Update to dotnet-format 5.1.225507. 4 years ago
Siegfried Pammer d2fc380e0e Fix #2349: Use proper ExpressionType with DynamicCompoundAssign. 4 years ago
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 5 years ago
Daniel Grunwald 1d684102ac Support compound assignment for native integers. 5 years ago
Daniel Grunwald 93806b46fa Fix compound assignments with type `bool`. 6 years ago
Chicken-Bones 661acdfc08 Transform post-increment on float/double. Fixes #1764 6 years ago
Daniel Grunwald 752f0de978 Further adjustments to transforms now that copy propagation no longer runs. 6 years ago
Daniel Grunwald 97d490a3df Slightly generalize the post-increment transform so that it no longer depends on copy propagation. 6 years ago
Daniel Grunwald 539e3a906d Fix #1552: user-defined and decimal increments 6 years ago
Daniel Grunwald 33c7425fa2 Fix several bugs with compound assignments on indexers. 6 years ago
Daniel Grunwald b32cae412a Eliminate BlockKind.PostfixOperator. 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
Daniel Grunwald a6def4cdf5 Fix incorrect type for numeric.compound.assign when the pointer type is incompatible with the store type. 6 years ago
Siegfried Pammer 00d6c6175a #1049: Check decompiler settings in TransformAssignment.HandleCompoundAssign as well. 6 years ago
Siegfried Pammer 087cb2489d Fix #1049: Unimplemented decompiler settings 6 years ago
Siegfried Pammer c1fca21e8a Make ILRange field private - introduce public API for IL range manipulation. 6 years ago
Siegfried Pammer 667e04462a Fix #1325: Do not perform inline assignment transform on setter calls, that belong to parameterized properties. 7 years ago
Daniel Grunwald 12e74daf48 Handle Comp in InferType(). 7 years ago
Daniel Grunwald ba0a3af3c4 #1195: Fix several issues decompiling SharpSvn.dll (C++/CLI) 7 years ago
Daniel Grunwald 066da1ea16 Fix #1200: assertion in TransformInlineAssignmentLocal when reconstructed stack slot (after async-await transform) has small integer type. 7 years ago
Daniel Grunwald 4580eab7ab Disable ref inline assignments. 7 years ago
Daniel Grunwald 33ef82f75c Fix #1082: Add support for compound assignment with string.Concat(). 7 years ago
Siegfried Pammer c4f41f459f Add support for more dynamic binary operators. 7 years ago
Siegfried Pammer 273a1c24ff Add dynamic compound assignment transforms 7 years ago
Daniel Grunwald f021ec4383 NumericCompoundAssign: implement ILiftableInstruction 7 years ago
Daniel Grunwald 3956fa685d Refactor TransformAssignment to reduce code duplication. 7 years ago
Siegfried Pammer 9ebfbe57dd Add transforms for userdef compound assignment 7 years ago
Daniel Grunwald 25706f2a39 Support logic.and/etc. in IsImplicitTruncation(). 7 years ago
Daniel Grunwald 75a627d40b Don't use compound assignment when the RHS value does not fit into the LHS type. 7 years ago
Daniel Grunwald 0a1921ff67 Fix #1007: post-increment transform incorrect due to variable splitting. 8 years ago
Siegfried Pammer 349183544a Rename BlockType to BlockKind 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
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 ab1598c547 Fix bug in TransformRoslynPostIncDecOperatorOnAddress; 8 years ago
Siegfried Pammer cf8d4936e6 Fix regression in TransformPostIncDecOperatorOnAddress; 8 years ago
Siegfried Pammer 23bf856132 Fix bug in TransformPostIncDecOperatorOnAddress 8 years ago
Daniel Grunwald 39bb6856b7 Fix various bugs with compound assignments. 8 years ago
Daniel Grunwald 61900e33c3 [nullables] Lifted compound assignments 8 years ago
Siegfried Pammer b5e46c3545 Fix #882: Invalid assignment code after decompiling 8 years ago
Daniel Grunwald c81f9f366e Remove LdAddressUsagesTransform. 8 years ago
Daniel Grunwald 735f8e070d Compound assignment doesn't support lifting yet. 8 years ago
Siegfried Pammer bc33fa54e9 Rename BlockType.CompoundOperator to PostfixOperator 8 years ago