[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 Mar 16 14:29:10 PDT 2021
mtrofin added a comment.
In D98232#2630273 <https://reviews.llvm.org/D98232#2630273>, @nikic wrote:
> Unfortunately I'm not familiar with RegAlloc, but I somehow doubt that this kind of compile-time hit is intrinsically necessary to address this issue.
The problem is that the previous use of the APIs was incorrect - the code before was sometimes using stale data, because it was incorrectly not calling `collectInterferingVRegs`. The compile time regression is reflective of the effort required to refresh the data.
I think we have a situation like this:
- (status quo) no compile time regression, but incorrect functionality
- (patch) compile time regression, correct functionality
- remove patch that originally introduced this functionality (https://reviews.llvm.org/D35816), but then there are cases where we hit regressions in code quality
- <options that I am not aware of - actionable suggestions very welcome!>
What are the guidelines regarding compile time regressions (e.g. what constitutes acceptable; what is the tradeoff hierarchy, e.g. in this case, buggy code)?
> This is also missing a test case.
That's reasonable. I'll craft one up while we explore the options here.
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