https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92822
nsz at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |nsz at gcc dot gnu.org --- Comment #2 from nsz at gcc dot gnu.org --- e.g. #include <arm_neon.h> float32x2_t foo (float32x2_t v0, float32x4_t v1) { return vmulx_laneq_f32 (v0, v1, 0); } used to get translated to foo: fmulx v0.2s, v0.2s, v1.s[0] ret now it is foo: adrp x0, .LC0 ldr q2, [x0, #:lo12:.LC0] tbl v1.16b, {v1.16b}, v2.16b fmulx v0.2s, v0.2s, v1.2s ret .size foo, .-foo .section .rodata.cst16,"aM",@progbits,16 .align 4 .LC0: .byte 0 .byte 1 .byte 2 .byte 3 .byte 0 .byte 1 .byte 2 .byte 3 .byte 0 .byte 1 .byte 2 .byte 3 .byte 4 .byte 5 .byte 6 .byte 7