From bd333fb734d266b02c6c1b8a94f2bcdcef6fc9ec Mon Sep 17 00:00:00 2001 From: Kevin Buettner Date: Tue, 6 Apr 2010 00:14:43 +0000 Subject: [PATCH] * m32c-tdep.c (make_types): When calling `arch_type', pass size of type in bytes, not bits. --- gdb/ChangeLog | 5 +++++ gdb/m32c-tdep.c | 9 ++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 41395bf..9811e02 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-04-06 Kevin Buettner + + * m32c-tdep.c (make_types): When calling `arch_type', pass size of + type in bytes, not bits. + 2010-04-06 Pierre Muller * stabsread.c (define_symbol): Add support for char diff --git a/gdb/m32c-tdep.c b/gdb/m32c-tdep.c index 49163af..e776cb1 100644 --- a/gdb/m32c-tdep.c +++ b/gdb/m32c-tdep.c @@ -194,7 +194,8 @@ make_types (struct gdbarch *arch) this is called, so we avoid using them. */ tdep->voyd = arch_type (arch, TYPE_CODE_VOID, 1, "void"); tdep->ptr_voyd - = arch_type (arch, TYPE_CODE_PTR, gdbarch_ptr_bit (arch), NULL); + = arch_type (arch, TYPE_CODE_PTR, gdbarch_ptr_bit (arch) / TARGET_CHAR_BIT, + NULL); TYPE_TARGET_TYPE (tdep->ptr_voyd) = tdep->voyd; TYPE_UNSIGNED (tdep->ptr_voyd) = 1; tdep->func_voyd = lookup_function_type (tdep->voyd); @@ -202,14 +203,16 @@ make_types (struct gdbarch *arch) sprintf (type_name, "%s_data_addr_t", gdbarch_bfd_arch_info (arch)->printable_name); tdep->data_addr_reg_type - = arch_type (arch, TYPE_CODE_PTR, data_addr_reg_bits, xstrdup (type_name)); + = arch_type (arch, TYPE_CODE_PTR, data_addr_reg_bits / TARGET_CHAR_BIT, + xstrdup (type_name)); TYPE_TARGET_TYPE (tdep->data_addr_reg_type) = tdep->voyd; TYPE_UNSIGNED (tdep->data_addr_reg_type) = 1; sprintf (type_name, "%s_code_addr_t", gdbarch_bfd_arch_info (arch)->printable_name); tdep->code_addr_reg_type - = arch_type (arch, TYPE_CODE_PTR, code_addr_reg_bits, xstrdup (type_name)); + = arch_type (arch, TYPE_CODE_PTR, code_addr_reg_bits / TARGET_CHAR_BIT, + xstrdup (type_name)); TYPE_TARGET_TYPE (tdep->code_addr_reg_type) = tdep->func_voyd; TYPE_UNSIGNED (tdep->code_addr_reg_type) = 1; -- 2.7.4