aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2001-10-04 18:01:46 +0000
committerAlan Modra <amodra@gmail.com>2001-10-04 18:01:46 +0000
commit1ae008798a8be59993e58f3ac0d5a0852cf2ca77 (patch)
tree8c9a7a79d2bac181aaeeb8996003c3878e45c27f
parent8ea52284ab03f528b75c1eed839632e1f57ffc7b (diff)
downloadgdb-1ae008798a8be59993e58f3ac0d5a0852cf2ca77.zip
gdb-1ae008798a8be59993e58f3ac0d5a0852cf2ca77.tar.gz
gdb-1ae008798a8be59993e58f3ac0d5a0852cf2ca77.tar.bz2
* config/tc-i386.c (parse_register): If not producing code for
x86_64, reject x86_64 register name matches. (md_assemble): Remove now redundant check for x86_64 regs.
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/config/tc-i386.c20
2 files changed, 13 insertions, 13 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 118bdcd..a74637a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2001-10-05 Alan Modra <amodra@bigpond.net.au>
+
+ * config/tc-i386.c (parse_register): If not producing code for
+ x86_64, reject x86_64 register name matches.
+ (md_assemble): Remove now redundant check for x86_64 regs.
+
2001-10-04 Alan Modra <amodra@bigpond.net.au>
* config/tc-ppc.c (md_assemble <DS relocs>): Test ppc_size as well
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 749d7c4..105bc8e 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1935,19 +1935,6 @@ md_assemble (line)
}
}
- if (i.reg_operands && flag_code < CODE_64BIT)
- {
- int op;
- for (op = i.operands; --op >= 0;)
- if ((i.types[op] & Reg)
- && (i.op[op].regs->reg_flags & (RegRex64|RegRex)))
- {
- as_bad (_("Extended register `%%%s' available only in 64bit mode."),
- i.op[op].regs->reg_name);
- return;
- }
- }
-
/* If matched instruction specifies an explicit instruction mnemonic
suffix, use it. */
if (i.tm.opcode_modifier & (Size16 | Size32 | Size64))
@@ -4531,6 +4518,13 @@ parse_register (reg_string, end_op)
}
}
+ if (r != NULL
+ && r->reg_flags & (RegRex64|RegRex)
+ && flag_code != CODE_64BIT)
+ {
+ return (const reg_entry *) NULL;
+ }
+
return r;
}