http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53724
--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> 2012-06-20 12:38:12 UTC --- Something like this diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index e2f5740..0daf601 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -13879,7 +13879,8 @@ print_reg (rtx x, int code, FILE *file) case 32: if (SSE_REG_P (x)) { - gcc_assert (!duplicated); + if (duplicated) + error ("unsupported `d' specifier on AVX register"); putc ('y', file); fputs (hi_reg_name[REGNO (x)] + 1, file); return;