java disassembler/assembler

Per Bothner per@bothner.com
Sat Oct 22 21:50:00 GMT 2005


Daniel Reynaud wrote:
> Hello again,
>> Thank you all for your comments, they have given me a certain number of 
> ideas.
> Here is what I have already implemented in Jasmin :
>> - use of offsets or labels for branch targets, local variable 
> visibility, exception handlers...

It's useful if a disassembler prints offet (pc) of every instruction.
It might be optional, but I'd prefer for eth default to be on.
I suggest:
 NNN: instruction
The assembler can treat numbers as labels. It should print a warning if
the numeric label doesn't match the pc - bu only once per method.
> - same thing for the EnclosingMethod attribute :
> .enclosing method "some/package/Foo/someMethod(I)V"
> or
> .enclosing method "some/package/Foo"

It would be nice to have an option to print methods, classesm
and signatures in external (Java) syntax, rather than as signatures
> Here is what I do NOT plan to implement for the moment
> - annotations. Unless someone finds a nice and smart syntax ;)
> - constant pool edition. I know it would be great but it's just too much 
> work for the moment. However, I think it would be possible to explicitly 
> add some items to the constant pool (but not too sure it's really 
> useful...)

If you want to create a replacement for jcf-dump should have an
option to print out the constant pool, and to display constant
pool indexes when printing instructions etc. This probably
shouldn't be the default (it no longer i in jcf-dump), and it's
not requiried that the assembler be able parse a priinted
contant pool, but that would be nice.
-- 
	--Per Bothner
per@bothner.com http://per.bothner.com/


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /