2003-06-23 Andrew Cagney <cagney@redhat.com>
* rs6000-tdep.c (rs6000_register_virtual_type): Add explict cases for 0 "int0" and 4 "int32" sized registers. * gdbtypes.c (builtin_type_int0): Define. (build_gdbtypes): Initialize builtin_type_int0. * gdbtypes.h (builtin_type_int0): Declare.
This commit is contained in:
parent
12f0bd746a
commit
449a5da47c
|
@ -1,3 +1,11 @@
|
|||
2003-06-23 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* rs6000-tdep.c (rs6000_register_virtual_type): Add explict cases
|
||||
for 0 "int0" and 4 "int32" sized registers.
|
||||
* gdbtypes.c (builtin_type_int0): Define.
|
||||
(build_gdbtypes): Initialize builtin_type_int0.
|
||||
* gdbtypes.h (builtin_type_int0): Declare.
|
||||
|
||||
2003-06-23 Stephane Carrez <stcarrez@nerim.fr>
|
||||
|
||||
* m68hc11-tdep.c (m68hc11_gdbarch_init): Clear gdb_arch_char_signed
|
||||
|
|
|
@ -60,6 +60,7 @@ struct type *builtin_type_long_double;
|
|||
struct type *builtin_type_complex;
|
||||
struct type *builtin_type_double_complex;
|
||||
struct type *builtin_type_string;
|
||||
struct type *builtin_type_int0;
|
||||
struct type *builtin_type_int8;
|
||||
struct type *builtin_type_uint8;
|
||||
struct type *builtin_type_int16;
|
||||
|
@ -3410,6 +3411,10 @@ build_gdbtypes (void)
|
|||
init_type (TYPE_CODE_STRING, TARGET_CHAR_BIT / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"string", (struct objfile *) NULL);
|
||||
builtin_type_int0 =
|
||||
init_type (TYPE_CODE_INT, 0 / 8,
|
||||
0,
|
||||
"int0_t", (struct objfile *) NULL);
|
||||
builtin_type_int8 =
|
||||
init_type (TYPE_CODE_INT, 8 / 8,
|
||||
0,
|
||||
|
|
|
@ -956,7 +956,10 @@ extern struct type *builtin_type_CORE_ADDR;
|
|||
(cf MIPS). */
|
||||
extern struct type *builtin_type_bfd_vma;
|
||||
|
||||
/* Explicit sizes - see C9X <intypes.h> for naming scheme */
|
||||
/* Explicit sizes - see C9X <intypes.h> for naming scheme. The "int0"
|
||||
is for when an architecture needs to describe a register that has
|
||||
no size. */
|
||||
extern struct type *builtin_type_int0;
|
||||
extern struct type *builtin_type_int8;
|
||||
extern struct type *builtin_type_uint8;
|
||||
extern struct type *builtin_type_int16;
|
||||
|
|
|
@ -1894,6 +1894,10 @@ rs6000_register_virtual_type (int n)
|
|||
int size = regsize (reg, tdep->wordsize);
|
||||
switch (size)
|
||||
{
|
||||
case 0:
|
||||
return builtin_type_int0;
|
||||
case 4:
|
||||
return builtin_type_int32;
|
||||
case 8:
|
||||
if (tdep->ppc_ev0_regnum <= n && n <= tdep->ppc_ev31_regnum)
|
||||
return builtin_type_vec64;
|
||||
|
@ -1904,8 +1908,8 @@ rs6000_register_virtual_type (int n)
|
|||
return builtin_type_vec128;
|
||||
break;
|
||||
default:
|
||||
return builtin_type_int32;
|
||||
break;
|
||||
internal_error (__FILE__, __LINE__, "Register %d size %d unknown",
|
||||
n, size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue