http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47744
--- Comment #24 from H.J. Lu <hjl.tools at gmail dot com> 2011-07-17 22:55:26 UTC --- (In reply to comment #23) > (In reply to comment #22) > > > > > case SUBREG: > > if (GET_CODE (SUBREG_REG (op)) != REG) > > return 0; > > Yes. It doesn't work. I got /export/gnu/import/git/gcc-x32/libgfortran/generated/matmul_i16.c: In function \u2018matmul_i16\u2019: /export/gnu/import/git/gcc-x32/libgfortran/generated/matmul_i16.c:374:1: error: insn does not satisfy its constraints: (insn 3660 703 704 76 (set (reg:TI 0 ax) (mem:TI (zero_extend:DI (plus:SI (reg:SI 2 cx [orig:818 ivtmp.117 ] [818]) (reg:SI 5 di [orig:292 dest_y ] [292]))) [6 MEM[base: dest_y_236, index: ivtmp.117_554, offset: 0B]+0 S16 A128])) /export/gnu/import/git/gcc-x32/libgfortran/generated/matmul_i16.c:284 60 {*movti_internal_rex64} (nil)) /export/gnu/import/git/gcc-x32/libgfortran/generated/matmul_i16.c:374:1: internal compiler error: in reload_cse_simplify_operands, at postreload.c:403 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. make[6]: *** [matmul_i16.lo] Error 1