ARM Simulator whitewash...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

ARM Simulator whitewash...

Tim Olson
 
On 23-09-2015, at 11:18 AM, Eliot Miranda <eliot.miranda at gmail.com> wrote:
> Is anyone interested in fixing the ARM simulator so that it does correctly simulate vfp instructions?  If so, let me know and I can help you set up the relevant environment.

The good news is that the disassembler code in the latest gdb tree at least appears to try to handle the VFP instructions, so that part might be already done for us. So far as I can make out the new version of armsupp.c has the VFP instructions added as of about july; if that all works it shouldn’t be too terrible a job.

Of course, life is a touch complicated by the ugly hacks we had to create to make it work for us.
I noticed the same in gdb-7.10, and have ported that to Cog, including all of Tim Rowledge's edits to get it working for Cog.  There were a few problems with getting it working in my build environment (64-bit Ubuntu 14.04 system), but I now can at least build the GdbARMPlugin and drop it into an existing cogspurlinuxht VM and run the ARMv5 emulation.

The “sim: MULTIPLY64 - INVALID ARGUMENTS” messages are now gone, because the new simulator correctly simulates the smull instructions, but there still is a problem (illegal read from 0x4) due to trying to execute an instruction of all zero bits.  I’ve got a trace of the ARM code executed up to that point, if anyone is interested in debugging the ARM code further.

— Tim Olson

Reply | Threaded
Open this post in threaded view
|

Re: ARM Simulator whitewash...

Eliot Miranda-2
 
Hi Tim,

   thanks!  So send me the code and I'll integrate. Would you allow me to add you to the Cog collaborators page?  If so, for that I would like a URL to a bio, online presence, or the like.

On Sat, Oct 3, 2015 at 9:01 AM, Tim Olson <[hidden email]> wrote:
 
On 23-09-2015, at 11:18 AM, Eliot Miranda <eliot.miranda at gmail.com> wrote:
> Is anyone interested in fixing the ARM simulator so that it does correctly simulate vfp instructions?  If so, let me know and I can help you set up the relevant environment.

The good news is that the disassembler code in the latest gdb tree at least appears to try to handle the VFP instructions, so that part might be already done for us. So far as I can make out the new version of armsupp.c has the VFP instructions added as of about july; if that all works it shouldn’t be too terrible a job.

Of course, life is a touch complicated by the ugly hacks we had to create to make it work for us.
I noticed the same in gdb-7.10, and have ported that to Cog, including all of Tim Rowledge's edits to get it working for Cog.  There were a few problems with getting it working in my build environment (64-bit Ubuntu 14.04 system), but I now can at least build the GdbARMPlugin and drop it into an existing cogspurlinuxht VM and run the ARMv5 emulation.

The “sim: MULTIPLY64 - INVALID ARGUMENTS” messages are now gone, because the new simulator correctly simulates the smull instructions, but there still is a problem (illegal read from 0x4) due to trying to execute an instruction of all zero bits.  I’ve got a trace of the ARM code executed up to that point, if anyone is interested in debugging the ARM code further.

— Tim Olson





--
_,,,^..^,,,_
best, Eliot
Reply | Threaded
Open this post in threaded view
|

Re: ARM Simulator whitewash...

timrowledge
In reply to this post by Tim Olson


> On 03-10-2015, at 9:01 AM, Tim Olson <[hidden email]> wrote:
> but I now can at least build the GdbARMPlugin and drop it into an existing cogspurlinuxht VM and run the ARMv5 emulation.

Cool! Thanks Tim,

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
I majored in Art and Logic. Now I draw my own conclusions