[PATCH/RFA] new builtin_type_{,u}int128
Elena Zannoni
ezannoni@cygnus.com
Fri Nov 2 04:22:00 GMT 2001
This patch adds new builtin types int128 and uint128 to Gdb.
It allows gdb to deal with 128 bits wide registers, at least minimally.
Elena
2001-11-13 Elena Zannoni <ezannoni@redhat.com>
From Andrew Cagney <cagney@redhat.com>:
* gdbtypes.h (builtin_type_int128, builtin_type_uint128): Declare.
* gdbtypes.c (_initialize_gdbtypes, build_gdbtypes): Initialize
new builtin types.
Index: gdbtypes.h
===================================================================
RCS file: /cvs/src/src/gdb/gdbtypes.h,v
retrieving revision 1.16
diff -u -p -r1.16 gdbtypes.h
--- gdbtypes.h 2001/09/08 10:16:57 1.16
+++ gdbtypes.h 2001/11/13 15:44:45
@@ -897,6 +897,8 @@ extern struct type *builtin_type_int32;
extern struct type *builtin_type_uint32;
extern struct type *builtin_type_int64;
extern struct type *builtin_type_uint64;
+extern struct type *builtin_type_int128;
+extern struct type *builtin_type_uint128;
/* SIMD types. We inherit these names from GCC. */
extern struct type *builtin_type_v4sf;
Index: gdbtypes.c
===================================================================
RCS file: /cvs/src/src/gdb/gdbtypes.c,v
retrieving revision 1.26
diff -u -p -r1.26 gdbtypes.c
--- gdbtypes.c 2001/10/28 12:43:12 1.26
+++ gdbtypes.c 2001/11/13 15:47:23
@@ -67,6 +67,8 @@ struct type *builtin_type_int32;
struct type *builtin_type_uint32;
struct type *builtin_type_int64;
struct type *builtin_type_uint64;
+struct type *builtin_type_int128;
+struct type *builtin_type_uint128;
struct type *builtin_type_bool;
struct type *builtin_type_v4sf;
struct type *builtin_type_v4si;
@@ -2931,6 +2933,14 @@ build_gdbtypes (void)
init_type (TYPE_CODE_INT, 64 / 8,
TYPE_FLAG_UNSIGNED,
"uint64_t", (struct objfile *) NULL);
+ builtin_type_int128 =
+ init_type (TYPE_CODE_INT, 128 / 8,
+ 0,
+ "int128_t", (struct objfile *) NULL);
+ builtin_type_uint128 =
+ init_type (TYPE_CODE_INT, 128 / 8,
+ TYPE_FLAG_UNSIGNED,
+ "uint128_t", (struct objfile *) NULL);
builtin_type_bool =
init_type (TYPE_CODE_BOOL, TARGET_CHAR_BIT / TARGET_CHAR_BIT,
0,
@@ -2944,7 +2954,6 @@ build_gdbtypes (void)
&showlist);
opaque_type_resolution = 1;
-
/* Build SIMD types. */
builtin_type_v4sf
= init_simd_type ("__builtin_v4sf", builtin_type_float, "f", 4);
@@ -3035,6 +3044,8 @@ _initialize_gdbtypes (void)
register_gdbarch_swap (&builtin_type_uint32, sizeof (struct type *), NULL);
register_gdbarch_swap (&builtin_type_int64, sizeof (struct type *), NULL);
register_gdbarch_swap (&builtin_type_uint64, sizeof (struct type *), NULL);
+ register_gdbarch_swap (&builtin_type_int128, sizeof (struct type *), NULL);
+ register_gdbarch_swap (&builtin_type_uint128, sizeof (struct type *), NULL);
register_gdbarch_swap (&builtin_type_v4sf, sizeof (struct type *), NULL);
register_gdbarch_swap (&builtin_type_v4si, sizeof (struct type *), NULL);
register_gdbarch_swap (&builtin_type_v8qi, sizeof (struct type *), NULL);
More information about the Gdb-patches
mailing list