Mill Computing, Inc. › Forums › The Mill › Tools › How can I get involved? › Reply To: How can I get involved?
LLVM is on our list.
There are issues though, which makes a Mill backend a non-trivial undertaking. Essentially the whole backend will be unique to the Mill, because LLVM assumes a register-based target. There are issues in the front and middle ends too – LLVM assumes that pointers are integers, for example, and it can only vectorize counting loops whereas the Mill does while-loops too.
Lastly, the Mill family member operation sets are built from individual specification of the member; nobody manually assigns bits to fields, it’s all done by configuration software. Consequently the backen will be generated in large part, the same way the present asm and sim are, which requires an understanding of the generation system. There’s no instruction set manual to work from; the bit layouts change from member to member, slot to slot, and day to day as we work on it.
We would very much like to talk with people who have already done significant work in LLVM. It’s not a port for a compiler beginner though.