146 Commits (7f4653c2745b03bba8cc7d78be051885347a25cb)

Author SHA1 Message Date
Siegfried Pammer 7f4653c274 Add support for tuple deconstruction 5 years ago
Siegfried Pammer 9cb3fe3484 Add support for basic deconstruction conversions 5 years ago
Daniel Grunwald bd4e565b93 Ensure all pinned regions variables are converted to VariableKind.PinnedRegionLocal 5 years ago
Daniel Grunwald abb9d49a0f Add support for C# 8 switch expressions. 5 years ago
Siegfried Pammer b01e9484d5 Fix bugs in ILAst 5 years ago
Siegfried Pammer 6bb6097ad4 Extended DeconstructInstruction.CheckInvariant 5 years ago
Daniel Grunwald cda56e7f7e #2048: Pattern matching: documentation and invariants for MatchInstruction. 5 years ago
Siegfried Pammer 95f2ae7aef Add ILAst base for Deconstruction and Pattern Matching 5 years ago
Daniel Grunwald b18ed89b67 #2050: Add assertion to check that no transform uses StObj.TargetSlot incorrectly. 5 years ago
Daniel Grunwald 62fcab8d99 #2050: Allow inlining into the StObj target slot when this is possible without changing the program semantics. 5 years ago
Daniel Grunwald 925a4e1e65 #2050: Don't put ldflda/ldelema with immediate exceptions into StObj.TargetSlot. 5 years ago
Daniel Grunwald dc6e094a30 Add support for indexing arrays using System.Index 5 years ago
Daniel Grunwald bbb2397083 Fix #1853: Detect pinning of multi-dimensional array 5 years ago
Daniel Grunwald eb2a9e6b94 #1852: Rename array.to.pointer opcode to get.pinnable.reference. 6 years ago
Daniel Grunwald 57b725df79 Fix #1655: Incorrect pointer cast when calling method on integer constant 6 years ago
Siegfried Pammer 679623e4c3 Fix #1609: Decompilation of cached delegate-construction with unknown delegate type. 6 years ago
Siegfried Pammer ec18094c65 Implement transformation of delegate construction with ldvirtftn. 6 years ago
Daniel Grunwald ccdabf2325 Fix a bunch of XmlDoc compiler warnings. 6 years ago
Siegfried Pammer 305b47245e Refactor representation of local functions in ILAst. 6 years ago
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
Andreas Weizel a254913624 Work for throw expressions. 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
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