Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>1999-08-19 09:45:30 +0400
committerDoug Evans <dje@google.com>1999-08-19 09:45:30 +0400
commitd0c72719e59ae4cc4aac76c9d6745e7a393aa38b (patch)
tree2782b1dc31085cd55e6104d7284e0c5504201e2f /include/opcode/cgen.h
parentc909a1d631518011b24560cbea115cc2993c7a2c (diff)
* 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 84542a37c..2a5fd0da8 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.