55 Commits
Author SHA1 Message Date
Daniel Grunwald fa19470435 Fix #3218: Avoid exceptions when IL is invalid due to unexpected end-of-method-body. 2024-06-15 15:03:21 +02:00
Siegfried Pammer ca78d4a14d Use MetadataFile instead of PEFile in TypeSystem. 2024-03-24 15:35:13 +01:00
Siegfried Pammer 7414aaeeeb Fix #3061: Handler blocks of exception filter blocks do not have a header. 2023-08-26 11:40:42 +02:00
Siegfried Pammer af56bb10d0 Determine isBranchTarget in a separate pass. We will need it for an optimization to ILReader in a future commit. 2022-09-06 21:38:18 +02:00
Siegfried Pammer 93dcba3426 * Rename Metadata.GenericContext to MetadataGenericContext to avoid conflicts with TypeSystem.GenericContext
* Change MetadataGenericContext to readonly struct
* Rearrange types in Dom.cs
2022-04-12 09:38:58 +02:00
Siegfried Pammer 900d0a4b93 Fix #1966: Add option to show raw offsets and instruction bytes in IL view. 2021-08-26 14:54:49 +02:00
Siegfried Pammer 48adb52489 Show header size in IL output. 2021-08-26 14:54:49 +02:00
dotnet format 0d9f871a4f #2128: Reformat the whole code base. 2020-08-28 01:05:38 +02:00
Siegfried Pammer 853cad5fd0 Disassembler: Implement cancellation token. 2020-04-10 22:29:35 +02:00
Siegfried Pammer deaedd0914 Link metadata tokens in decompilation output to metadata tables. 2019-12-22 00:14:11 +01:00
Siegfried Pammer 270547cb46 Fix release build. 2019-11-24 01:04:15 +01:00
Siegfried Pammer 2a5ba0f665 Fix linking of local variables and parameters to their usages in the IL view. 2019-03-17 19:14:22 +01:00
Siegfried Pammer 1c4b02cb7c Merge branch 'master' of https://github.com/icsharpcode/ILSpy into ppdb 2019-02-13 18:06:29 +01:00
Siegfried Pammer fbfcd6f72a Fix #628: Add option to display metadata token in 10-based or hex format. 2018-12-23 18:25:30 +01:00
Daniel Grunwald 61698b615d Fix #1232: BadImageFormatException: Invalid SEH header
This makes the decompiler and a bunch of analyzers more robust against invalid assemblies.
2018-07-25 23:59:17 +02:00
Siegfried Pammer 697074f88b MethodBodyDisassembler: print variable names found in PDB. 2018-07-22 22:15:15 +02:00
Daniel Grunwald 08e8091336 Fix #1211: Handle BadImageFormatException on invalid local signatures. 2018-07-16 22:40:36 +02:00
Siegfried Pammer 716eade5a6 Add missing "method" keyword to method definition tokens in ldtoken instruction. 2018-07-12 14:18:18 +02:00
Siegfried Pammer 68123fc6b3 Fix build. 2018-07-11 17:52:11 +02:00
Siegfried Pammer 4540b93e19 Use ArgumentOutOfRangeException or BadImageFormatException in switch-default sections. 2018-07-11 17:18:08 +02:00
Siegfried Pammer 4f8441e142 Introduce several new WriteReference overloads 2018-07-08 22:14:25 +02:00
Siegfried Pammer bcfb3742eb Clean up PEFile, move Pdb related types to DebugInfo namespace 2018-07-07 18:22:53 +02:00
Siegfried Pammer d8c1796c4a Add MetadataTokenHelpers to avoid crashing when dealing with MetadataTokens 2018-06-30 00:25:51 +02:00
Daniel Grunwald 6360b70ee6 #1189: Fix exception trying to disassemble a bunch of random bytes. 2018-06-29 21:48:58 +02:00
Siegfried Pammer bd2a0ec8d7 Fix output of .emitbyte directive on multi-byte opcode values. 2018-06-29 19:48:27 +02:00
Daniel Grunwald 4e449de58d Show metadata tokens in disassembly. 2018-06-23 20:18:08 +02:00
Siegfried Pammer 458f448fae Avoid unnecessary allocations of MetadataReader and clean up Dom structs a bit. 2018-05-14 22:34:10 +02:00
Siegfried Pammer ce894c4ad4 Add IDebugInfoProvider implementations to ILSpy 2018-04-14 16:46:12 +02:00
Siegfried Pammer b500b24548 SRM WIP basic implementation of DecompilerTypeSystem 2018-03-18 20:02:37 +01:00
Siegfried Pammer 37ae59c70d Add guard code in case standalone signature is invalid. 2018-02-18 16:20:29 -03:00
Siegfried Pammer 82d80a80e9 Fix formatting bug in MethodBodyDisassembler 2018-02-18 10:54:01 -03:00
Siegfried Pammer 87ced033ba Rename Dom -> Metadata; Remove bogus abstraction 2018-02-16 07:22:15 -02:00
Siegfried Pammer cb9787098f Finished port of UI (Analyzers still excluded) and Disassembler 2018-02-13 17:54:50 -02:00
Siegfried Pammer 02b7dc98be Commit of non-compiling WIP 2018-01-15 20:51:46 +01:00
Daniel Grunwald 462d0da7b6 Add feature to the MethodBodyDisassembler that shows sequence points from PDB in disassembled IL. 2017-10-14 19:31:10 +02:00
Daniel Grunwald 3aca47d1f5 Allow decompiling whole assembly in IL + C# mode. 2017-10-14 15:59:35 +02:00
Siegfried Pammer d871960bec Add WriteInstruction to MethodBodyDisassembler 2017-10-14 13:35:06 +02:00
Daniel Grunwald b3590ec292 Update cecil. 2016-11-26 16:29:29 +01:00
Siegfried Pammer 840ec04fde Namespace adjustments for Syntax classes 2016-11-26 12:06:58 +01:00
Daniel Grunwald 7273fe58fd Add BlockTransform concept and apply a bunch of refactoring essentials suggestions. 2016-11-24 23:17:12 +01:00
Daniel Grunwald ce05af885c Merge remote-tracking branch 'origin/master' into newdecompiler 2015-06-05 00:32:43 +02:00
Daniel Grunwald 02a500e762 ICSharpCode.Decompiler: Merge changes from SharpDevelop to ILSpy. 2015-04-22 22:40:40 +02:00
Daniel Grunwald 817b0baded expr inlining 2014-06-19 18:36:39 +02:00
Daniel Grunwald 167e140c75 'Typed IL' view shows stack 2014-06-19 16:49:18 +02:00
Daniel Grunwald 27252656cf Upgrade to new ICSharpCode.Decompiler (work in progress)
- Switch AvalonEdit to NuGet package.
- Upgrade Mono.Cecil to new version
2014-06-15 19:24:13 +02:00
Lukas Rieger 2d2a0aaea1 Modules may exist without an Assembly,in this case the line
"method.DeclaringType.Module.Assembly.EntryPoint"
causes a NullReferenceException as Assembly == null.
This change first checks if Module.Assembly != null.
2014-02-15 21:05:19 +01:00
Daniel Grunwald 56c75e09b2 Refactored handling of debug mapping in the decompiler: we now avoid using a side-channel for the debug info and instead return it via the ITextOutput. 2011-09-18 02:16:22 +02:00
Eusebiu Marcu b394749f47 create a new TextOutputLocation class for storing the location in the output text instead of Tuple<int, int> 2011-07-22 23:20:40 +02:00
Daniel Grunwald dd4d090468 Lots of improvements/fixes for the disassembler. 2011-05-21 17:41:51 +02:00
Daniel Grunwald d362f8d0f6 Fixed several bugs in the IL disassembler. 2011-05-21 14:43:12 +02:00