32 Commits (fd1594996bb1839c57b42f56e116c1726312b818)

Author SHA1 Message Date
David Srbecký fd1594996b Support for "break" in switch statements 15 years ago
David Srbecký 01de42c04a Reduced branch codes to just br and brtrue 15 years ago
Daniel Grunwald 60c02d577b Change namespace to ICSharpCode.Decompiler. 15 years ago
Daniel Grunwald 27ff71ada3 Add support for decimal literals. Closes #42. 15 years ago
David Srbecký 05b0b427d6 Peephole detection of the ternary operator (?:) 15 years ago
Daniel Grunwald 7de3cf9bc4 Add support for array initializers. 15 years ago
Daniel Grunwald 680d7a413e Fix exception in type substitution when accessing multidimensional arrays that have a type parameter as element type. Closes #43. 15 years ago
Daniel Grunwald ef5ef62adc Fix typo in type inference for BrLogicAnd/BrLogicOr. 15 years ago
David Srbecký 8de27deb9e Reduced the complexity of short-circuit detection to polynomial time. 15 years ago
Artur Zgodziski 679d525806 Fixed enum boxing decompilation bug. Enum in attributes better printing. 15 years ago
Daniel Grunwald e8f3e14102 Fix bugs in type analysis. Closes #38. 15 years ago
Daniel Grunwald e31a89689d Add support for char literals. 15 years ago
Daniel Grunwald f0fc66bff6 Avoid using equality operator on TypeReferences; Cecil does not guarantee that there is only one instance for a type. 15 years ago
Daniel Grunwald 72bb24167e Use ILCode instead of Code in type analysis. 15 years ago
Daniel Grunwald 66e2134072 TypeAnalysis: Make type analysis store both the inferred type and the expected type in each ILExpression. 15 years ago
Daniel Grunwald ecd8bc7cce Store prefixes with their parent instruction in ILAst; make use of 'constrained' prefix in type analysis. 15 years ago
Daniel Grunwald 7ca8e36f15 Fixed handling of enum literals. 15 years ago
Daniel Grunwald d1efa9387e Fix stloc type analysis. 15 years ago
Daniel Grunwald 9efe55a758 Fixed type analysis with generic types. 15 years ago
David Srbecký 77d1f62356 Threat stloc as expression that returns value (the stored value) 15 years ago
Daniel Grunwald bf7fe3f33c Bugfix: Crash in type analysis when trying to infer the type of an arg_*-variable that was consumed by a pop instruction. 15 years ago
David Srbecký 7c4111267a Support for short circuit conditional operators (&& and ||) 15 years ago
Daniel Grunwald 83eda6157a Use pattern matching in delegate construction. 15 years ago
Daniel Grunwald a61a4c2245 Infer types for the temporary variables introduced in ILAst. 15 years ago
Daniel Grunwald 8b342ea469 Use ILVariable as ldloca operand. 15 years ago
David Srbecký a03d029d30 Use custom enum to store OpCodes (so that we can add "virtual" opcodes) 15 years ago
Daniel Grunwald 7442f501b0 Add support for more opcodes to type analysis: ldind*, stind*, conv_ovf*, and some others. 15 years ago
Daniel Grunwald 8e69601184 Implement type analysis for a lot more opcodes. 15 years ago
Daniel Grunwald 798d156670 Add comparisons with 0 or null if necessary. Closes #8. 15 years ago
Daniel Grunwald cd2c70a6b4 First implementation of type inference. 15 years ago