================
@@ -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