[PATCH] D64523: [SLPVectorizer] Fix getSpillCost() calculation

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 15 09:28:54 PST 2019


nikic added a comment.

> No, there is no single BB. There can be more than one operand BBs that will have to be walked. For example, a TreeEntry in BB0 could have all its left operands in BB1 and all its right operands in BB2. In such case we would need to walk through both of them and perhaps keep the maximum cost? But anyway, given the lack of accuracy in the spill cost estimation I am not sure this is worth the trouble.

Hm, the approach used here doesn't really extend well to multiple BBs, or at least it's not obvious to me how I would manage the `LiveValues` in that case.

Not sure how to move forward here. The goal of this patch was mainly to make the calculation "not wrong" (in the sense of not getting completely astronomical results), but I don't think I know enough about the SLP vectorizer to actually make it "right".


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

https://reviews.llvm.org/D64523





More information about the llvm-commits mailing list