The greedy allocator is global, but so was the old linear scan allocator. Cameron On Sep 26, 2011, at 2:12 AM, Carlo Alberto Ferraris <cafxx at strayorange.com> wrote:> Just a quick question: is greedy still a local allocator (i.e. only takes into consideration the current bb) or a global one (takes into consideration the whole function)? > <cafxx.vcf> > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> The greedy allocator is global, but so was the old linear scan allocator.In http://blog.llvm.org/2011/09/greedy-register-allocation-in-llvm-30.html , it says "The algorithm is local, and it cannot clean up messes that extend beyond a single basic block". Does it mean the rewriter algorithm not the linear scan? Regards, chenwj -- Wei-Ren Chen (陳韋任) Computer Systems Lab, Institute of Information Science, Academia Sinica, Taiwan (R.O.C.) Tel:886-2-2788-3799 #1667
Jakob Stoklund Olesen
2011-Sep-26 14:49 UTC
[LLVMdev] Greedy Register Allocation in LLVM 3.0
On Sep 26, 2011, at 2:41 AM, 陳韋任 wrote:>> The greedy allocator is global, but so was the old linear scan allocator. > > In http://blog.llvm.org/2011/09/greedy-register-allocation-in-llvm-30.html > , it says "The algorithm is local, and it cannot clean up messes that > extend beyond a single basic block". Does it mean the rewriter algorithm > not the linear scan?Yes, exactly. The rewriter is local. /jakob