283 Commits (9487d0a714e820340b93de2ba6949170f5673bcc)

Author SHA1 Message Date
Daniel Grunwald 0a9df3d373 Fix #1252: Incorrect comparison type for lifted comparisons in expression trees. 7 years ago
Daniel Grunwald 12e74daf48 Handle Comp in InferType(). 7 years ago
Chicken-Bones e9b766d708 Improve persistence of IL offsets through various transforms. 7 years ago
Siegfried Pammer 2047923809 Add ShowChildIndexInBlock option to make debugging of larger blocks easier. 7 years ago
Siegfried Pammer 057ab82534 Add basic stackalloc initializer transforms. 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
Siegfried Pammer e92b9fe5e4 Optimize performance of debug builds: only call string.Format, if assertion fails. 7 years ago
Daniel Grunwald 9479e8af13 Support overloaded operator &&/||. 7 years ago
Daniel Grunwald 107fe5eb1c Eliminate SpecializingDecompilerTypeSystem and use GenericContext instead. 7 years ago
Daniel Grunwald 33ef82f75c Fix #1082: Add support for compound assignment with string.Concat(). 7 years ago
Siegfried Pammer 4540b93e19 Use ArgumentOutOfRangeException or BadImageFormatException in switch-default sections. 7 years ago
Siegfried Pammer 89544864bf Provide better exceptions and messages in case of errors. 7 years ago
Siegfried Pammer 4f8441e142 Introduce several new WriteReference overloads 7 years ago
Daniel Grunwald 367b396b35 Fix assertion with fields declared in an unresolved class type. 7 years ago
Siegfried Pammer 904aa5269e Fix various bugs in ExpressionBuilder.VisitDynamic* + refactor DynamicInstructions a bit 7 years ago
Siegfried Pammer 6ce53c804b Fix #1168: Extend MatchCompEquals and MatchCompNotEquals to work with multiple nested logic.not instructions 7 years ago
Siegfried Pammer bbe16584f7 Fix #1150: 7 years ago
Siegfried Pammer c4f41f459f Add support for more dynamic binary operators. 7 years ago
Siegfried Pammer 66724db69b Add WriteArgumentList to DynamicInstruction 7 years ago
Siegfried Pammer 83c9d0f2fa Add DynamicInstruction.GetArgumentInfoOfChild 7 years ago
Siegfried Pammer 0bb71f469d Add DynamicCompoundAssign instruction 7 years ago
Daniel Grunwald ca09f09222 Don't use named arguments when IL stack is empty after the stloc. 7 years ago
Daniel Grunwald 810adea8b4 #1083: Initial implementation of named arguments. 7 years ago
Daniel Grunwald bcc1586f72 ILAst transform for named arguments. 7 years ago
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. 8 years ago
Daniel Grunwald 4d00c65608 Use IReadOnlyList<T> instead of IList<T> in the resolved type system. 8 years ago
Daniel Grunwald 96d9e63f4c Don't unnecessarily default-initialize variables prior to a call with out-parameter. 8 years ago
Siegfried Pammer adda97cf84 Add AwaitInFinallyTransform 8 years ago
Siegfried Pammer 384111f0dd Fix #1075: NullReferenceException in StatementBuilder.TranslateSwitch 8 years ago
Siegfried Pammer 7544eac5b4 Add support for mcs 2.6.4 switch-on-string 8 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. 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
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