dotgnu-general
[Top][All Lists]
Advanced

[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.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]