160 Commits (b4fb59ae5df8d904aacc775fec157d9d52c64574)

Author SHA1 Message Date
Peter Crabtree e1e16b64f5 dev: Strip BOM mark from text files 4 months ago
Siegfried Pammer d0fc0411fb Update to C# 13 and fix field keyword 5 months ago
Siegfried Pammer 79f7a188b0 Add support for C# 12 inline array expressions 7 months ago
Siegfried Pammer 9f77f8a919 Prevent inlining of call arguments when doing so would change order of evaluation with regards to the implicit ldobj performed by a constrained.callvirt. 9 months ago
Daniel Grunwald f568123704 Add support for UTF8 string literals 3 years ago
Daniel Grunwald 245261a1e5 #nullable enable for Instructions.tt 5 years ago
Daniel Grunwald 782e4ae88c Fix #2215: Use `Unsafe` intrinsics for `ldobj`/`stobj` instructions. 5 years ago
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 5 years ago
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 6 years ago
Siegfried Pammer 6bb6097ad4 Extended DeconstructInstruction.CheckInvariant 6 years ago
Daniel Grunwald cda56e7f7e #2048: Pattern matching: documentation and invariants for MatchInstruction. 6 years ago
Siegfried Pammer 95f2ae7aef Add ILAst base for Deconstruction and Pattern Matching 6 years ago
Daniel Grunwald b18ed89b67 #2050: Add assertion to check that no transform uses StObj.TargetSlot incorrectly. 6 years ago
Daniel Grunwald 62fcab8d99 #2050: Allow inlining into the StObj target slot when this is possible without changing the program semantics. 6 years ago
Daniel Grunwald 925a4e1e65 #2050: Don't put ldflda/ldelema with immediate exceptions into StObj.TargetSlot. 6 years ago
Daniel Grunwald dc6e094a30 Add support for indexing arrays using System.Index 6 years ago
Daniel Grunwald bbb2397083 Fix #1853: Detect pinning of multi-dimensional array 6 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. 7 years ago
Siegfried Pammer ec18094c65 Implement transformation of delegate construction with ldvirtftn. 7 years ago
Daniel Grunwald ccdabf2325 Fix a bunch of XmlDoc compiler warnings. 7 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. 7 years ago
Siegfried Pammer 305b47245e Refactor representation of local functions in ILAst. 7 years ago
Siegfried Pammer c1fca21e8a Make ILRange field private - introduce public API for IL range manipulation. 7 years ago
Siegfried Pammer 3f4ffd64f8 Set DelayExceptions = true in ILReader for get/set operations on multi-dim arrays. 7 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) 8 years ago
Daniel Grunwald 9479e8af13 Support overloaded operator &&/||. 8 years ago
Siegfried Pammer 904aa5269e Fix various bugs in ExpressionBuilder.VisitDynamic* + refactor DynamicInstructions a bit 8 years ago
Siegfried Pammer 0bb71f469d Add DynamicCompoundAssign instruction 8 years ago
Andreas Weizel a254913624 Work for throw expressions. 8 years ago
Siegfried Pammer 84f5e057d3 Add DynamicInstruction 8 years ago
Siegfried Pammer 845c620a9f Implement UserDefinedCompoundAssign 8 years ago
Daniel Grunwald 36035de5fa Improve decompilation of ?. in generic code. 8 years ago
Daniel Grunwald ca0fa55af8 Implement null propagation transform. 8 years ago
Daniel Grunwald a8a852b742 Add instructions for modeling the "?." operator in the ILAst. 8 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