As an added bonus, I see that my patch set also included an old m68k patch that had been sitting in my tree, which fixes a crash when -m68040 is defined. I may have submitted it to port-m68k before. It hasn’t been tested with the new compiler either. Here’s that patch separately. It only matter when TARGET_68881 && TUNE_68040.
-Jake Index: external/gpl3/gcc/dist/gcc/config/m68k/m68k.md =================================================================== RCS file: /cvsroot/src/external/gpl3/gcc/dist/gcc/config/m68k/m68k.md,v retrieving revision 1.4 diff -u -u -r1.4 m68k.md --- external/gpl3/gcc/dist/gcc/config/m68k/m68k.md 24 Jan 2016 09:43:33 -0000 1.4 +++ external/gpl3/gcc/dist/gcc/config/m68k/m68k.md 26 Mar 2016 10:42:41 -0000 @@ -2132,9 +2132,9 @@ ;; into the kernel to emulate fintrz. They should also be faster ;; than calling the subroutines fixsfsi or fixdfsi. -(define_insn "fix_truncdfsi2" +(define_insn "fix_trunc<mode>si2" [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") - (fix:SI (fix:DF (match_operand:DF 1 "register_operand" "f")))) + (fix:SI (match_operand:FP 1 "register_operand" "f"))) (clobber (match_scratch:SI 2 "=d")) (clobber (match_scratch:SI 3 "=d"))] "TARGET_68881 && TUNE_68040" @@ -2143,9 +2143,9 @@ return "fmovem%.l %!,%2\;moveq #16,%3\;or%.l %2,%3\;and%.w #-33,%3\;fmovem%.l %3,%!\;fmove%.l %1,%0\;fmovem%.l %2,%!"; }) -(define_insn "fix_truncdfhi2" +(define_insn "fix_trunc<mode>hi2" [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") - (fix:HI (fix:DF (match_operand:DF 1 "register_operand" "f")))) + (fix:HI (match_operand:FP 1 "register_operand" "f"))) (clobber (match_scratch:SI 2 "=d")) (clobber (match_scratch:SI 3 "=d"))] "TARGET_68881 && TUNE_68040" @@ -2154,9 +2154,9 @@ return "fmovem%.l %!,%2\;moveq #16,%3\;or%.l %2,%3\;and%.w #-33,%3\;fmovem%.l %3,%!\;fmove%.w %1,%0\;fmovem%.l %2,%!"; }) -(define_insn "fix_truncdfqi2" +(define_insn "fix_trunc<mode>qi2" [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") - (fix:QI (fix:DF (match_operand:DF 1 "register_operand" "f")))) + (fix:QI (match_operand:FP 1 "register_operand" "f"))) (clobber (match_scratch:SI 2 "=d")) (clobber (match_scratch:SI 3 "=d"))] "TARGET_68881 && TUNE_68040"