1999-06-13 Ian Lance Taylor <ian@zembu.com>
* i386-dis.c (FWAIT_OPCODE): Define.
+ (used_prefixes): New static variable.
(fetch_data): Don't print an error message if we have already
- found an fwait prefix.
- (ckprefix): Use FWAIT_OPCODE rather than 0x9b.
+ fetched some bytes successfully.
+ (ckprefix): Clear used_prefixes. Use FWAIT_OPCODE, not 0x9b.
+ (prefix_name): New static function.
(print_insn_i386): If setjmp fails, indicating a data error, but
- we have found an fwait prefix, then print it as an fwait
- instruction. In any case, return the number of bytes consumed, if
- any, rather than always returning -1.
+ we have managed to fetch some bytes, print the first one as a
+ prefix or a .byte pseudo-op. If fwait is followed by a non
+ floating point instruction, print the first prefix. Set
+ used_prefixes when prefixes are used. If any prefixes were not
+ used after disassembling the instruction, print the first prefix
+ instead of printing the instruction.
+ (putop): Set used_prefixes when prefixes are used.
+ (append_seg, OP_E, OP_G, OP_REG, OP_I, OP_sI, OP_J): Likewise.
+ (OP_DIR, OP_SIMD_Suffix): Likewise.
1999-06-07 Jakub Jelinek <jj@ultra.linux.cz>