Libo Zhou <zhl...@foxmail.com> writes:
> Hi Alex, > > > gdb says remote 'g' packet reply is too long, and then prints out a > long string of zeros and some other digits sparsely. Sounds like your gdb isn't multiarch aware. Debian/Ubuntu have multiarch binutils which are aware of more than just the host architecture. > > > I have tried a lot of combinations of flags but I just can't get it running > properly. Do you know what is causing this error? > > > Cheers, > > Libo > > > > > > ------------------ Original ------------------ > From: "Alex Bennée";<alex.ben...@linaro.org>; > Send time: Friday, Sep 6, 2019 5:19 PM > To: "Libo Zhou"<zhl...@foxmail.com>; > Cc: "qemu-devel"<qemu-devel@nongnu.org>; "Aleksandar > Markovic"<aleksandar.m.m...@gmail.com>; > Subject: Re: [Qemu-devel] QEMU as ISS (Instruction Set Simulator) > > > > > Libo Zhou <zhl...@foxmail.com> writes: > >> Hi Alex, >> >> >> I just need to log the registers and memory after the program finishes >> its execution. Is it possible to add this functionality myself? > > You'll need to set some sort of breakpoint on the last instruction so > gdb can inspect things before the program is unloaded. I think it's > possible to wire poweroff events to the gdbstub but I haven't looked > into that myself. > >> As for the GDB option, can you tell me the specific steps to do that? I've >> tried it myself but I had no luck getting it running due to me being new to >> all this. >> > > For linux-user: > > $QEMU -g 1234 $PRG > > for system emulation > > $QEMU -s -S > > and then on the gdb end: > > gdb $BIN -ex "target remote localhost:1234" > > and then you can operate as you normally do with a gdb session. GDB has > two scripting interfaces. The command mode is basically a list of gdb > commands but might work for what you want. If you want to be a bit more > programatic you can use python. See the example in > tests/guest-debug/test-gdbstub.py > >> >> Thanks, >> Libo >> >> >> >> ------------------ Original ------------------ >> From: "Alex Bennée";<alex.ben...@linaro.org>; >> Send time: Thursday, Sep 5, 2019 8:58 PM >> To: "qemu-devel"<qemu-devel@nongnu.org>; >> Cc: "Aleksandar Markovic"<aleksandar.m.m...@gmail.com>; >> Subject: Re: [Qemu-devel] QEMU as ISS (Instruction Set Simulator) >> >> >> >> >> Libo Zhou <zhl...@foxmail.com> writes: >> >>> Do you know where in the source file I should look into to add my custom >>> logging functionality? >>> >>> >>> Or, would you suggest using gdb to look at my target register and memory >>> contents? The answer in this link below looks really promising. I'm gonna >>> give it a try first. >>> >>> https://stackoverflow.com/questions/39503997/how-to-run-a-single-line-of-assembly-then-see-r1-and-condition-flags >> >> The gdbstub should allow you do full introspection and adding >> additional registers is fairly easy, see FOO_gdb_[set|get]_reg helpers >> in the appropriate target/FOO directories. >> >>> However, if I am able to customize log, it will be super convenient. >> >> So you want something above what -d cpu will show you? >> >>> >>> >>> >>> Cheers, >>> >>> Libo >>> >>> >>> >>> ------------------ Original ------------------ >>> From: "Aleksandar Markovic";<aleksandar.m.m...@gmail.com>; >>> Send time: Thursday, Sep 5, 2019 6:54 PM >>> To: "Libo Zhou"<zhl...@foxmail.com>; >>> Cc: "qemu-devel"<qemu-devel@nongnu.org>; >>> Subject: Re: [Qemu-devel] QEMU as ISS (Instruction Set Simulator) >>> >>> >>> >>> 04.09.2019. 05.23, "Libo Zhou" <zhl...@foxmail.com> ?е написао/ла: >>>> >>>> Hi Aleksandar, >>>> >>>> I have spent some time looking at your MXU ASE patch. It's super helpful. >>> I need to do exactly the same thing as you did. >>>> >>>> Now I just need a way to observe the memory and register file contents to >>> debug my instruction set simulator. I played with the "-d" switch to log a >>> bunch of information, but it seems that none of the items is of my >>> interest. The "-d cpu_reset" option displays all zeros in the GPR log. >>>> >>> >>> It looks you need a custom logging tailored to your needs, based on >>> intercepting the instructions you added. >>> >>> Aleksandar >>> >>>> Please take your time, as I fully understand you need to work on Qemu >>> while answering all my questions. Again, thank you very much for your help! >>>> >>>> Cheers, >>>> Libo >>>> -- Alex Bennée