diff --git a/gas/ChangeLog b/gas/ChangeLog index 277727304c..e18d5ac2e7 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2010-08-18 H.J. Lu + + * config/tc-i386.c (build_modrm_byte): Check i.imm_operands + instead of VEXXDS. + 2010-08-18 Alan Modra * macro.c (sub_actual): Add back ampersand suffix when no diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 0e36a3e2b2..74e8b3736f 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -5264,15 +5264,15 @@ build_modrm_byte (void) && i.imm_operands == 1 && (i.types[0].bitfield.imm8 || i.types[i.operands - 1].bitfield.imm8))); - if (i.tm.opcode_modifier.vexvvvv == VEXXDS) + if (i.imm_operands == 2) + source = 2; + else { if (i.types[0].bitfield.imm8) source = 1; else source = 0; } - else - source = 2; break; case 5: break;