aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-i386.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2001-01-13 09:05:55 +0000
committerJan Hubicka <jh@suse.cz>2001-01-13 09:05:55 +0000
commite2914f484eed1dc5a9abd52301dae35f7500ff48 (patch)
tree219463cfd50346692bb759efd223bdfd6c2fb8ad /gas/config/tc-i386.c
parent272d76e0cbba693781509c939ddfda5941a50e9d (diff)
downloadgdb-e2914f484eed1dc5a9abd52301dae35f7500ff48.zip
gdb-e2914f484eed1dc5a9abd52301dae35f7500ff48.tar.gz
gdb-e2914f484eed1dc5a9abd52301dae35f7500ff48.tar.bz2
* i386.c (md_assemble): Check cpu_flags even for nullary instructions.
* i386.h (i386_optab): Fix pusha and ret templates. * i386-dis.c (dis386_att, disx86_64_att): Fix ret, lret and iret templates.
Diffstat (limited to 'gas/config/tc-i386.c')
-rw-r--r--gas/config/tc-i386.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 7cca4cf..da2bf48 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1707,9 +1707,14 @@ md_assemble (line)
|| t->extension_opcode == 7))) /* 0xd9,7 "f{n}stcw" */
continue;
+ /* Do not verify operands when there are none. */
else if (!t->operands)
- /* 0 operands always matches. */
- break;
+ {
+ if (t->cpu_flags & ~cpu_arch_flags)
+ continue;
+ /* We've found a match; break out of loop. */
+ break;
+ }
overlap0 = i.types[0] & t->operand_types[0];
switch (t->operands)