------- Comment #6 from hjl dot tools at gmail dot com 2010-08-06 22:10 ------- This patch:
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 204211a..3dfbede 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -12921,7 +12921,7 @@ ix86_print_operand (FILE *file, rtx x, int code) if (ASSEMBLER_DIALECT == ASM_ATT) putc ('$', file); - fprintf (file, "0x%08lx", (long unsigned int) l); + fprintf (file, "0x%08lx", (long) (int) l); } /* These float cases don't actually occur as immediate operands. */ works for me. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45213