================
@@ -3264,17 +3268,28 @@ CIRGenFunction::emitAArch64BuiltinExpr(unsigned 
builtinID, const CallExpr *expr,
   case NEON::BI__builtin_neon_vcvtm_u64_v:
   case NEON::BI__builtin_neon_vcvtmq_u64_v:
   case NEON::BI__builtin_neon_vcvtn_s16_f16:
-  case NEON::BI__builtin_neon_vcvtn_s32_v:
   case NEON::BI__builtin_neon_vcvtnq_s16_f16:
-  case NEON::BI__builtin_neon_vcvtnq_s32_v:
   case NEON::BI__builtin_neon_vcvtn_u16_f16:
-  case NEON::BI__builtin_neon_vcvtn_u32_v:
   case NEON::BI__builtin_neon_vcvtnq_u16_f16:
+    cgm.errorNYI(expr->getSourceRange(),
+                 std::string("unimplemented AArch64 builtin call: ") +
+                     getContext().BuiltinInfo.getName(builtinID));
+    return mlir::Value{};
+
+  case NEON::BI__builtin_neon_vcvtn_s32_v:
----------------
banach-space wrote:

Yes, it's just about testing and keeping track of what's implemented and tested 
:)

The number of variants for the conversion intrinsics is rather large (non-fp16 
ones: https://arm-software.github.io/acle/neon_intrinsics/advsimd.html), so I 
would rather focus on non-fp16 for now. Also, for FP16 variants we need 
`-target-feature +fullfp16`, which means a different test file. 

I am basically splitting this into small PRs so that I can keep track.

https://github.com/llvm/llvm-project/pull/216757
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to