371 Commits (77dc975f9bb1c4ac5dd149da539212f94c54b752)

Author SHA1 Message Date
Siegfried Pammer 84f5e057d3 Add DynamicInstruction 7 years ago
Daniel Grunwald 243a347da1 Revert "#1083: Add ArgumentToParameterMap to CallInstruction, in ILAst output call arguments are now prefixed with the parameter index they correspond to, if the mapping is different from the default." 7 years ago
Siegfried Pammer 60ace84f26 #1083: Add ArgumentToParameterMap to CallInstruction, in ILAst output call arguments are now prefixed with the parameter index they correspond to, if the mapping is different from the default. 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 845c620a9f Implement UserDefinedCompoundAssign 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
Siegfried Pammer 4aafe2db69 Remove the last traces of Mono.Cecil in ICSharpCode.Decompiler and ILSpy. 7 years ago
Siegfried Pammer adca1f8867 Port ILFunction and SequencePointBuilder 7 years ago
Siegfried Pammer b500b24548 SRM WIP basic implementation of DecompilerTypeSystem 7 years ago
Daniel Grunwald b9337c6129 Fix #1021: Compound assignments on pointer types. 7 years ago
Daniel Grunwald 4d00c65608 Use IReadOnlyList<T> instead of IList<T> in the resolved type system. 7 years ago
Daniel Grunwald 96d9e63f4c Don't unnecessarily default-initialize variables prior to a call with out-parameter. 7 years ago
Siegfried Pammer adda97cf84 Add AwaitInFinallyTransform 7 years ago
Siegfried Pammer 384111f0dd Fix #1075: NullReferenceException in StatementBuilder.TranslateSwitch 7 years ago
Siegfried Pammer 7544eac5b4 Add support for mcs 2.6.4 switch-on-string 7 years ago
Daniel Grunwald 4177e182fe #1050: Add support for ?. operator applied to ref-parameters, and other cases where the compiler uses a generated ref local for the ?. operator. 7 years ago
Daniel Grunwald 36035de5fa Improve decompilation of ?. in generic code. 7 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
Daniel Grunwald 9b15b97f89 Fix some more cases where missing references were causing assertions. 8 years ago
Daniel Grunwald ae819526eb Fix assertion when call has unknown target type (due to missing assembly reference). 8 years ago
Daniel Grunwald 0a1921ff67 Fix #1007: post-increment transform incorrect due to variable splitting. 8 years ago
Siegfried Pammer 75a3f6d24b Add result type invariants for instruction arguments. 8 years ago
Siegfried Pammer 33c5e2d3ed Add StackType.F4 and StackType.F8, and instructions LdcF4 and LdcF8. 8 years ago
Siegfried Pammer 203311dd0b Do not crash in BlockContainer.CheckInvariant 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 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 049cff2324 Add unit tests, directly use ILFunction instead of NewObj(ILFunction) for expression trees. 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
Daniel Grunwald 02db362838 Ensure that StLoc.Value.ResultType == StLoc.Variable.StackType 8 years ago
Siegfried Pammer 372f543d6c Add MoveElementToIndex and MoveElementToEnd methods to InstructionCollection 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 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 c7e60a9b3c Avoid using inline assignments if they truncate the input value. 8 years ago
Siegfried Pammer f8b27066a1 Remove ILInstructionExtensions.cs 8 years ago
Daniel Grunwald 255fab7bd6 Fix short-circuiting operators when the rhs is a comparison with 0. 8 years ago
Siegfried Pammer e48dfb7cb2 Add ILStackWasEmpty flag to default.value 8 years ago
Daniel Grunwald dc995b15c6 Add support for 'ptr - ptr'. 8 years ago
Siegfried Pammer 4ca4d97011 Improve SequencePointBuilder 8 years ago
Daniel Grunwald d2b6651507 ILAst: show unused IL ranges 8 years ago
Daniel Grunwald b7d4636f80 Implement ILInstruction.AddILRange() 8 years ago