[clang] [CIR][NEON] Add lowering support for `vceqzd_s64` (PR #179779)

Andy Kaylor via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 4 14:49:48 PST 2026


================
@@ -1279,7 +1327,15 @@ CIRGenFunction::emitAArch64BuiltinExpr(unsigned builtinID, const CallExpr *expr,
   case NEON::BI__builtin_neon_vpaddd_s64:
   case NEON::BI__builtin_neon_vpaddd_f64:
   case NEON::BI__builtin_neon_vpadds_f32:
+    cgm.errorNYI(expr->getSourceRange(),
+                 std::string("unimplemented AArch64 builtin call: ") +
+                     getContext().BuiltinInfo.getName(builtinID));
+    return mlir::Value{};
   case NEON::BI__builtin_neon_vceqzd_s64:
+    ops.push_back(emitScalarExpr(expr->getArg(0)));
+    return emitAArch64CompareBuiltinExpr(
+        loc, ops[0], convertType(expr->getArg(0)->getType()),
+        llvm::ICmpInst::ICMP_EQ);
----------------
andykaylor wrote:

```suggestion
        cir::CmpOpKind::eq);
```

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


More information about the cfe-commits mailing list