summaryrefslogtreecommitdiff
path: root/opcodes/ia64-gen.c
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/ia64-gen.c')
-rw-r--r--opcodes/ia64-gen.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/opcodes/ia64-gen.c b/opcodes/ia64-gen.c
index f6bfda00620..a4e2cecd20b 100644
--- a/opcodes/ia64-gen.c
+++ b/opcodes/ia64-gen.c
@@ -1061,10 +1061,11 @@ in_iclass (struct ia64_opcode *idesc, struct iclass *ic,
&& (idesc->name[len] == '\0'
|| idesc->name[len] == '.'));
- /* All break and nop variations must match exactly. */
+ /* All break, nop, and hint variations must match exactly. */
if (resolved &&
(strcmp (ic->name, "break") == 0
- || strcmp (ic->name, "nop") == 0))
+ || strcmp (ic->name, "nop") == 0
+ || strcmp (ic->name, "hint") == 0))
resolved = strcmp (ic->name, idesc->name) == 0;
/* Assume restrictions in the FORMAT/FIELD negate resolution,
@@ -1257,6 +1258,22 @@ lookup_regindex (const char *name, int specifier)
return 18;
else if (strstr (name, "[RNAT]"))
return 19;
+ else if (strstr (name, "[FCR]"))
+ return 21;
+ else if (strstr (name, "[EFLAG]"))
+ return 24;
+ else if (strstr (name, "[CSD]"))
+ return 25;
+ else if (strstr (name, "[SSD]"))
+ return 26;
+ else if (strstr (name, "[CFLG]"))
+ return 27;
+ else if (strstr (name, "[FSR]"))
+ return 28;
+ else if (strstr (name, "[FIR]"))
+ return 29;
+ else if (strstr (name, "[FDR]"))
+ return 30;
else if (strstr (name, "[CCV]"))
return 32;
else if (strstr (name, "[ITC]"))