add (builtin->builtin_decfloat);
add (builtin->builtin_decdouble);
add (builtin->builtin_declong);
- add (builtin->builtin_intcap_t);
- add (builtin->builtin_uintcap_t);
+ if (gdbarch_capability_bit (gdbarch) != 0)
+ {
+ add (builtin->builtin_intcap_t);
+ add (builtin->builtin_uintcap_t);
+ }
lai->set_string_char_type (builtin->builtin_char);
lai->set_bool_type (builtin->builtin_int);
add (builtin->builtin_char16);
add (builtin->builtin_char32);
add (builtin->builtin_wchar);
- add (builtin->builtin_intcap_t);
- add (builtin->builtin_uintcap_t);
+ if (gdbarch_capability_bit (gdbarch) != 0)
+ {
+ add (builtin->builtin_intcap_t);
+ add (builtin->builtin_uintcap_t);
+ }
lai->set_string_char_type (builtin->builtin_char);
lai->set_bool_type (builtin->builtin_bool, "bool");
gdbarch->addr_bit = gdbarch_ptr_bit (gdbarch);
if (gdbarch->dwarf2_addr_size == 0)
gdbarch->dwarf2_addr_size = gdbarch_ptr_bit (gdbarch) / TARGET_CHAR_BIT;
- if (gdbarch->capability_bit == 0)
- gdbarch->capability_bit = gdbarch_ptr_bit (gdbarch);
+ /* Skip verify of capability_bit, invalid_p == 0 */
if (gdbarch->char_signed == -1)
gdbarch->char_signed = 1;
/* Skip verify of read_pc, has predicate. */
gdbarch_capability_bit (struct gdbarch *gdbarch)
{
gdb_assert (gdbarch != NULL);
- /* Check variable changed from pre-default. */
- gdb_assert (gdbarch->capability_bit != 0);
+ /* Skip verify of capability_bit, invalid_p == 0 */
if (gdbarch_debug >= 2)
fprintf_unfiltered (gdb_stdlog, "gdbarch_capability_bit called\n");
return gdbarch->capability_bit;
builtin_type->builtin_func_func
= lookup_function_type (builtin_type->builtin_func_ptr);
- /* Capability types. */
- builtin_type->builtin_intcap_t
- = arch_capability_type (gdbarch, gdbarch_capability_bit (gdbarch), 0,
- "__intcap_t");
- builtin_type->builtin_intcap_t->set_tagged (true);
- builtin_type->builtin_uintcap_t
- = arch_capability_type (gdbarch, gdbarch_capability_bit (gdbarch), 1,
- "__uintcap_t");
- builtin_type->builtin_uintcap_t->set_tagged (true);
-
- /* Capability pointer types. */
- builtin_type->builtin_data_capability
- = arch_pointer_type (gdbarch, gdbarch_capability_bit (gdbarch), "",
- builtin_type->builtin_void);
- builtin_type->builtin_data_capability->set_instance_flags
- (builtin_type->builtin_data_capability->instance_flags ()
- | TYPE_INSTANCE_FLAG_CAPABILITY);
- builtin_type->builtin_data_capability->set_tagged (true);
-
- builtin_type->builtin_code_capability
- = arch_pointer_type (gdbarch, gdbarch_capability_bit (gdbarch), "",
- lookup_function_type (builtin_type->builtin_void));
- builtin_type->builtin_code_capability->set_instance_flags
- (builtin_type->builtin_code_capability->instance_flags ()
- | TYPE_INSTANCE_FLAG_CAPABILITY);
- builtin_type->builtin_code_capability->set_tagged (true);
+ if (gdbarch_capability_bit (gdbarch) != 0)
+ {
+ /* Capability types. */
+ builtin_type->builtin_intcap_t
+ = arch_capability_type (gdbarch, gdbarch_capability_bit (gdbarch), 0,
+ "__intcap_t");
+ builtin_type->builtin_intcap_t->set_tagged (true);
+ builtin_type->builtin_uintcap_t
+ = arch_capability_type (gdbarch, gdbarch_capability_bit (gdbarch), 1,
+ "__uintcap_t");
+ builtin_type->builtin_uintcap_t->set_tagged (true);
+
+ /* Capability pointer types. */
+ builtin_type->builtin_data_capability
+ = arch_pointer_type (gdbarch, gdbarch_capability_bit (gdbarch), "",
+ builtin_type->builtin_void);
+ builtin_type->builtin_data_capability->set_instance_flags
+ (builtin_type->builtin_data_capability->instance_flags ()
+ | TYPE_INSTANCE_FLAG_CAPABILITY);
+ builtin_type->builtin_data_capability->set_tagged (true);
+
+ builtin_type->builtin_code_capability
+ = arch_pointer_type (gdbarch, gdbarch_capability_bit (gdbarch), "",
+ lookup_function_type (builtin_type->builtin_void));
+ builtin_type->builtin_code_capability->set_instance_flags
+ (builtin_type->builtin_code_capability->instance_flags ()
+ | TYPE_INSTANCE_FLAG_CAPABILITY);
+ builtin_type->builtin_code_capability->set_tagged (true);
+ }
/* This type represents a GDB internal function. */
builtin_type->internal_fn