[clang] [llvm] [AArch64] Decouple feature dependency expansion. (PR #94279)
Tomas Matheson via cfe-commits
cfe-commits at lists.llvm.org
Tue Jun 4 10:02:26 PDT 2024
================
@@ -69,8 +69,8 @@ void undefined(uint32x2_t v2i32, uint32x4_t v4i32, uint16x8_t v8i16, uint8x16_t
vrnd_f16(v4f16); // expected-error {{always_inline function 'vrnd_f16' requires target feature 'fullfp16'}}
vmaxnm_f16(v4f16, v4f16); // expected-error {{always_inline function 'vmaxnm_f16' requires target feature 'fullfp16'}}
vrndi_f16(v4f16); // expected-error {{always_inline function 'vrndi_f16' requires target feature 'fullfp16'}}
- // fp16fml
- vfmlal_low_f16(v2f32, v4f16, v4f16); // expected-error {{always_inline function 'vfmlal_low_f16' requires target feature 'fp16fml'}}
+ // fp16fml depends on fp-armv8
+ vfmlal_low_f16(v2f32, v4f16, v4f16); // expected-error {{always_inline function 'vfmlal_low_f16' requires target feature 'fp-armv8'}}
----------------
tmatheson-arm wrote:
Because dependencies are expanded for `target` attribute, the list of requirements for `vfmlal_low_f16` has been expanded to fp16fml+fp, and fp happens to get hit first. This is a symptom of target attribute being inconsistently expanded or not. If the user hits this error and adds +fp, they will get a new error saying that +fp16fml is missing too.
https://github.com/llvm/llvm-project/pull/94279
More information about the cfe-commits
mailing list