Hi, We were using "linearscan" register scan with llc -O0 option. As per the llvm blog, this is replaced with greedy register alloation. http://blog.llvm.org/2011/09/greedy-register-allocation-in-llvm-30.html But I think, this register allocation (i.e. 'greedy and 'basic') is blocked if used with -O0 option of llc. Only 'fast register allocator' option can be used with -O0. I wanted to understand that what will be consequence of forcefully enabling 'greedy allocation' ? Regards, Pankaj -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121106/15ba29da/attachment.html>
Jakob Stoklund Olesen
2012-Nov-06 18:38 UTC
[LLVMdev] which Register allocator to use with llc -O0
On Nov 6, 2012, at 6:59 AM, Pankaj Gode <godepankaj at yahoo.com> wrote:> Hi, > > We were using "linearscan" register scan with llc -O0 option. As per the llvm blog, this is replaced with greedy register alloation. > http://blog.llvm.org/2011/09/greedy-register-allocation-in-llvm-30.html > > But I think, this register allocation (i.e. 'greedy and 'basic') is blocked if used with -O0 option of llc. Only 'fast register allocator' option can be used with -O0. > > I wanted to understand that what will be consequence of forcefully enabling 'greedy allocation' ?You can use RAGreedy with -O0, but you need to enable the full optimizing register allocation pipeline: $ llc -O0 -optimize-regalloc Same thing if you want to use RABasic. /jakob -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121106/747d3b98/attachment.html>
Reasonably Related Threads
- [LLVMdev] Linear scan is going away after 3.0
- [LLVMdev] collect end line number for scope
- [LLVMdev] collect end line number for scope
- [LLVMdev] LowerDbgDeclare results in redeclaration of local variable
- [LLVMdev] LowerDbgDeclare results in redeclaration of local variable