[llvm] [InstCombine][NFC] Use uint64_t for ExtractIdx in vector_extract fold (PR #225156)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 28 06:47:00 PDT 2026
https://github.com/ahradwan2-public updated https://github.com/llvm/llvm-project/pull/225156
>From 34b3fef94bf936101da36b14dcf15177b02906a8 Mon Sep 17 00:00:00 2001
From: Ahmed Radwan <ahradwan at amd.com>
Date: Mon, 21 Sep 2026 14:08:05 -0400
Subject: [PATCH 1/2] [InstCombine][NFC] Use uint64_t for ExtractIdx in
vector_extract fold
---
llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
index 7fae7b8cea710..a1daf386da35b 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
@@ -4146,7 +4146,7 @@ Instruction *InstCombinerImpl::visitCallInst(CallInst &CI) {
Type *ReturnType = II->getType();
// (extract_vector (insert_vector InsertTuple, InsertValue, InsertIdx),
// ExtractIdx)
- unsigned ExtractIdx = cast<ConstantInt>(Idx)->getZExtValue();
+ uint64_t ExtractIdx = cast<ConstantInt>(Idx)->getZExtValue();
Value *InsertTuple, *InsertIdx, *InsertValue;
if (match(Vec, m_Intrinsic<Intrinsic::vector_insert>(m_Value(InsertTuple),
m_Value(InsertValue),
>From 77f10c81eb463956e3396aa5eda31196e2b1834b Mon Sep 17 00:00:00 2001
From: Ahmed Radwan <ahradwan at amd.com>
Date: Wed, 23 Sep 2026 12:33:43 -0400
Subject: [PATCH 2/2] [InstCombine][NFC] Changed Index to uint64_t for symmetry
---
llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
index a1daf386da35b..efba8a57b49a0 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
@@ -4152,7 +4152,7 @@ Instruction *InstCombinerImpl::visitCallInst(CallInst &CI) {
m_Value(InsertValue),
m_Value(InsertIdx))) &&
InsertValue->getType() == ReturnType) {
- unsigned Index = cast<ConstantInt>(InsertIdx)->getZExtValue();
+ uint64_t Index = cast<ConstantInt>(InsertIdx)->getZExtValue();
// Case where we get the same index right after setting it.
// extract.vector(insert.vector(InsertTuple, InsertValue, Idx), Idx) -->
// InsertValue
More information about the llvm-commits
mailing list