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

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 19 01:21:40 PDT 2025


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

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


>From bf997278dedc1026ada8bff90c898064cf2a78cb Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Fri, 18 Apr 2025 00:23:08 -0700
Subject: [PATCH] [Hexagon] Construct SmallVector with an iterator range (NFC)

This patch switches to SmallVector so that we can construct an
instance with an iterator range.
---
 llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

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);



More information about the llvm-commits mailing list