
Hi, I'm doing an internship into the Wyplay company. My internship subject is to try to port pypy to MIPS architecture, to make it run on their boxes. I see that there was somebody who launched this idea two years ago, but nothing was done... I would like to relaunch it today. If I understand the Pypy project architecture, all I have to do, is modifying the 'rpython/jit' directory, adding a 'backend/mips' directory, able to generate the JIT compiler for MIPS architecture, I don't ? There is, after, a tiny modification to generate the mips options in the makefile, for the C file compilation. Am I right ? If not, anyone can explain me what I misunderstood ? Regards. Alexis BRENON, for Wyplay <http://www.wyplay.com/>

On Fri, Apr 26, 2013 at 9:53 AM, Alexis BRENON <abrenon@wyplay.com> wrote:
Hi,
I'm doing an internship into the Wyplay company. My internship subject is to try to port pypy to MIPS architecture, to make it run on their boxes.
I see that there was somebody who launched this idea two years ago, but nothing was done... I would like to relaunch it today.
If I understand the Pypy project architecture, all I have to do, is modifying the 'rpython/jit' directory, adding a 'backend/mips' directory, able to generate the JIT compiler for MIPS architecture, I don't ? There is, after, a tiny modification to generate the mips options in the makefile, for the C file compilation.
Am I right ? If not, anyone can explain me what I misunderstood ?
Regards. Alexis BRENON, for Wyplay <http://www.wyplay.com/> _______________________________________________ pypy-dev mailing list pypy-dev@python.org http://mail.python.org/mailman/listinfo/pypy-dev
Hi Alexis. It's very cool, MIPS is certainly one of the missing ports. In fact, it's less than that. Most of the rpython/jit directory does not have to be modified. It's 'just' rpython/jit/backend/mips and some support code in rpython/jit/backend/llsupport and that's it. The good starting point would be to add an empty MIPS backend and try running test_runner.py (like in backend/x86/test/test_runner.py or ARM). Are you familiar with ARM or x86 assembler? That would be a very good starting point to see how the current backends are implemented. Feel free to pop in on #pypy on irc.freenode.net, we're very irc-based. Is the part of the plan to contribute the MIPS backend to the pypy repo? Cheers, fijal

Le 26/04/2013 11:04, Maciej Fijalkowski a écrit :
On Fri, Apr 26, 2013 at 9:53 AM, Alexis BRENON <abrenon@wyplay.com> wrote:
Hi,
I'm doing an internship into the Wyplay company. My internship subject is to try to port pypy to MIPS architecture, to make it run on their boxes.
I see that there was somebody who launched this idea two years ago, but nothing was done... I would like to relaunch it today.
If I understand the Pypy project architecture, all I have to do, is modifying the 'rpython/jit' directory, adding a 'backend/mips' directory, able to generate the JIT compiler for MIPS architecture, I don't ? There is, after, a tiny modification to generate the mips options in the makefile, for the C file compilation.
Am I right ? If not, anyone can explain me what I misunderstood ?
Regards. Alexis BRENON, for Wyplay <http://www.wyplay.com/> _______________________________________________ pypy-dev mailing list pypy-dev@python.org http://mail.python.org/mailman/listinfo/pypy-dev Hi Alexis.
It's very cool, MIPS is certainly one of the missing ports.
In fact, it's less than that. Most of the rpython/jit directory does not have to be modified. It's 'just' rpython/jit/backend/mips and some support code in rpython/jit/backend/llsupport and that's it.
The good starting point would be to add an empty MIPS backend and try running test_runner.py (like in backend/x86/test/test_runner.py or ARM). Are you familiar with ARM or x86 assembler? That would be a very good starting point to see how the current backends are implemented.
Feel free to pop in on #pypy on irc.freenode.net, we're very irc-based. Is the part of the plan to contribute the MIPS backend to the pypy repo?
Cheers, fijal
Of course, if I managed to make a good MIPS backend, I'll be pride to merge it with the default branch of the pypy repo. Even if I don't reach my goal, I'll commit all my work on the repo, to anybody interesting in this port can continue it. I did some assembler, 3 years ago, during my studies, but it was with a very simple instruction set (I don't remember which processor we used), and with the assembler directives, not the hexadecimal representation, as I can see in the pypy code :-p There is a lot of people on the IRC channel yet, and I'm pride to join you, as alex-dit-sean. Regards, Alexis
participants (2)
-
Alexis BRENON
-
Maciej Fijalkowski