https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127167
Roger Sayle <roger at nextmovesoftware dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |roger at nextmovesoftware dot
com
--- Comment #2 from Roger Sayle <roger at nextmovesoftware dot com> ---
I'm seeing...
xg++ -O2 -march=armv8.2-a+sve -DTEST_FULL dup_lane_bf16.c
diff dup_lane_bf16.old dup_lane_bf16.s
27c27
< dup z0.h, z0.h[0]
---
> mov z0.h, h0
35c35
< dup z0.h, z1.h[0]
---
> mov z0.h, h1
237c237
< .ident "GCC: (GNU) 17.0.0 20260817 (experimental)"
---
> .ident "GCC: (GNU) 17.0.0 20260828 (experimental)"
Alas I don't speak aarch64's SVE, but this looks like an improvement, if these
instructions are (indeed) equivalent.