https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95421
Bug ID: 95421
Summary: [AArch64] Missing NEON functions documented on ARM's
web site
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: [email protected]
Target Milestone: ---
Created attachment 48636
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48636&action=edit
Full list of missing functions
This is a companion to #95399 (which is for the arm headers instead of
aarch64).
Quite a few functions listed in ARM's documentation
(<https://developer.arm.com/architectures/instruction-sets/simd-isas/neon/intrinsics>)
don't seem to be included in GCC's AArch64 arm_{neon,bf16,fp16}.h.
The attached list of 253 functions was generated by just grepping
arm_{neon,bf16,fp16}.h for each function in ARM's documentation so it's
possible there are some false positives, but the ones I've checked manually
seem correct. I'm also not sure how accurate ARM's documentation is.
Several functions are actually present in arm but not aarch64, I'm guessing
that will be an easy place to start. Here is that list:
vadd_p16
vadd_p64
vadd_p8
vaddq_p128
vaddq_p16
vaddq_p64
vaddq_p8
vceqq_p64
vceqz_p64
vceqzq_p64
vcvt_high_bf16_f32
vcvt_low_bf16_f32
vld2_lane_bf16
vld2q_lane_bf16
vld3_lane_bf16
vld3q_lane_bf16
vld4_lane_bf16
vld4q_lane_bf16
vrndns_f32
vst2_lane_bf16
vst2q_lane_bf16
vst3_lane_bf16
vst3q_lane_bf16
vst3q_lane_p8
vst3q_lane_s8
vst3q_lane_u8
vst4_lane_bf16
vst4q_lane_bf16