124 Commits (c1fca21e8a3e1b890e20f914a0b0bf3e442d00dc)

Author SHA1 Message Date
Siegfried Pammer c1fca21e8a Make ILRange field private - introduce public API for IL range manipulation. 6 years ago
Siegfried Pammer 3f4ffd64f8 Set DelayExceptions = true in ILReader for get/set operations on multi-dim arrays. 6 years ago
Siegfried Pammer 0dac55d584 Add transformation for stackalloc to Span<T>. 7 years ago
Daniel Grunwald dd5845e83d Support short-circuiting operators with dynamic. (e.g. "if (x.A && x.B)" where "x" is dynamic) 7 years ago
Daniel Grunwald 9479e8af13 Support overloaded operator &&/||. 7 years ago
Siegfried Pammer 904aa5269e Fix various bugs in ExpressionBuilder.VisitDynamic* + refactor DynamicInstructions a bit 7 years ago
Siegfried Pammer 0bb71f469d Add DynamicCompoundAssign instruction 7 years ago
Siegfried Pammer 84f5e057d3 Add DynamicInstruction 7 years ago
Siegfried Pammer 845c620a9f Implement UserDefinedCompoundAssign 7 years ago
Daniel Grunwald 36035de5fa Improve decompilation of ?. in generic code. 7 years ago
Daniel Grunwald ca0fa55af8 Implement null propagation transform. 7 years ago
Daniel Grunwald a8a852b742 Add instructions for modeling the "?." operator in the ILAst. 7 years ago
Siegfried Pammer 75a3f6d24b Add result type invariants for instruction arguments. 8 years ago
Siegfried Pammer 38b073ee9a Add OpCode.Invariants: generalized mechanism for overriding CheckInvariant 8 years ago
Siegfried Pammer 33c5e2d3ed Add StackType.F4 and StackType.F8, and instructions LdcF4 and LdcF8. 8 years ago
Siegfried Pammer 21dfa43dab Add ExpressionTreeCast instruction 8 years ago
Daniel Grunwald 02db362838 Ensure that StLoc.Value.ResultType == StLoc.Variable.StackType 8 years ago
Daniel Grunwald f155ca4ef6 Fix #938: add support for I4->I stack type adjustments. 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 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 385005b2e5 More strictly test the inline assignment pattern. 8 years ago
Daniel Grunwald 0c6d6742fe Add support for fixed-size buffers. 8 years ago
Siegfried Pammer 5fec6bd7f7 Implement Interval.WriteTo extension method on ILAst 8 years ago
Daniel Grunwald 102729cfde Put switch instructions into their own BlockContainer. 8 years ago
Daniel Grunwald ebab7d5de0 #899: Add calli opcode to ILAst 8 years ago
Daniel Grunwald afcbc8c6cf #899: Add cpblk and initblk instructions to ILAst. 8 years ago
Daniel Grunwald 8a68a94d35 Simplify use of SwitchInstruction in ILAst 8 years ago
Siegfried Pammer d40ecb5e0c [switch] Add StringToInt instruction 8 years ago
Siegfried Pammer d1a514b451 Redesign of UsingInstruction. 8 years ago
Daniel Grunwald d0f1b60a04 Fix type names in ILAst debug output. 8 years ago
Siegfried Pammer dea81a685d Add UsingInstruction to ILAst. 8 years ago
Daniel Grunwald b7320b25e4 [nullables] Lift three-valued logic operators ('&' and '|' on bool?) 8 years ago
Daniel Grunwald 53a050552b Add support for syntax sugar when writing out the ILAst. 8 years ago
Daniel Grunwald 66d1b744c3 Add ILAstWritingOptions parameter to ILInstruction.WriteTo(). 8 years ago
Daniel Grunwald 63d6f4bbca [nullables] Add lifting for operator~. 8 years ago
Daniel Grunwald 919219524b Eliminate the dedicated logic.not instruction, and treat it as syntax sugar similar to logic.and/logic.or. 8 years ago
Daniel Grunwald 21ef967d4d [nullables] Lifting for non-equality comparisons. 8 years ago
Daniel Grunwald 4830b37ab9 [nullables] Add support for '??' operator on nullables. 8 years ago
Siegfried Pammer 4da1addd2b Implement C# 2, C# 4 legacy and Roslyn lock patterns. 8 years ago
Siegfried Pammer 53322a6ba7 Add ExpectedResultType to BlockContainer (default is StackType.Void) 8 years ago
Siegfried Pammer 206cdecf30 Merge Return instruction into Leave. 8 years ago
Daniel Grunwald 7d6122cfaf [async] Decompile await operator. 8 years ago
Daniel Grunwald 40212685b6 [async]: control flow reconstruction 8 years ago
Siegfried Pammer 5007c660ca Add NullCoalescingInstruction 8 years ago
Daniel Grunwald 00564f5fcd Fix detection of do-while and for loops. 8 years ago
Daniel Grunwald 5621101436 Reconstruct try-finally blocks in yield return decompiler 9 years ago
Siegfried Pammer 54a48b520e Add instruction<->variable mapping to ILVariable 9 years ago
Daniel Grunwald fe84ea9730 WIP: yield return decompiler 9 years ago