https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78439
--- Comment #9 from ktkachov at gcc dot gnu.org --- (In reply to Bernd Edlinger from comment #8) > Does something like that work? > > --- gcc/config/arm/vfp.md.orig 2016-11-10 11:38:03.000000000 +0100 > +++ gcc/config/arm/vfp.md 2016-11-22 10:28:33.724941776 +0100 > @@ -355,8 +355,8 @@ > ) > > (define_insn "*movdi_vfp_cortexa8" > - [(set (match_operand:DI 0 "nonimmediate_di_operand" > "=r,r,r,r,r,r,m,w,!r,w,w, Uv") > - (match_operand:DI 1 "di_operand" > "r,rDa,Db,Dc,mi,mi,r,r,w,w,Uvi,w"))] > + [(set (match_operand:DI 0 "nonimmediate_di_operand" > "=r,r,r,r,q,q,m,w,!r,w,w, Uv") > + (match_operand:DI 1 "di_operand" > "r,rDa,Db,Dc,mi,mi,q,r,w,w,Uvi,w"))] > "TARGET_32BIT && TARGET_HARD_FLOAT && arm_tune == TARGET_CPU_cortexa8 > && ( register_operand (operands[0], DImode) > || register_operand (operands[1], DImode)) Yes, that is what I'm testing. I'll send it to gcc-patches soon