gnuu.org: Writing Your Own Toy Compiler Using Flex, Bison and LLVM
"If you follow this article, you should end up with a language that can define functions, call functions, define variables, assign data to variables and perform basic math operations. It will support two basic types, doubles and integers. Some of the functionality is unimplemented, so you can have the satisfaction of actually implementing some of this stuff yourself and get the hang of writing a compiler with a little help."
Tutorial for writing your own compiler