[LLVMdev] GSoC Mips backend improvement

Bruno Cardoso Lopes bruno.cardoso at gmail.com
Tue Mar 18 22:46:15 PDT 2008

Hi all,

Last year i was mentored by Chris Lattner at GSoC and i created the
Mips back-end for LLVM. The back-end is still experimental (working
with simple benchmarks only) and this year i would like to improve it
as my GSoC proposal. Mips is still fairly used nowadays in a lot of
devices - routers, wireless cards, PSP, PS2 - and it would be great to
have a stable mips backend for LLVM.

General improvements :

+ Support little-endian Mips (mipsel)
+ Improve instruction scheduling to better support non interlock targets.
+ Support more subtargets.

Roadmap :

1) Define a list of benchmarks and get all working.
2) Add float-point support.
3) Repeat 1).
4) Get llvm-gcc as cross-compiler fully working for Mips
5) add Mips32 complete ISA
6) choose one more subtarget to add support (Mips64/PSP/PS2).
   Which one you would say is more important? Using llvm to
   generate code for PSP would be very fun!

Opinion and comments would be nice.
I'll leave the timeline proposal to the students application at Google,
i just want some feedback for now!


Bruno Cardoso Lopes ( now @ Cocos Island )

++ The saddest aspect of life right now is that
science gathers knowledge faster than society
gathers wisdom + Isaac Asimov

More information about the llvm-dev mailing list