595 Commits (3c97f946236ff5bb2791bc4171eed5c14a028a6f)

Author SHA1 Message Date
Siegfried Pammer 203311dd0b Do not crash in BlockContainer.CheckInvariant 8 years ago
Siegfried Pammer 69c764722c Fix #989: Local variable naming conflict 8 years ago
Siegfried Pammer 9b160c13e7 Fix #982: ILSpy should ignore the parameter name of property setter and always use "value" instead in C# 8 years ago
Daniel Grunwald 0b442e82bb Ensure stack types for call arguments are correct. 8 years ago
Daniel Grunwald 568b3e2d91 Fix DetectPinnedRegions introducing stack type inconsistencies. 8 years ago
Siegfried Pammer a2376d6f3e Fix performance bug in TransformExpressionTrees 8 years ago
Siegfried Pammer 2b669debdb Extend expression tree tests 8 years ago
Siegfried Pammer 372e9e1a97 Fix handling of operators in Roslyn 8 years ago
Siegfried Pammer 3f24807fbf Fix bug in AssignVariableNames 8 years ago
Siegfried Pammer 25eecb90e1 Rename ExpressionTreeType to DelegateType and use ILFunction.DelegateType instead of the NewObj(LdNull, ILFunction) pattern in DelegateConstruction and ExpressionTrees 8 years ago
Siegfried Pammer 9d0ff70f08 Fix some unnecessary casts, adjust test cases 8 years ago
Siegfried Pammer e3606374a4 Refactor TransformExpressionTrees to use an (ILInstruction, IType) pair as result of every Convert call. 8 years ago
Siegfried Pammer ad68204b04 Fix bugs in Expression.Quote/Expression.Invoke handling 8 years ago
Siegfried Pammer 049cff2324 Add unit tests, directly use ILFunction instead of NewObj(ILFunction) for expression trees. 8 years ago
Siegfried Pammer d3a623bd26 Implement MemberInit, Bind 8 years ago
Siegfried Pammer a5e5cf166b Add support for missing expressions: Invoke, Quote, ListInit, NewArrayBounds, NewArrayInit, ExpressionTreeCast 8 years ago
Siegfried Pammer 21dfa43dab Add ExpressionTreeCast instruction 8 years ago
Siegfried Pammer 648e4ec42a First implementation of TransformExpressionTrees 8 years ago
Siegfried Pammer 29a2d3ec34 Refactoring of ILFunction: allow Method and CecilMethod to be null for expression trees. 8 years ago
Daniel Grunwald 9a829a2820 ILReader: handle implicit O->Ref conversions 8 years ago
Siegfried Pammer ed8fc0de8c Fix #968: foreach loop with early return 8 years ago
Siegfried Pammer 69f2609bff Fix #861: Failure to decompile for loop with conditional early return 8 years ago
Siegfried Pammer 37474ae5e9 Fix #447: second part ReturnFromDoWhileInTryFinally 8 years ago
Daniel Grunwald 02db362838 Ensure that StLoc.Value.ResultType == StLoc.Variable.StackType 8 years ago
Siegfried Pammer f8afa6051d Fix another instance of #951: Incorrect decompilation of anonymous delegate 8 years ago
Siegfried Pammer 300c9cc9a9 Do not convert while-true to while-condition loop or do-while loop, if the condition uses a variable that is captured inside the loop. 8 years ago
Siegfried Pammer f91df96281 Improve for loop transform: split conditions 8 years ago
Siegfried Pammer b3f5a8e089 Refactor MatchDoWhileLoop; add documentation 8 years ago
Siegfried Pammer b24b749ec6 Add support for multiple conditions in do-while loops. 8 years ago
Daniel Grunwald d6bc1ca762 #915: Fix LoopDetection.FindExitPoint() incorrectly returning null (=multiple exit points; use heuristic) when there was only a single exit point that wasn't dominated by the loop head. 8 years ago
Siegfried Pammer 4daabf350a Do not convert to for loop if increment variable is a parameter. 8 years ago
Siegfried Pammer bcc574a6c0 Fix aggressive for-loop detection 8 years ago
Daniel Grunwald f155ca4ef6 Fix #938: add support for I4->I stack type adjustments. 8 years ago
Siegfried Pammer 86c3ab8314 Fix unit tests 8 years ago
Daniel Grunwald e6afe4bf98 Fix #915: ensure that loops are nested correctly 8 years ago
Siegfried Pammer b3370506ae Fix small regressions 8 years ago
Siegfried Pammer bfb310b4a3 Remove DetectedLoop 8 years ago
Siegfried Pammer 8da8a7f0c9 HighLevelLoopTransform: implement detection of for and do-while 8 years ago
Siegfried Pammer 372f543d6c Add MoveElementToIndex and MoveElementToEnd methods to InstructionCollection 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 154833b06c Add ContainerKind 8 years ago
Siegfried Pammer 349183544a Rename BlockType to BlockKind 8 years ago
Daniel Grunwald 7f7e6564b3 Fix #948: fix assertion when accessing fixed-size fields where StackType.Ref is expected. 8 years ago
Daniel Grunwald 1528ff329f #447: Don't pick "return;" as exit point if there's another choice. 8 years ago
Daniel Grunwald 6d8d37f8fc Add ValueTypeCall foreach testcase. 8 years ago
Siegfried Pammer a9fd937099 Fix bug in TransformArrayInitializers.HandleJaggedArrayInitializer 8 years ago
Daniel Grunwald adb64514f8 Add some comments to SwitchDetection.UseCSharpSwitch 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