[LLVMdev] recommendation books on code generation?

Reed Kotler rkotler at mips.com
Fri Feb 22 02:32:37 PST 2013


I don't think you need any special books.

There is nothing complicated going on that is not in a basic compiler 
book. Mostly you have to understand how they implemented basic things in 
this framework.

Knowing modern C++ (i.e. templates, overloading, etc...) and STL pretty 
well is more important than knowing about compiler theory in order to 
understand things.

The documentation online just needs to be read many times and you need 
to do your own port or try and understand one for an architecture that 
you already know pretty well.

http://llvm.org/docs/ProgrammersManual.html
http://llvm.org/docs/

You need to know what a phi node is. That is about the only thing that 
is mostly something you could not just learn from reading the code 
because it's a special term.

http://en.wikipedia.org/wiki/Static_single_assignment_form

Reed


On 02/21/2013 11:48 PM, Jun Koi wrote:
> hi,
>
> i am reading LLVM code, focusing on the code generation (backend) part.
> however, it is still rather tough to understand all the code, so i think
> i need to improve my background on compiler backend first.
>
> any recommendation on good books that introduces all the related
> techniques used by LLVM: DAG lowering, DAG legalization,instruction
> selection, scheduling, register allocation, etc...
>
> i looked at the Dragon book, but it seems outdated, and didnt introduce
> all the above concepts.
>
> many thanks,
> Jun
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>





More information about the llvm-dev mailing list