[llvm-branch-commits] [llvm] 86f5891 - [llvm][Hexagon] Promote operand v2i1 to v2i32 (#135409)

Tom Stellard via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Tue Apr 15 17:22:48 PDT 2025


Author: Ikhlas Ajbar
Date: 2025-04-15T17:22:27-07:00
New Revision: 86f5891c5986a34ae2311bcfa9e4bf56b58f14e4

URL: https://github.com/llvm/llvm-project/commit/86f5891c5986a34ae2311bcfa9e4bf56b58f14e4
DIFF: https://github.com/llvm/llvm-project/commit/86f5891c5986a34ae2311bcfa9e4bf56b58f14e4.diff

LOG: [llvm][Hexagon] Promote operand v2i1 to v2i32 (#135409)

Fixes #118879

(cherry picked from commit 32c39092eab3a401d9d028c21f4707102fd70e32)

Added: 
    llvm/test/CodeGen/Hexagon/calloperand-v2i1.ll

Modified: 
    llvm/lib/Target/Hexagon/HexagonCallingConv.td

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/Hexagon/HexagonCallingConv.td b/llvm/lib/Target/Hexagon/HexagonCallingConv.td
index 2378bbc928d49..e0302b85fa948 100644
--- a/llvm/lib/Target/Hexagon/HexagonCallingConv.td
+++ b/llvm/lib/Target/Hexagon/HexagonCallingConv.td
@@ -65,6 +65,7 @@ def CC_Hexagon: CallingConv<[
   CCIfType<[i32],
     CCIfSplit<
       CCCustom<"CC_SkipOdd">>>,
+  CCIfType<[v2i1],  CCPromoteToType<v2i32>>,
   CCIfType<[v4i1],  CCPromoteToType<v4i16>>,
   CCIfType<[v8i1],  CCPromoteToType<v8i8>>,
 

diff  --git a/llvm/test/CodeGen/Hexagon/calloperand-v2i1.ll b/llvm/test/CodeGen/Hexagon/calloperand-v2i1.ll
new file mode 100644
index 0000000000000..2dcd5fe571e36
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/calloperand-v2i1.ll
@@ -0,0 +1,14 @@
+;RUN: llc -mtriple=hexagon  < %s | FileCheck %s
+
+; Check that v2i1 type is promoted to v2i32.
+; CHECK: call f
+; CHECK: r{{[0-9]+}}:{{[0-9]+}} = memd(r29+#8)
+
+define  <2 x i1> @test(<2 x i1> %1) {
+Entry:
+   %2 = call <2 x i1> @f(<2 x i1> %1)
+  ret <2 x i1> %2
+
+  }
+
+declare <2 x i1> @f(<2 x i1>)


        


More information about the llvm-branch-commits mailing list