MatzeB wrote:

The original situation looks something like:

```
#include <arm_neon.h>

void foo() {
   // ...
   uint8x16_t x = {};
   vreinterpretq_u8_s8(x);
}
```

Compiled with `clang -target aarch64-redhat-linux-gnu 
-march=-march=armv9-a+sve2+fp16+fp16fml+crypto+bf16+sm4+i8mm+sve2-bitperm+sve2-sha3+sve2-aes+sve2-sm4
  -Xclang -target-feature -Xclang -sve -c test.c`    (coming from a build 
system where `-target, -march` flags are set centrally but this particular 
target/team not being able to handle SVE but can only append flags to the 
build)...

This compiled fine in clang-17, but with the clang-19 the frontend produces 
this very unintuitive message (because this  is a neon intrinsic, not an SVE 
one) when checking the always_inline condition:

```
test.cpp:5:3: error: always_inline function 'vreinterpretq_u8_s8' requires 
target feature 'sve', but would be inlined into function 'foo' that is compiled 
without support for 'sve'
    5 |   vreinterpretq_u8_s8(x);
 ```

https://github.com/llvm/llvm-project/pull/142236
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to