------- Comment #1 from ubizjak at gmail dot com 2008-12-14 11:18 -------
There were many problems with -masm=intel, that were fixed for gcc-4.3 and
later by [1] and (many) followup patches. The change that you are looking for
is (gcc/config/i386/i386.c):
@@ -9037,8 +9047,9 @@ print_operand (FILE *file, rtx x, int co
else if (MEM_P (x))
{
- /* No `byte ptr' prefix for call instructions. */
- if (ASSEMBLER_DIALECT == ASM_INTEL && code != 'X' && code != 'P')
+ /* No `byte ptr' prefix for call instructions or BLKmode operands. */
+ if (ASSEMBLER_DIALECT == ASM_INTEL && code != 'X' && code != 'P'
+ && GET_MODE (x) != BLKmode)
{
const char * size;
switch (GET_MODE_SIZE (GET_MODE (x)))
However, this is just one of many changes to properly support -masm=intel, so
my best advice is to use gcc-4.3.x. This won't be fixed for gcc-4.2.
[1] http://gcc.gnu.org/ml/gcc-patches/2007-10/msg01254.html
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Known to work| |4.3.0
Resolution| |WONTFIX
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38521