https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64687
--- Comment #4 from Peter Bergner <bergner at gcc dot gnu.org> --- Here's a simplified test case and simplified options: [bergner@makalu-lp1 PR64687]$ cat decode.i union ieee754r_Decimal32 { _Decimal32 sd; unsigned int cc0; }; unsigned int __decoded32 (_Decimal32 a) { union ieee754r_Decimal32 d; d.sd = a; return d.cc0; } [bergner@makalu-lp1 PR64687]$ /home/bergner/gcc/build/gcc-fsf-mainline-pr64687-debug/gcc/xgcc -B/home/bergner/gcc/build/gcc-fsf-mainline-pr64687-debug/gcc -O1 -mno-hard-dfp -mcpu=power7 -S decode.i decode.i: In function ‘__decoded32’: decode.i:13:1: error: insn does not satisfy its constraints: } ^ (insn 16 4 3 2 (set (mem/c:SD (plus:DI (reg/f:DI 1 1) (const_int 48 [0x30])) [0 a+0 S4 A64]) (reg:SD 33 1)) decode.i:9 492 {movsd_hardfloat} (nil)) decode.i:13:1: internal compiler error: in extract_constrain_insn, at recog.c:2246