* gdbtypes.h (builtin_type_ieee_single, builtin_type_ieee_double,
builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext, builtin_type_ia64_spill, builtin_type_ia64_quad): Remove. (init_float_type, init_complex_type): Add prototypes. * gdbtypes.c (builtin_type_ieee_single, builtin_type_ieee_double, builtin_type_i387_ext, builtin_type_m68881_ext, builtin_type_arm_ext, builtin_type_ia64_spill, builtin_type_ia64_quad): Remove. (_initialize_gdbtypes): Do not initialize them. (build_flt): Rename to ... (init_float_type): ... this. Make global. (build_complex): Rename to ... (init_complex_type): ... this. Make global. Remove BIT argument. (gdbtypes_post_init): Update calls. * ada-lang.c (ada_language_arch_info): Use init_float_type. * jv-lang.c (build_java_types): Likewise. * m2-lang.c (build_m2_types): Likewise. * f-lang.c (build_fortran_types): Use init_float_type and init_complex_type. * target-descriptions.c (tdesc_gdb_type): Call init_float_type instead of using builtin_type_ieee_single, builtin_type_ieee_double, or builtin_type_arm_ext. * ia64-tdep.h (struct gdbarch_tdep): Add ia64_ext_type member. * ia64-tdep.c (builtin_type_ia64_ext): Remove. (_initialize_ia64_tdep): Do not initialize it. (floatformat_valid, floatformat_ia64_ext, floatformats_ia64_ext): Move up. (ia64_ext_type): New function. (ia64_register_reggroup_p, ia64_convert_register_p, ia64_register_to_value, ia64_value_to_register, ia64_extract_return_value, ia64_store_return_value): Use ia64_ext_type instead of builtin_type_ia64_ext. * i386-tdep.h (struct gdbarch_tdep): Add i387_ext_type member. (i387_ext_type): Add prototype. * i386-tdep.c (i387_ext_type): New function. (i386_extract_return_value, i386_store_return_value, i386_register_type): Use it instead of builtin_type_i387_ext. * amd64-tdep.c (amd64_register_type): Likewise. * i387-tdep.c (print_i387_value, i387_register_to_value, i387_value_to_register): Likewise. (print_i387_value, print_i387_ext): Add GDBARCH argument. (print_i387_ext, i387_print_float_info): Pass to subroutines. * m68k-tdep.h (struct gdbarch_tdep): Add m68881_ext_type member. * m68k-tdep.c (m68881_ext_type): New function. (m68k_register_type, m68k_convert_register_p): Use it instead of builtin_type_m68881_ext. * arm-tdep.h (struct gdbarch_tdep): Add arm_ext_type member. * arm-tdep.c (arm_ext_type): New function. (arm_register_type): Use it instead of builtin_type_arm_ext. * alpha-tdep.c (alpha_register_type): Use builtin types instead of builtin_type_ieee_double. * mips-tdep.c (mips_float_register_type, mips_double_register_type): Remove. (mips_register_type): Use builtin types instead of builtin_type_ieee_single and builtin_type_ieee_double. (mips_print_fp_register): Use builtin types instead of mips_float_register_type and mips_double_register_type. * hppa-tdep.c (hppa32_register_type, hppa64_register_type): Use builtin types instead of builtin_type_ieee_single and builtin_type_ieee_double.
This commit is contained in:
parent
df4df182b4
commit
270677457f
21 changed files with 252 additions and 194 deletions
49
gdb/f-lang.c
49
gdb/f-lang.c
|
@ -391,49 +391,24 @@ build_fortran_types (struct gdbarch *gdbarch)
|
|||
TYPE_FLAG_UNSIGNED, "logical*4", (struct objfile *) NULL);
|
||||
|
||||
builtin_f_type->builtin_real =
|
||||
init_type (TYPE_CODE_FLT,
|
||||
gdbarch_float_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"real", (struct objfile *) NULL);
|
||||
|
||||
init_float_type (gdbarch_float_bit (gdbarch),
|
||||
"real", NULL);
|
||||
builtin_f_type->builtin_real_s8 =
|
||||
init_type (TYPE_CODE_FLT,
|
||||
gdbarch_double_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"real*8", (struct objfile *) NULL);
|
||||
|
||||
init_float_type (gdbarch_double_bit (gdbarch),
|
||||
"real*8", NULL);
|
||||
builtin_f_type->builtin_real_s16 =
|
||||
init_type (TYPE_CODE_FLT,
|
||||
gdbarch_long_double_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"real*16", (struct objfile *) NULL);
|
||||
init_float_type (gdbarch_long_double_bit (gdbarch),
|
||||
"real*16", NULL);
|
||||
|
||||
builtin_f_type->builtin_complex_s8 =
|
||||
init_type (TYPE_CODE_COMPLEX,
|
||||
2 * gdbarch_float_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"complex*8", (struct objfile *) NULL);
|
||||
TYPE_TARGET_TYPE (builtin_f_type->builtin_complex_s8)
|
||||
= builtin_f_type->builtin_real;
|
||||
|
||||
init_complex_type ("complex*8",
|
||||
builtin_f_type->builtin_real);
|
||||
builtin_f_type->builtin_complex_s16 =
|
||||
init_type (TYPE_CODE_COMPLEX,
|
||||
2 * gdbarch_double_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"complex*16", (struct objfile *) NULL);
|
||||
TYPE_TARGET_TYPE (builtin_f_type->builtin_complex_s16)
|
||||
= builtin_f_type->builtin_real_s8;
|
||||
|
||||
/* We have a new size == 4 double floats for the
|
||||
complex*32 data type */
|
||||
|
||||
init_complex_type ("complex*16",
|
||||
builtin_f_type->builtin_real_s8);
|
||||
builtin_f_type->builtin_complex_s32 =
|
||||
init_type (TYPE_CODE_COMPLEX,
|
||||
2 * gdbarch_long_double_bit (gdbarch) / TARGET_CHAR_BIT,
|
||||
0,
|
||||
"complex*32", (struct objfile *) NULL);
|
||||
TYPE_TARGET_TYPE (builtin_f_type->builtin_complex_s32)
|
||||
= builtin_f_type->builtin_real_s16;
|
||||
init_complex_type ("complex*32",
|
||||
builtin_f_type->builtin_real_s16);
|
||||
|
||||
return builtin_f_type;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue