This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [PATCH/RFA] new builtin_type_{,u}int128

[Get raw message]

Looks good to me.

Elena Zannoni <ezannoni@cygnus.com> writes:

> 
> 
> 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);
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]