https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118596
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- What is happening here is expand produces: (insn 6 5 7 (set (reg:HI 105) (subreg:HI (mem/v/j/c:BF (reg/f:DI 95 virtual-incoming-args) [1 BIT_FIELD_REF <MEM[(v32f16_ *)&a], 16, 0>+0 S2 A128]) 0)) "/app/example.cpp":5:26 -1 (nil)) But VREG does not replace virtual-incoming-args with ap .