aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2021-05-25 17:15:46 +0930
committerAlan Modra <amodra@gmail.com>2021-05-25 17:17:04 +0930
commitbc30a119f3e32321a3116ab4b0d415a3c332e9a3 (patch)
tree18bb0e90273af5001010725b17ecc54ab8649771
parent5d7f11f0e76ca290e3745c8836b92a5266cb84e2 (diff)
downloadgdb-bc30a119f3e32321a3116ab4b0d415a3c332e9a3.zip
gdb-bc30a119f3e32321a3116ab4b0d415a3c332e9a3.tar.gz
gdb-bc30a119f3e32321a3116ab4b0d415a3c332e9a3.tar.bz2
Regen cris files
* cris-desc.c: Regenerate. * cris-desc.h: Regenerate. * cris-opc.h: Regenerate. * po/POTFILES.in: Regenerate.
-rw-r--r--opcodes/ChangeLog7
-rw-r--r--opcodes/cris-desc.c61
-rw-r--r--opcodes/cris-desc.h13
-rw-r--r--opcodes/cris-opc.h13
-rw-r--r--opcodes/po/POTFILES.in3
5 files changed, 67 insertions, 30 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 263529e..fcb30c3 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,10 @@
+2021-05-25 Alan Modra <amodra@gmail.com>
+
+ * cris-desc.c: Regenerate.
+ * cris-desc.h: Regenerate.
+ * cris-opc.h: Regenerate.
+ * po/POTFILES.in: Regenerate.
+
2021-05-24 Mike Frysinger <vapier@gentoo.org>
* Makefile.am (HFILES): Add cris-desc.h & cris-opc.h.
diff --git a/opcodes/cris-desc.c b/opcodes/cris-desc.c
index 78302e1..af81a9a 100644
--- a/opcodes/cris-desc.c
+++ b/opcodes/cris-desc.c
@@ -2,7 +2,7 @@
THIS FILE IS MACHINE GENERATED WITH CGEN.
-Copyright 1996-2021 Free Software Foundation, Inc.
+Copyright (C) 1996-2021 Free Software Foundation, Inc.
This file is part of the GNU Binutils and/or GDB, the GNU debugger.
@@ -17,7 +17,8 @@ This file is part of the GNU Binutils and/or GDB, the GNU debugger.
License for more details.
You should have received a copy of the GNU General Public License along
- with this program; if not, see <http://www.gnu.org/licenses/>.
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
@@ -2450,6 +2451,11 @@ init_tables (void)
{
}
+#ifndef opcodes_error_handler
+#define opcodes_error_handler(...) \
+ fprintf (stderr, __VA_ARGS__); fputc ('\n', stderr)
+#endif
+
static const CGEN_MACH * lookup_mach_via_bfd_name (const CGEN_MACH *, const char *);
static void build_hw_table (CGEN_CPU_TABLE *);
static void build_ifield_table (CGEN_CPU_TABLE *);
@@ -2468,7 +2474,7 @@ lookup_mach_via_bfd_name (const CGEN_MACH *table, const char *name)
return table;
++table;
}
- abort ();
+ return NULL;
}
/* Subroutine of cris_cgen_cpu_open to build the hardware table. */
@@ -2610,8 +2616,11 @@ cris_cgen_rebuild_tables (CGEN_CPU_TABLE *cd)
{
if (cd->insn_chunk_bitsize != 0 && cd->insn_chunk_bitsize != mach->insn_chunk_bitsize)
{
- fprintf (stderr, "cris_cgen_rebuild_tables: conflicting insn-chunk-bitsize values: `%d' vs. `%d'\n",
- cd->insn_chunk_bitsize, mach->insn_chunk_bitsize);
+ opcodes_error_handler
+ (/* xgettext:c-format */
+ _("internal error: cris_cgen_rebuild_tables: "
+ "conflicting insn-chunk-bitsize values: `%d' vs. `%d'"),
+ cd->insn_chunk_bitsize, mach->insn_chunk_bitsize);
abort ();
}
@@ -2642,6 +2651,7 @@ cris_cgen_rebuild_tables (CGEN_CPU_TABLE *cd)
CGEN_CPU_OPEN_MACHS: bitmap of values in enum mach_attr
CGEN_CPU_OPEN_BFDMACH: specify 1 mach using bfd name
CGEN_CPU_OPEN_ENDIAN: specify endian choice
+ CGEN_CPU_OPEN_INSN_ENDIAN: specify instruction endian choice
CGEN_CPU_OPEN_END: terminates arguments
??? Simultaneous multiple isas might not make sense, but it's not (yet)
@@ -2655,6 +2665,7 @@ cris_cgen_cpu_open (enum cgen_cpu_open_arg arg_type, ...)
CGEN_BITSET *isas = 0; /* 0 = "unspecified" */
unsigned int machs = 0; /* 0 = "unspecified" */
enum cgen_endian endian = CGEN_ENDIAN_UNKNOWN;
+ enum cgen_endian insn_endian = CGEN_ENDIAN_UNKNOWN;
va_list ap;
if (! init_p)
@@ -2682,15 +2693,22 @@ cris_cgen_cpu_open (enum cgen_cpu_open_arg arg_type, ...)
const CGEN_MACH *mach =
lookup_mach_via_bfd_name (cris_cgen_mach_table, name);
- machs |= 1 << mach->num;
+ if (mach != NULL)
+ machs |= 1 << mach->num;
break;
}
case CGEN_CPU_OPEN_ENDIAN :
endian = va_arg (ap, enum cgen_endian);
break;
+ case CGEN_CPU_OPEN_INSN_ENDIAN :
+ insn_endian = va_arg (ap, enum cgen_endian);
+ break;
default :
- fprintf (stderr, "cris_cgen_cpu_open: unsupported argument `%d'\n",
- arg_type);
+ opcodes_error_handler
+ (/* xgettext:c-format */
+ _("internal error: cris_cgen_cpu_open: "
+ "unsupported argument `%d'"),
+ arg_type);
abort (); /* ??? return NULL? */
}
arg_type = va_arg (ap, enum cgen_cpu_open_arg);
@@ -2705,18 +2723,17 @@ cris_cgen_cpu_open (enum cgen_cpu_open_arg arg_type, ...)
if (endian == CGEN_ENDIAN_UNKNOWN)
{
/* ??? If target has only one, could have a default. */
- fprintf (stderr, "cris_cgen_cpu_open: no endianness specified\n");
+ opcodes_error_handler
+ (/* xgettext:c-format */
+ _("internal error: cris_cgen_cpu_open: no endianness specified"));
abort ();
}
cd->isas = cgen_bitset_copy (isas);
cd->machs = machs;
cd->endian = endian;
- /* FIXME: for the sparc case we can determine insn-endianness statically.
- The worry here is where both data and insn endian can be independently
- chosen, in which case this function will need another argument.
- Actually, will want to allow for more arguments in the future anyway. */
- cd->insn_endian = endian;
+ cd->insn_endian
+ = (insn_endian == CGEN_ENDIAN_UNKNOWN ? endian : insn_endian);
/* Table (re)builder. */
cd->rebuild_tables = cris_cgen_rebuild_tables;
@@ -2766,18 +2783,10 @@ cris_cgen_cpu_close (CGEN_CPU_DESC cd)
regfree (CGEN_INSN_RX (insns));
}
- if (cd->macro_insn_table.init_entries)
- free ((CGEN_INSN *) cd->macro_insn_table.init_entries);
-
- if (cd->insn_table.init_entries)
- free ((CGEN_INSN *) cd->insn_table.init_entries);
-
- if (cd->hw_table.entries)
- free ((CGEN_HW_ENTRY *) cd->hw_table.entries);
-
- if (cd->operand_table.entries)
- free ((CGEN_HW_ENTRY *) cd->operand_table.entries);
-
+ free ((CGEN_INSN *) cd->macro_insn_table.init_entries);
+ free ((CGEN_INSN *) cd->insn_table.init_entries);
+ free ((CGEN_HW_ENTRY *) cd->hw_table.entries);
+ free ((CGEN_HW_ENTRY *) cd->operand_table.entries);
free (cd);
}
diff --git a/opcodes/cris-desc.h b/opcodes/cris-desc.h
index 0a75b24..2b608ed 100644
--- a/opcodes/cris-desc.h
+++ b/opcodes/cris-desc.h
@@ -2,7 +2,7 @@
THIS FILE IS MACHINE GENERATED WITH CGEN.
-Copyright 1996-2021 Free Software Foundation, Inc.
+Copyright (C) 1996-2021 Free Software Foundation, Inc.
This file is part of the GNU Binutils and/or GDB, the GNU debugger.
@@ -17,13 +17,18 @@ This file is part of the GNU Binutils and/or GDB, the GNU debugger.
License for more details.
You should have received a copy of the GNU General Public License along
- with this program; if not, see <http://www.gnu.org/licenses/>.
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifndef CRIS_CPU_H
#define CRIS_CPU_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
#define CGEN_ARCH cris
/* Given symbol S, return cris_cgen_<S>. */
@@ -387,4 +392,8 @@ extern const CGEN_HW_ENTRY cris_cgen_hw_table[];
+ #ifdef __cplusplus
+ }
+ #endif
+
#endif /* CRIS_CPU_H */
diff --git a/opcodes/cris-opc.h b/opcodes/cris-opc.h
index 4e297a6..d7ed8dc 100644
--- a/opcodes/cris-opc.h
+++ b/opcodes/cris-opc.h
@@ -2,7 +2,7 @@
THIS FILE IS MACHINE GENERATED WITH CGEN.
-Copyright 1996-2021 Free Software Foundation, Inc.
+Copyright (C) 1996-2021 Free Software Foundation, Inc.
This file is part of the GNU Binutils and/or GDB, the GNU debugger.
@@ -17,13 +17,18 @@ This file is part of the GNU Binutils and/or GDB, the GNU debugger.
License for more details.
You should have received a copy of the GNU General Public License along
- with this program; if not, see <http://www.gnu.org/licenses/>.
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifndef CRIS_OPC_H
#define CRIS_OPC_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* Enum declaration for cris instruction types. */
typedef enum cgen_insn_type {
CRIS_INSN_INVALID, CRIS_INSN_NOP, CRIS_INSN_MOVE_B_R, CRIS_INSN_MOVE_W_R
@@ -151,4 +156,8 @@ struct cgen_fields
}
+ #ifdef __cplusplus
+ }
+ #endif
+
#endif /* CRIS_OPC_H */
diff --git a/opcodes/po/POTFILES.in b/opcodes/po/POTFILES.in
index 7572204..0659b99 100644
--- a/opcodes/po/POTFILES.in
+++ b/opcodes/po/POTFILES.in
@@ -30,8 +30,11 @@ cgen-dis.c
cgen-opc.c
cr16-dis.c
cr16-opc.c
+cris-desc.c
+cris-desc.h
cris-dis.c
cris-opc.c
+cris-opc.h
crx-dis.c
crx-opc.c
csky-dis.c