298 Commits (b42d4963e7be04a23a8039c04c4a7b8534d87bc4)

Author SHA1 Message Date
Siegfried Pammer b42d4963e7 Fix assertions in TransformExpressionTrees. 6 years ago
Siegfried Pammer 8d1522f387 Transform display classes used in local functions. 6 years ago
Siegfried Pammer 9590cfbf59 Update tests to latest Roslyn implementation. 6 years ago
Siegfried Pammer bd77b8301f Basic implementation of local functions. 6 years ago
Daniel Grunwald 961923f4fd #1499, #1240: Translate pointer arithmetic on managed pointers (ref T) using the System.Runtime.CompilerServices.Unsafe intrinsics 6 years ago
Siegfried Pammer b03aa488aa Performance: Cache ChainedConstructorCallILOffset in ILFunction to avoid having to scan the method body in every inlining step. Take a shortcut for static ctors, as there cannot be chained ctor calls in static ctors. 6 years ago
Daniel Grunwald 52e6717faf Fix #1452: Avoid NullReferenceException when accessing SlotInfo property on the root node 6 years ago
Daniel Grunwald f18ed5a418 Fix #1453: Incorrect assert in IL Conv for R4 -> R8 6 years ago
Daniel Grunwald 40b6f0c7bf Use appropriate type for helper variables introduced for named arguments. 6 years ago
Siegfried Pammer c1fca21e8a Make ILRange field private - introduce public API for IL range manipulation. 6 years ago
Daniel Grunwald f1c8142ce2 PDB generator now can emit "method stepping information" for async functions. 6 years ago
Daniel Grunwald 763683748b Emit debug info for display class locals, so that the debugger can show the values of captured variables. 6 years ago
Daniel Grunwald da5693e605 Fix #1339: fixed statement not decompiled correctly when pinned variable is reset in finally block 6 years ago
Daniel Grunwald 47ca51a769 Clarify the meaning of ILVariable.Index 6 years ago
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. 7 years ago
Daniel Grunwald 4d00c65608 Use IReadOnlyList<T> instead of IList<T> in the resolved type system. 7 years ago