[llvm] [LV] Split checking if tail-folding is possible, collecting masked ops. (PR #77612)

via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 8 06:26:29 PDT 2024


================
@@ -1601,8 +1601,24 @@ bool LoopVectorizationLegality::prepareToFoldTailByMasking() {
 
   LLVM_DEBUG(dbgs() << "LV: can fold tail by masking.\n");
 
-  MaskedOp.insert(TmpMaskedOp.begin(), TmpMaskedOp.end());
   return true;
 }
 
+void LoopVectorizationLegality::prepareToFoldTailByMasking() {
----------------
ayalz wrote:

Above comments worth updating:
```
  // Collect masked ops in temporary set first to avoid partially populating
  // MaskedOp if a block cannot be predicated.
```
comment needs rephrasing.

```
  // Check and mark all blocks for predication, including those that ordinarily
  // do not need predication such as the header block.
```
only Check, w/o mark

```
LLVM_DEBUG(dbgs() << "LV: Cannot fold tail by masking as requested.\n");
```
drop "as requested"?


https://github.com/llvm/llvm-project/pull/77612


More information about the llvm-commits mailing list