static void * build_java_types (struct gdbarch *gdbarch) { struct builtin_java_type *builtin_java_type = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_java_type); builtin_java_type->builtin_int = arch_integer_type (gdbarch, 32, 0, "int"); builtin_java_type->builtin_short = arch_integer_type (gdbarch, 16, 0, "short"); builtin_java_type->builtin_long = arch_integer_type (gdbarch, 64, 0, "long"); builtin_java_type->builtin_byte = arch_integer_type (gdbarch, 8, 0, "byte"); builtin_java_type->builtin_boolean = arch_boolean_type (gdbarch, 8, 0, "boolean"); builtin_java_type->builtin_char = arch_character_type (gdbarch, 16, 1, "char"); builtin_java_type->builtin_float = arch_float_type (gdbarch, 32, "float", NULL); builtin_java_type->builtin_double = arch_float_type (gdbarch, 64, "double", NULL); builtin_java_type->builtin_void = arch_type (gdbarch, TYPE_CODE_VOID, 1, "void"); return builtin_java_type; }
static void * build_fortran_types (struct gdbarch *gdbarch) { struct builtin_f_type *builtin_f_type = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_f_type); builtin_f_type->builtin_void = arch_type (gdbarch, TYPE_CODE_VOID, 1, "VOID"); builtin_f_type->builtin_character = arch_integer_type (gdbarch, TARGET_CHAR_BIT, 0, "character"); builtin_f_type->builtin_logical_s1 = arch_boolean_type (gdbarch, TARGET_CHAR_BIT, 1, "logical*1"); builtin_f_type->builtin_integer_s2 = arch_integer_type (gdbarch, gdbarch_short_bit (gdbarch), 0, "integer*2"); builtin_f_type->builtin_logical_s2 = arch_boolean_type (gdbarch, gdbarch_short_bit (gdbarch), 1, "logical*2"); builtin_f_type->builtin_logical_s8 = arch_boolean_type (gdbarch, gdbarch_long_long_bit (gdbarch), 1, "logical*8"); builtin_f_type->builtin_integer = arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 0, "integer"); builtin_f_type->builtin_logical = arch_boolean_type (gdbarch, gdbarch_int_bit (gdbarch), 1, "logical*4"); builtin_f_type->builtin_real = arch_float_type (gdbarch, gdbarch_float_bit (gdbarch), "real", NULL); builtin_f_type->builtin_real_s8 = arch_float_type (gdbarch, gdbarch_double_bit (gdbarch), "real*8", NULL); builtin_f_type->builtin_real_s16 = arch_float_type (gdbarch, gdbarch_long_double_bit (gdbarch), "real*16", NULL); builtin_f_type->builtin_complex_s8 = arch_complex_type (gdbarch, "complex*8", builtin_f_type->builtin_real); builtin_f_type->builtin_complex_s16 = arch_complex_type (gdbarch, "complex*16", builtin_f_type->builtin_real_s8); builtin_f_type->builtin_complex_s32 = arch_complex_type (gdbarch, "complex*32", builtin_f_type->builtin_real_s16); return builtin_f_type; }
static void * build_go_types (struct gdbarch *gdbarch) { struct builtin_go_type *builtin_go_type = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_go_type); builtin_go_type->builtin_void = arch_type (gdbarch, TYPE_CODE_VOID, 1, "void"); builtin_go_type->builtin_char = arch_character_type (gdbarch, 8, 1, "char"); builtin_go_type->builtin_bool = arch_boolean_type (gdbarch, 8, 0, "bool"); builtin_go_type->builtin_int = arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 0, "int"); builtin_go_type->builtin_uint = arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 1, "uint"); builtin_go_type->builtin_uintptr = arch_integer_type (gdbarch, gdbarch_ptr_bit (gdbarch), 1, "uintptr"); builtin_go_type->builtin_int8 = arch_integer_type (gdbarch, 8, 0, "int8"); builtin_go_type->builtin_int16 = arch_integer_type (gdbarch, 16, 0, "int16"); builtin_go_type->builtin_int32 = arch_integer_type (gdbarch, 32, 0, "int32"); builtin_go_type->builtin_int64 = arch_integer_type (gdbarch, 64, 0, "int64"); builtin_go_type->builtin_uint8 = arch_integer_type (gdbarch, 8, 1, "uint8"); builtin_go_type->builtin_uint16 = arch_integer_type (gdbarch, 16, 1, "uint16"); builtin_go_type->builtin_uint32 = arch_integer_type (gdbarch, 32, 1, "uint32"); builtin_go_type->builtin_uint64 = arch_integer_type (gdbarch, 64, 1, "uint64"); builtin_go_type->builtin_float32 = arch_float_type (gdbarch, 32, "float32", floatformats_ieee_single); builtin_go_type->builtin_float64 = arch_float_type (gdbarch, 64, "float64", floatformats_ieee_double); builtin_go_type->builtin_complex64 = arch_complex_type (gdbarch, "complex64", builtin_go_type->builtin_float32); builtin_go_type->builtin_complex128 = arch_complex_type (gdbarch, "complex128", builtin_go_type->builtin_float64); return builtin_go_type; }
static struct type * m68881_ext_type (struct gdbarch *gdbarch) { struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); if (!tdep->m68881_ext_type) tdep->m68881_ext_type = arch_float_type (gdbarch, -1, "builtin_type_m68881_ext", floatformats_m68881_ext); return tdep->m68881_ext_type; }
static void * build_m2_types (struct gdbarch *gdbarch) { struct builtin_m2_type *builtin_m2_type = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_m2_type); /* Modula-2 "pervasive" types. NOTE: these can be redefined!!! */ builtin_m2_type->builtin_int = arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 0, "INTEGER"); builtin_m2_type->builtin_card = arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 1, "CARDINAL"); builtin_m2_type->builtin_real = arch_float_type (gdbarch, gdbarch_float_bit (gdbarch), "REAL", NULL); builtin_m2_type->builtin_char = arch_character_type (gdbarch, TARGET_CHAR_BIT, 1, "CHAR"); builtin_m2_type->builtin_bool = arch_boolean_type (gdbarch, gdbarch_int_bit (gdbarch), 1, "BOOLEAN"); return builtin_m2_type; }
static void * build_d_types (struct gdbarch *gdbarch) { struct builtin_d_type *builtin_d_type = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_d_type); /* Basic types. */ builtin_d_type->builtin_void = arch_type (gdbarch, TYPE_CODE_VOID, 1, "void"); builtin_d_type->builtin_bool = arch_boolean_type (gdbarch, 8, 1, "bool"); builtin_d_type->builtin_byte = arch_integer_type (gdbarch, 8, 0, "byte"); builtin_d_type->builtin_ubyte = arch_integer_type (gdbarch, 8, 1, "ubyte"); builtin_d_type->builtin_short = arch_integer_type (gdbarch, 16, 0, "short"); builtin_d_type->builtin_ushort = arch_integer_type (gdbarch, 16, 1, "ushort"); builtin_d_type->builtin_int = arch_integer_type (gdbarch, 32, 0, "int"); builtin_d_type->builtin_uint = arch_integer_type (gdbarch, 32, 1, "uint"); builtin_d_type->builtin_long = arch_integer_type (gdbarch, 64, 0, "long"); builtin_d_type->builtin_ulong = arch_integer_type (gdbarch, 64, 1, "ulong"); builtin_d_type->builtin_cent = arch_integer_type (gdbarch, 128, 0, "cent"); builtin_d_type->builtin_ucent = arch_integer_type (gdbarch, 128, 1, "ucent"); builtin_d_type->builtin_float = arch_float_type (gdbarch, gdbarch_float_bit (gdbarch), "float", NULL); builtin_d_type->builtin_double = arch_float_type (gdbarch, gdbarch_double_bit (gdbarch), "double", NULL); builtin_d_type->builtin_real = arch_float_type (gdbarch, gdbarch_long_double_bit (gdbarch), "real", NULL); TYPE_INSTANCE_FLAGS (builtin_d_type->builtin_byte) |= TYPE_INSTANCE_FLAG_NOTTEXT; TYPE_INSTANCE_FLAGS (builtin_d_type->builtin_ubyte) |= TYPE_INSTANCE_FLAG_NOTTEXT; /* Imaginary and complex types. */ builtin_d_type->builtin_ifloat = arch_float_type (gdbarch, gdbarch_float_bit (gdbarch), "ifloat", NULL); builtin_d_type->builtin_idouble = arch_float_type (gdbarch, gdbarch_double_bit (gdbarch), "idouble", NULL); builtin_d_type->builtin_ireal = arch_float_type (gdbarch, gdbarch_long_double_bit (gdbarch), "ireal", NULL); builtin_d_type->builtin_cfloat = arch_complex_type (gdbarch, "cfloat", builtin_d_type->builtin_float); builtin_d_type->builtin_cdouble = arch_complex_type (gdbarch, "cdouble", builtin_d_type->builtin_double); builtin_d_type->builtin_creal = arch_complex_type (gdbarch, "creal", builtin_d_type->builtin_real); /* Character types. */ builtin_d_type->builtin_char = arch_character_type (gdbarch, 8, 1, "char"); builtin_d_type->builtin_wchar = arch_character_type (gdbarch, 16, 1, "wchar"); builtin_d_type->builtin_dchar = arch_character_type (gdbarch, 32, 1, "dchar"); return builtin_d_type; }