[llvm] [Hexagon] Construct SmallVector with an iterator range (NFC) (PR #136416)

via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 19 01:22:14 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-backend-hexagon

Author: Kazu Hirata (kazutakahirata)

<details>
<summary>Changes</summary>

This patch switches to SmallVector so that we can construct an
instance with an iterator range.


---
Full diff: https://github.com/llvm/llvm-project/pull/136416.diff


1 Files Affected:

- (modified) llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp (+1-3) 


``````````diff
diff --git a/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp b/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
index 79169a0c20e58..9604f252dd3df 100644
--- a/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
@@ -1079,9 +1079,7 @@ bool PolynomialMultiplyRecognize::promoteTypes(BasicBlock *LoopB,
       return false;
 
   // Perform the promotion.
-  std::vector<Instruction*> LoopIns;
-  std::transform(LoopB->begin(), LoopB->end(), std::back_inserter(LoopIns),
-                 [](Instruction &In) { return &In; });
+  SmallVector<Instruction *> LoopIns(llvm::make_pointer_range(*LoopB));
   for (Instruction *In : LoopIns)
     if (!In->isTerminator())
       promoteTo(In, DestTy, LoopB);

``````````

</details>


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


More information about the llvm-commits mailing list