Re: [PATCH 1/3] gdb: Added builtin types for 24 bit integers.

Simon Marchi
2018-08-23T19:41:21Z

On 2018-08-23 13:35, John Darrington wrote:
> * gdb/gdbtypes.h (struct builtin_type): New members builtin_int24
> and builtin_uint24;
> * gdb/gdbtypes.c: Initialize them.
> * gdb/doc/gdb.texinfo: Add them.
> ---
> gdb/doc/gdb.texinfo | 2 ++
> gdb/gdbtypes.c | 4 ++++
> gdb/gdbtypes.h | 2 ++
> 3 files changed, 8 insertions(+)
>
> diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
> index 5068c0ac81..e4ecd57a9e 100644
> --- a/gdb/doc/gdb.texinfo
> +++ b/gdb/doc/gdb.texinfo
> @@ -42379,6 +42379,7 @@ Boolean type, occupying a single bit.
>
> @item int8
> @itemx int16
> +@itemx int24
> @itemx int32
> @itemx int64
> @itemx int128
> @@ -42386,6 +42387,7 @@ Signed integer types holding the specified
> number of bits.
>
> @item uint8
> @itemx uint16
> +@itemx uint24
> @itemx uint32
> @itemx uint64
> @itemx uint128
> diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
> index 65b1211ec4..05bf7b1134 100644
> --- a/gdb/gdbtypes.c
> +++ b/gdb/gdbtypes.c
> @@ -5402,6 +5402,10 @@ gdbtypes_post_init (struct gdbarch *gdbarch)
> = arch_integer_type (gdbarch, 16, 0, "int16_t");
> builtin_type->builtin_uint16
> = arch_integer_type (gdbarch, 16, 1, "uint16_t");
> + builtin_type->builtin_int24
> + = arch_integer_type (gdbarch, 24, 0, "int24_t");
> + builtin_type->builtin_uint24
> + = arch_integer_type (gdbarch, 24, 1, "uint24_t");
> builtin_type->builtin_int32
> = arch_integer_type (gdbarch, 32, 0, "int32_t");
> builtin_type->builtin_uint32
> diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
> index 14059ab3dc..eb7c365b71 100644
> --- a/gdb/gdbtypes.h
> +++ b/gdb/gdbtypes.h
> @@ -1611,6 +1611,8 @@ struct builtin_type
> struct type *builtin_uint8;
> struct type *builtin_int16;
> struct type *builtin_uint16;
> + struct type *builtin_int24;
> + struct type *builtin_uint24;
> struct type *builtin_int32;
> struct type *builtin_uint32;
> struct type *builtin_int64;

Hi John,

It's always useful to have a little commit message along with the patch
to explain why this is needed. What's your problem and how does it help
you solve it. Could you expand a bit on your patches?

Thanks,

Simon