[llvm-dev] [llvm dev] do we have allocator hook to use maximum different registers?
Quentin Colombet via llvm-dev
llvm-dev at lists.llvm.org
Tue May 10 13:41:01 PDT 2016
Hi Konstantin,
> On May 10, 2016, at 1:29 PM, Konstantin Vladimirov via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hi,
>
> Default register allocator tries to reuse the same registers over and
> over again even if register file have a plenty of registers to use.
> This creates parasite false dependencies and makes scheduling less
> effective.
>
> How to instruct allocator (may be override some virtual function in
> mine backend?) that it is profitable to use maximum number of
> available registers with minimal dependencies?
That is not possible and in the current scheme that would be hard to add. Indeed, the greedy reg alloc assigns live-ranges in an order based on some priority cost model. Thus, we do not know how close, in the scheduling order, two live-ranges are when we assign them in a row.
Cheers,
-Quentin
> In GCC this option is
> known as -frename-registers.
>
> ---
> With best regards, Konstantin
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
More information about the llvm-dev
mailing list