[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DotGNU]Testing of ILASM:

From: Fergus Henderson
Subject: Re: [DotGNU]Testing of ILASM:
Date: Sun, 5 Jan 2003 13:55:27 +1100
User-agent: Mutt/1.3.28i

On 03-Jan-2003, Rhys Weatherley <address@hidden> wrote:
> 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 ... :-)

Round-tripping is certainly a nice feature -- I think it would be good
to support that.

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

Nevertheless, round-tripping may be easier.

It's not sufficient to have the source available --
you also need to have all of the tools needed to build the binary.
Installing compatible versions of all of those tools can be a
non-trivial configuration management task.

Furthermore, it may be necessary to modify the source of one of these
tools, rather than the source of the application.  Then you need to also
install all the tools needed to build that tool.  And you need to
understand and modify a possibly quite complicated program.
And then you need to test that your change didn't break anything else.
In total, this can be a lot more work than round-tripping after piping
the IL through e.g. a one-line sed script.

Fergus Henderson <address@hidden>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <>  |     -- the last words of T. S. Garp.

reply via email to

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