[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:00:38 PDT 2021
mtrofin added a comment.
In D98232#2630027 <https://reviews.llvm.org/D98232#2630027>, @mtrofin wrote:
> In D98232#2630006 <https://reviews.llvm.org/D98232#2630006>, @nikic wrote:
>
>> I've reverted this change because it causes significant compile-time regressions, e.g. >5% on sqlite: https://llvm-compile-time-tracker.com/compare.php?from=0aa637b2037d882ddf7861284169abf63f524677&to=d40b4911bd9aca0573752e065f29ddd9aff280e1&stat=instructions I'm assuming a regression of that size wasn't intentional here.
>
> It may be an effect of the code actually performing correctly (see the CL description). I'll confirm that is the case.
Yup - the increased time in the regalloc is due to the added call to collectInterferringVRegs. A quick verification is to just add the call in the 'old' code, which leads to a similar timing effect.
This is intentional - the fix is a correctness issue (without the fix, the query is actually stale).
@nikic - any pushback to reapplying the patch?
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