I recently discovered that there is an excellent tutorial for the LLVM that implements a JIT compiler for a little functional language called Kaleidoscope.
And since we just had the LOOP language in our theoretical computer science course at university, I decided to write a little compiler for that very simple language.
And three days later, the LOOP compiler was born.
If you're interested in how it works, better read the Kaleidoscope tutorial. My sources are rather scarcely documented.
One word of warning though: Their for loop is a bit broken, it'll iterate one time more often than you request ;-)