[LLVMdev] Register Allocation: Interference graph
Josef Eisl
zapster at zapster.cc
Sat May 1 06:34:50 PDT 2010
Hello,
I want learn more about register allocation and do some analysis for a
current research project. After reading some papers (eg. Chaitin,
Briggs) I think its time to get my hands dirty :).
First I plan to (re)implement some of the classic approaches to get
familiar with the framework.
At the beginning the following questions came up:
- Is there some documentation about register allocation in LLVM?
- As far as I understand it, register allocators are implemented as
MachineFunctionPasses. Does a MachineFunction object contain all
information needed for a (classic) allocator?
- Is there already a pass that prints interference graph (Chaitin et al.
1981) or something similar like opt -view-cfg prints a CFG? If not, is
it even possible with the current LLVM infrastructure?
- Is there an LLVM register allocator that uses graph coloring or
something similar?
- Which LLVM allocator would you recommend to look into to get the basic
ideas how to use the framework?
Many thanks in advance!
Josef
More information about the llvm-dev
mailing list