https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91060
--- Comment #9 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- (In reply to rsand...@gcc.gnu.org from comment #7) > (In reply to Christophe Lyon from comment #4) > > Unfortunately, it's still failing as of r273133. > > > > It fails at the very first check: > > v1 = 2 + v0; check (short, 8, v0, v1, 2, +, l); > > > > The generated code for main is: > > main: > ... > > vmov.16 d16[0], r0 > > sxth r1, r0 > > vadd.i16 q0, q8, q9 > > add ip, r1, #2 > > vmov.s16 r2, d0[3] > > Yeah, this looks wrong. We should be adding 2 to a single element > here, but we're extracting from one index and inserting into another. > The first quoted instruction should be using [3] as well. > > I'd be unsurprised if this was a target bug. Er, pretend that message never happened, first thing Monday morning :-)