summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/opcodes/fr30-opc.c
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/usr.bin/binutils/opcodes/fr30-opc.c')
-rw-r--r--gnu/usr.bin/binutils/opcodes/fr30-opc.c58
1 files changed, 43 insertions, 15 deletions
diff --git a/gnu/usr.bin/binutils/opcodes/fr30-opc.c b/gnu/usr.bin/binutils/opcodes/fr30-opc.c
index 50b86287edc..34c51566369 100644
--- a/gnu/usr.bin/binutils/opcodes/fr30-opc.c
+++ b/gnu/usr.bin/binutils/opcodes/fr30-opc.c
@@ -2,7 +2,7 @@
THIS FILE IS MACHINE GENERATED WITH CGEN.
-Copyright 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
+Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU Binutils and/or GDB, the GNU debugger.
@@ -40,8 +40,11 @@ static unsigned int dis_hash_insn PARAMS ((const char *, CGEN_INSN_INT));
/* Instruction formats. */
-#define F(f) & fr30_cgen_ifld_table[CONCAT2 (FR30_,f)]
-
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define F(f) & fr30_cgen_ifld_table[FR30_##f]
+#else
+#define F(f) & fr30_cgen_ifld_table[FR30_/**/f]
+#endif
static const CGEN_IFMT ifmt_empty = {
0, 0, 0x0, { { 0 } }
};
@@ -164,9 +167,17 @@ static const CGEN_IFMT ifmt_enter = {
#undef F
-#define A(a) (1 << CONCAT2 (CGEN_INSN_,a))
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define A(a) (1 << CGEN_INSN_##a)
+#else
+#define A(a) (1 << CGEN_INSN_/**/a)
+#endif
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define OPERAND(op) FR30_OPERAND_##op
+#else
+#define OPERAND(op) FR30_OPERAND_/**/op
+#endif
#define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
-#define OPERAND(op) CONCAT2 (FR30_OPERAND_,op)
#define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
/* The instruction table. */
@@ -1170,14 +1181,17 @@ static const CGEN_OPCODE fr30_cgen_insn_opcode_table[MAX_INSNS] =
};
#undef A
-#undef MNEM
#undef OPERAND
+#undef MNEM
#undef OP
/* Formats for ALIAS macro-insns. */
-#define F(f) & fr30_cgen_ifld_table[CONCAT2 (FR30_,f)]
-
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define F(f) & fr30_cgen_ifld_table[FR30_##f]
+#else
+#define F(f) & fr30_cgen_ifld_table[FR30_/**/f]
+#endif
static const CGEN_IFMT ifmt_ldi8m = {
16, 16, 0xf000, { { F (F_OP1) }, { F (F_I8) }, { F (F_RI) }, { 0 } }
};
@@ -1194,9 +1208,17 @@ static const CGEN_IFMT ifmt_ldi32m = {
/* Each non-simple macro entry points to an array of expansion possibilities. */
-#define A(a) (1 << CONCAT2 (CGEN_INSN_,a))
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define A(a) (1 << CGEN_INSN_##a)
+#else
+#define A(a) (1 << CGEN_INSN_/**/a)
+#endif
+#if defined (__STDC__) || defined (ALMOST_STDC) || defined (HAVE_STRINGIZE)
+#define OPERAND(op) FR30_OPERAND_##op
+#else
+#define OPERAND(op) FR30_OPERAND_/**/op
+#endif
#define MNEM CGEN_SYNTAX_MNEMONIC /* syntax value for mnemonic */
-#define OPERAND(op) CONCAT2 (FR30_OPERAND_,op)
#define OP(field) CGEN_SYNTAX_MAKE_FIELD (OPERAND (field))
/* The macro instruction table. */
@@ -1245,8 +1267,8 @@ static const CGEN_OPCODE fr30_cgen_macro_insn_opcode_table[] =
};
#undef A
-#undef MNEM
#undef OPERAND
+#undef MNEM
#undef OP
#ifndef CGEN_ASM_HASH_P
@@ -1262,7 +1284,7 @@ static const CGEN_OPCODE fr30_cgen_macro_insn_opcode_table[] =
static int
asm_hash_insn_p (insn)
- const CGEN_INSN *insn;
+ const CGEN_INSN *insn ATTRIBUTE_UNUSED;
{
return CGEN_ASM_HASH_P (insn);
}
@@ -1312,12 +1334,14 @@ asm_hash_insn (mnem)
static unsigned int
dis_hash_insn (buf, value)
- const char * buf;
- CGEN_INSN_INT value;
+ const char * buf ATTRIBUTE_UNUSED;
+ CGEN_INSN_INT value ATTRIBUTE_UNUSED;
{
return CGEN_DIS_HASH (buf, value);
}
+static void set_fields_bitsize PARAMS ((CGEN_FIELDS *, int));
+
/* Set the recorded length of the insn in the CGEN_FIELDS struct. */
static void
@@ -1346,6 +1370,7 @@ fr30_cgen_init_opcode_table (cd)
{
insns[i].base = &ib[i];
insns[i].opcode = &oc[i];
+ fr30_cgen_build_insn_regex (& insns[i]);
}
cd->macro_insn_table.init_entries = insns;
cd->macro_insn_table.entry_size = sizeof (CGEN_IBASE);
@@ -1354,7 +1379,10 @@ fr30_cgen_init_opcode_table (cd)
oc = & fr30_cgen_insn_opcode_table[0];
insns = (CGEN_INSN *) cd->insn_table.init_entries;
for (i = 0; i < MAX_INSNS; ++i)
- insns[i].opcode = &oc[i];
+ {
+ insns[i].opcode = &oc[i];
+ fr30_cgen_build_insn_regex (& insns[i]);
+ }
cd->sizeof_fields = sizeof (CGEN_FIELDS);
cd->set_fields_bitsize = set_fields_bitsize;