[clang] [Clang][CIR] Vector-Saturating-shift-left intrinsics (PR #190728)

Andrzej WarzyƄski via cfe-commits cfe-commits at lists.llvm.org
Wed Apr 22 12:49:49 PDT 2026


================
@@ -2341,31 +2177,33 @@ CIRGenFunction::emitAArch64BuiltinExpr(unsigned builtinID, const CallExpr *expr,
   case NEON::BI__builtin_neon_vsubd_u64:
   case NEON::BI__builtin_neon_vqdmlalh_s16:
   case NEON::BI__builtin_neon_vqdmlslh_s16:
-  case NEON::BI__builtin_neon_vqshlud_n_s64:
+  case NEON::BI__builtin_neon_vqshlud_n_s64: {
+    cir::IntType intType = builder.getSInt64Ty();
+    ops[1] = builder.getSInt64(getZExtIntValueFromConstOp(ops[1]), loc);
+    return emitNeonCall(cgm, builder, {intType, intType}, ops,
+                        "aarch64.neon.sqshlu", convertType(expr->getType()),
+                        loc);
+  }
   case NEON::BI__builtin_neon_vqshld_n_u64:
-  case NEON::BI__builtin_neon_vqshld_n_s64:
+  case NEON::BI__builtin_neon_vqshld_n_s64: {
----------------
banach-space wrote:

Missing `cgm.errorNYI(` before

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


More information about the cfe-commits mailing list