Hi,

I understand very well the need for a simulator.
However I am an intern, and have only three months left to try to port
v8 to MIPS. Right now I would rather work on porting v8 than make a
simulator, since I still have a lot to do.
If I can progress enough before ending my internship I will make a
simulator, but right now this is not my priority.

Alexandre


On Oct 29, 4:11 pm, Ivan Posva <[email protected]> wrote:
> On Thu, Oct 29, 2009 at 16:32, Alexandre Rames <[email protected]> wrote:
> > I have been working on actual MIPS boards; I have no MIPS simulator and I
> > don't think I really have time to code one right now.
> > Wouldn't it be possible to run v8 with qemu?
>
> Alexandre,
>
> While it might seem like extra work to write the simulator now, it is
> actually much better for the maintainer of the MIPS port (you?) if
> others can develop and run your code on their main machines without
> have to resort to things like qemu.
> I do hope that you are implementing a disassembler so that you can see
> the code you are generating, the incremental step from the
> disassembler to the simulator is minimal. As you can see when
> comparing the ARM simulator to the ARM disassembler in V8 they share a
> lot of the structure and the implementation of the simulator was very
> incremental as more code came online. In an ideal situation your MIPS
> assembler would use the same set of constants and accessors as the
> disassembler/simulator when encoding the instructions. Only due to
> historical reasons the ARM assembler in V8 does not.
>
> Another nice benefit of having the simulator while bringing up V8 on a
> new architecture is the access to the builtin debugger. if you take a
> look at the debugging support in the ARM simulator, it enables you to
> call helper functions in the runtime which is generally almost
> impossible in any of the embedded tool chains.
>
> I find that many developers (including me) will not bother to run any
> of the tests on foreign architectures if the development is not easily
> integrated into their development tools and workflow. Maintaining a
> bootable qemu image is very much past that threshold and your MIPS
> implementation will suffer from a lack of attention as did the ARM
> implementation of V8 before we had a simulator.
>
> Additionally, this might surprise you, is the fact that the regression
> test suite completes faster on the simulator than on actual ARM
> hardware. This is due to the fact that most of the time running the
> regression test suite is spent in C++ code which executes at native
> x86 speeds when run with the  ARM simulator. For a developer this is a
> huge advantage as the turn around time is a lot quicker. As far as I
> understand this is still way down the road for you at this point, but
> it is a point to consider.
>
> Cheers,
> -Ivan
>
>
>
> > On Thu, Oct 29, 2009 at 2:01 PM, Erik Corry <[email protected]> wrote:
>
> >> 2009/10/29 A.Rames <[email protected]>:
>
> >> > Hi,
>
> >> > I am ready to contribute the first MIPS patch.
> >> > I gave the Corporate Contributor License Agreement to my manager and
> >> > should send it soon.
>
> >> > I have 2 questions before contributing:
>
> >> > * As this is a patch to begin v8 port to MIPS, I don't know at all who
> >> > should review this code. Should I just ask a review at chromium-
> >> > [email protected] ?
>
> >> Better to send it to someone specific.  Perhaps me or
> >> [email protected].  If we don't have time we can find someone else to
> >> do it.  I hope you have gcl (the client for codereview.chromium.org)
> >> running.
>
> >> > * I am currently working on the port and would like to submit some
> >> > specific part of my work, which I think are advanced enough. For the
> >> > first patch I'd like to give the assembler-mips files and the very few
> >> > modification to architecture independent code (mainly pre-processor
> >> > architecture checks to include the right files, and one change about
> >> > memory alignment on MIPS).
> >> > However I guess it would be nice for you to have other mips files, so
> >> > that you can build the shell and easily test the mips assembler. As I
> >> > am working on it these are unluckily not very clean, with a lots of
> >> > stubs and partly implemented functions.
> >> > I prepared a version of the code with very clean assembler-mips files,
> >> > and with the JSEntryStub::GenerateBody function just containing a Jump
> >> > (ra) to return to v8 code, which could be used to generate code and
> >> > test it if you need to.
> >> > So do you want me to send you all files or only files needing review?
>
> >> I'd like to see a minimal subset that can actually compile.  It
> >> doesn't matter that it doesn't run, and it doesn't matter that there
> >> are stubbed out functions.  I'd like to see some tests that test the
> >> bits that you expect to work.  If high level tests don't work yet,
> >> then a test/cctest/test-assembler-mips.cc file that goes alongside the
> >> other assembler test files is the right way to go.  I would very much
> >> like to see the disassembler and simulator keeping up with the
> >> assembler so that the same tests can be run without MIPS hardware.
>
> >> > Regards.
>
> >> > Alexandre
--~--~---------~--~----~------------~-------~--~----~
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
-~----------~----~----~----~------~----~------~--~---

Reply via email to