[PATCH] D98232: [regalloc] Ensure Query::collectInterferringVregs is called before interval iteration

Mircea Trofin via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 16 10:07:36 PST 2021


mtrofin added a comment.

In D98232#3132500 <https://reviews.llvm.org/D98232#3132500>, @qcolombet wrote:

>> should we go ahead and revert (most of*) https://reviews.llvm.org/D35816?
>
> Although I think that's the right approach, neither @aditya_nandakumar or I had time to clean up and push the fix for eviction chains yet.
>
> @aditya_nandakumar do you have an ETA when you believe you can land that?
> Should I just take over at this point?
>
> Cheers,
> -Quenitn

Ack - but I think the 2 are somewhat orthogonal; at this point, the old functionality is basically dead code (only exercised by a few tests), unless someone explicitly opts into it.  So what I was thinking was to send an email to llvm-dev and see if anyone explicitly passes `-mllvm -consider-local-interval-cost`. If not (the argument goes), let's yank out the old code. Then, later, Aditya's (or your) patch would come in on a clean slate.

Or does the envisioned patch require most of the stuff that's currently 'dead'?

In D98232#3135324 <https://reviews.llvm.org/D98232#3135324>, @qcolombet wrote:

> Hi Mircea,
>
>> If not (the argument goes), let's yank out the old code.
>
> I thought x86 was using that code, but I see that you actually disabled that back in March:
>
>   commit ce61def529e2d9ef46b79c9d1f489d69b45b95bf
>   Author: Mircea Trofin <mtrofin at google.com>
>   Date:   Mon Mar 8 20:55:53 2021 -0800
>   
>       [regalloc] Ensure Query::collectInterferringVregs is called before interval iteration
>
>
>
>> If not (the argument goes), let's yank out the old code.
>
> Sounds like a plan.
>
>> Or does the envisioned patch require most of the stuff that's currently 'dead'?
>
> No, the "envisioned patch" actually runs a post regalloc pass that does the clean up.
>
> Cheers,
> -Quentin

Perfect!

The part of the original patch that gives me a bit of pause is the changes to the weights calculation, that part of the code isn't hidden behind a flag and I want to doublecheck if it's effectively dead (my suspicion is "not" - btw, if folks have an insight there, please let me know).

So the plan would be to yank the code behind a flag, and *maybe* the weights part, depending on the above.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D98232/new/

https://reviews.llvm.org/D98232



More information about the llvm-commits mailing list