317 Commits (5177c56d88c37a29565ded2bc590d2253fd72344)

Author SHA1 Message Date
Siegfried Pammer 7d4b4c6433 Implement NullCoalescingTransform with value types. 6 years ago
Daniel Grunwald 8117dfff4a Fix #1242: Discard unreachable code. 6 years ago
Daniel Grunwald c366235246 #1349: Fix type substitution for members of unknown generic types (due to unresolved references) 6 years ago
Daniel Grunwald 539e3a906d Fix #1552: user-defined and decimal increments 6 years ago
Daniel Grunwald c56714c607 Fix assertion with async lambdas; fix async local functions. 6 years ago
Siegfried Pammer 37e14f43e3 Refactor/Clean up local functions representation in type system. 6 years ago
Daniel Grunwald ccdabf2325 Fix a bunch of XmlDoc compiler warnings. 6 years ago
Daniel Grunwald b32cae412a Eliminate BlockKind.PostfixOperator. 6 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. 6 years ago
Siegfried Pammer 6f98ed5415 Fix unit tests. 6 years ago
Siegfried Pammer 305b47245e Refactor representation of local functions in ILAst. 6 years ago
Siegfried Pammer b42d4963e7 Fix assertions in TransformExpressionTrees. 6 years ago
Siegfried Pammer d50b8d66d1 Fix #1373, fix #1541: add support for instance calls to CallIndirect. 6 years ago
Daniel Grunwald a6def4cdf5 Fix incorrect type for numeric.compound.assign when the pointer type is incompatible with the store type. 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