================
@@ -915,6 +918,27 @@ static mlir::Value emitCommonNeonBuiltinExpr(
                      std::string("unimplemented AArch64 builtin call: ") +
                          cgf.getContext().BuiltinInfo.getName(builtinID));
     break;
+  case NEON::BI__builtin_neon_vrnd32x_f32:
+  case NEON::BI__builtin_neon_vrnd32xq_f32:
+  case NEON::BI__builtin_neon_vrnd32x_f64:
+  case NEON::BI__builtin_neon_vrnd32xq_f64:
+  case NEON::BI__builtin_neon_vrnd32z_f32:
+  case NEON::BI__builtin_neon_vrnd32zq_f32:
+  case NEON::BI__builtin_neon_vrnd32z_f64:
+  case NEON::BI__builtin_neon_vrnd32zq_f64:
+  case NEON::BI__builtin_neon_vrnd64x_f32:
+  case NEON::BI__builtin_neon_vrnd64xq_f32:
+  case NEON::BI__builtin_neon_vrnd64x_f64:
+  case NEON::BI__builtin_neon_vrnd64xq_f64:
+  case NEON::BI__builtin_neon_vrnd64z_f32:
+  case NEON::BI__builtin_neon_vrnd64zq_f32:
+  case NEON::BI__builtin_neon_vrnd64z_f64:
+  case NEON::BI__builtin_neon_vrnd64zq_f64: {
----------------
banach-space wrote:

> @banach-space the original code is dead, without any changes it will never 
> hit the errorNYI

I don't believe that's true. If I take this example:
```c
float32x2_t test_vrnd32x_f32(float32x2_t a) {
  return vrnd32x_f32(a);
}
```

and attempt compiling with clang:
```bash
clang -cc1 -internal-isystem <path-to-build-dir>/lib/clang/23/include 
-nostdsysteminc -triple arm64-none-linux-gnu -target-feature +neon -o -     
-fclangir      -emit-llvm  -disable-O0-optnone file.c
```

I do indeed hit NYI:
```bas
/<path-to-build-dir>/lib/clang/23/include/arm_neon.h:70745:43: error: ClangIR 
code gen Not Yet Implemented: unimplemented AArch64 builtin call: 
__builtin_neon_vrnd32x_f32
 70745 |   __ret = __builtin_bit_cast(float32x2_t, 
__builtin_neon_vrnd32x_f32(__builtin_bit_cast(int8x8_t, __p0), 9));
       |                                           
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

What am I missing here? Also, why doesn't the compilation go via:

https://github.com/llvm/llvm-project/blob/f6e4e71fcdbff98cb060f87695c75f00b43bf918/clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp?plain=1#L2227

?

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

Reply via email to