On Wed, 2007-07-04 at 20:20 +0200, Mark Wielaard wrote: > - Single Step Out Of Line Address Area. Currently the Isa (for x86 and > x86_64 at least) just provide one address. The address of the main() > function entry point taken by just doing: > > Elf elf = new Elf(proc.getExe(), ElfCommand.ELF_C_READ); > Dwarf dwarf = new Dwarf(elf, DwarfCommand.READ, null); > DwarfDie die = DwarfDie.getDecl(dwarf, "main"); > return die.getEntryBreakpoints(); > > This works surprisingly well for a simple first approach, and programs > generally don't reenter their own main() function. But it would be nice > to either find an area that is guaranteed to never be used (again) by > the process, or to map in an executable area in the inferior that is > just used by us (maybe just making the inferior load a dummy shared > library). Again any suggestions welcome. Phil already suggested that I use the auxiliary vector of a proc to more easily get at the entry point which I have implemented now. It seems to work great. Thanks Phil. Off-list I did talk a bit about this with Andrew. And it isn't clear this is a major roadblock for now. So I am not really going to experiment for now till it is more clear that this doesn't scale. And this all depends on getting the instruction parser fully in place so we actually use the ssol implementation for most instructions. What would be a good real world testcase so see if it scales or not in practise? Cheers, Mark