aboutsummaryrefslogtreecommitdiff
path: root/include/opcode/cgen.h
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>1999-08-19 05:45:30 +0000
committerDoug Evans <dje@google.com>1999-08-19 05:45:30 +0000
commite8da1bf1bdc46de31ac99966e8f9085792985165 (patch)
tree47bae75eb548d70764d73427f86ebbf96e769e0f /include/opcode/cgen.h
parentb2d638c7ec140644c3df7d8abf9ca886b1f20ae0 (diff)
downloadgdb-e8da1bf1bdc46de31ac99966e8f9085792985165.zip
gdb-e8da1bf1bdc46de31ac99966e8f9085792985165.tar.gz
gdb-e8da1bf1bdc46de31ac99966e8f9085792985165.tar.bz2
* cgen.h (CGEN_INSN_MACH_HAS_P): New macro.
Diffstat (limited to 'include/opcode/cgen.h')
-rw-r--r--include/opcode/cgen.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/opcode/cgen.h b/include/opcode/cgen.h
index 84542a3..2a5fd0d 100644
--- a/include/opcode/cgen.h
+++ b/include/opcode/cgen.h
@@ -1037,6 +1037,12 @@ extern int cgen_macro_insn_count PARAMS ((CGEN_CPU_DESC));
/* Return value of base part of INSN. */
#define CGEN_INSN_BASE_VALUE(insn) \
CGEN_OPCODE_BASE_VALUE (CGEN_INSN_OPCODE (insn))
+
+/* Standard way to test whether INSN is supported by MACH.
+ MACH is one of enum mach_attr.
+ The "|1" is because the base mach is always selected. */
+#define CGEN_INSN_MACH_HAS_P(insn, mach) \
+((CGEN_INSN_ATTR_VALUE ((insn), CGEN_INSN_MACH) & ((1 << (mach)) | 1)) != 0)
/* Macro instructions.
Macro insns aren't real insns, they map to one or more real insns.