[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU]Testing of ILASM:
From: |
Rhys Weatherley |
Subject: |
Re: [DotGNU]Testing of ILASM: |
Date: |
Fri, 3 Jan 2003 08:29:30 +1000 |
User-agent: |
KMail/1.4.3 |
On Friday 03 January 2003 04:00 am, James Michael DuPont wrote:
> Well, it looks 2112 is not a bug in ilasm,
> but a bug in ildasm.
Our disassembler is not designed to support "round-tripping", where the output
of the disassembler can be fed into the assembler and then compiled back to
the original program. Whether this is a bug or a feature, well ... :-)
I will see how easy it is to fix this by wrapping the class in a namespace
block, as you suggest, but this won't necessarily solve all the
round-tripping issues.
As stated in the FAQ, round-tripping isn't really a goal of pnet. We always
work from the assumption of source code availability. Being able to
disassemble an unknown binary, modify it, and then feed it back into the
assembler, is unnecessary if you have the source available to modify
directly.
The only semi-plausible reason that I've seen for round-tripping is
instrumenting a binary with profiling and debugging calls to analyse its
runtime behaviour. But once again, this is solved with source code. If you
have the source to the runtime engine, then you can add the instrumentation
logic to the coder/JIT.
In summary, round-tripping is only useful if you are writing tools in
closed-source CLI environment, which you cannot modify directly to add the
required functionality. We don't have one of those. :-)
> .assembly public_key test
> {
> }
I assume that this one came from ildasm also? Looks like a problem with the
flag list in "dump_flags.c" - it should be "publickey". I'll fix this.
Cheers,
Rhys.