[llvm] [HEXAGON] Extend/Truncate the shift amount into i32 (PR #179499)

Ikhlas Ajbar via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 3 09:03:03 PST 2026


================
@@ -0,0 +1,24 @@
+; REQUIRES: asserts
+; RUN: llc -march=hexagon -verify-machineinstrs -o - < %s 2>&1 | FileCheck %s
+
+; This is a crash / fatal-error regression test:
+; llc used to hit:
+;   LLVM ERROR: invalid node: operand #1 must have type i32, but has type i16
+; during DAG combine / ISel:
+;   t61: v4i16 = HexagonISD::VASR t56, Constant:i16<1>
+;   t56: v4i16 = mulhs ...
+;
+; The test ensures llc does NOT emit "LLVM ERROR" and produces assembly for the function.
+
+; CHECK-NOT: LLVM ERROR:
+; CHECK-NOT: invalid node:
----------------
iajbar wrote:

Could please add a check for the expect instruction?

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


More information about the llvm-commits mailing list