diff options
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-i386-intel.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gas/config/tc-i386-intel.c b/gas/config/tc-i386-intel.c index 49f558d..51fa38d 100644 --- a/gas/config/tc-i386-intel.c +++ b/gas/config/tc-i386-intel.c @@ -657,11 +657,12 @@ i386_intel_operand (char *operand_string, int got_a_float) && current_templates->start->name[3] == 0) || current_templates->start->base_opcode == 0x62 /* bound */) suffix = WORD_MNEM_SUFFIX; - else if (flag_code == CODE_16BIT + else if (flag_code != CODE_32BIT && (current_templates->start->opcode_modifier.jump == JUMP || current_templates->start->opcode_modifier.jump == JUMP_DWORD)) - suffix = LONG_DOUBLE_MNEM_SUFFIX; + suffix = flag_code == CODE_16BIT ? LONG_DOUBLE_MNEM_SUFFIX + : WORD_MNEM_SUFFIX; else if (got_a_float == 1) /* "f..." */ suffix = SHORT_MNEM_SUFFIX; else |