mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-23 23:16:05 +00:00

The implementation made the assumption that any feature starting with "sve" meant that this was an SVE feature. This is not the case for "sve-b16b16", as this is a feature that applies to both SVE and SME. This meant that: ``` __attribute__((target("+sme2,+sve2,+sve-b16b16"))) svbfloat16_t foo(svbfloat16_t a, svbfloat16_t b, svbfloat16_t c) __arm_streaming { return svclamp_bf16(a, b, c); } ``` would result in an incorrect diagnostic saying that `svclamp_bf16` could only be used in non-streaming functions.