[GSOC] Forth Frontend for LLVM or LLVM Superoptimizer

Hi,

I would like to work on a new Forth frontend for LLVM or possibly for
another language. I am also interested on the LLVM superoptimizer
project, but I don't currently know how to work on the backend of a
compiler. What things should I understand before tackling such a
project?

Hi,

I would like to work on a new Forth frontend for LLVM or possibly for
another language. I am also interested on the LLVM superoptimizer
project, but I don't currently know how to work on the backend of a
compiler. What things should I understand before tackling such a
project?

For the first project, I think you should understand the LLVM IR and how to use the C++ API (e.g., the IRBuilder class) to create and manipulate the IR. If you can write a simple LLVM pass, that would be a good start.

For the second project, I'm not really sure. You should look at the existing work and see if it transforms code at the LLVM IR level or the MachineIntr level (i.e., is it a ModulePass/FunctionPass or a MachineFunctionPass?). That will guide you on what background you need.

Just out of curiosity, why the interest in Forth?

Regards,

John Criswell