I am learning programming LLVM backends.
Currently I am interested in analysis passes, later program transformations. (I assume as I will be more fluent with analysis then will be time for program transformations).
Could you recommend resources for learning ? (I know LLVM Programmers manual and Dragon Book ;) ).
By resources I mean not only tutorials, books, but especially small well-written projects. I'd like to read code examples, compile them and play with them (hack a little bit) to learn more about practical implementation.
Those codes does not have to be restricted to analysis part. The topic is LLVM backend programming in general, while analysis and program transformations are most interesting.