gdb: change gdbarch_wchar_signed to bool

Although this means we can't have:

  predefault="-1"
  postdefault="1"

anymore.  But I think that if we just set the predefault to true, it
will achieve the same result: the default will be true.

Remove a bunch of calls to set_gdbarch_wchar_signed that passed true,
since this is the default anyway.

Change-Id: I85810196ea6e58e94aa01e1fca6e0bb725c3131d
Approved-By: Tom Tromey <tom@tromey.com>
This commit is contained in:
Simon Marchi 2026-02-27 15:05:03 -05:00
parent d867b23f0b
commit 5566a1a0a2
19 changed files with 27 additions and 32 deletions

View file

@ -4827,7 +4827,7 @@ aarch64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_long_long_bit (gdbarch, 64);
set_gdbarch_ptr_bit (gdbarch, 64);
set_gdbarch_char_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_float_format (gdbarch, floatformats_ieee_single);
set_gdbarch_double_format (gdbarch, floatformats_ieee_double);
set_gdbarch_long_double_format (gdbarch, floatformats_ieee_quad);

View file

@ -1750,7 +1750,7 @@ alpha_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_long_bit (gdbarch, 64);
set_gdbarch_long_long_bit (gdbarch, 64);
set_gdbarch_wchar_bit (gdbarch, 64);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_float_bit (gdbarch, 32);
set_gdbarch_double_bit (gdbarch, 64);
set_gdbarch_long_double_bit (gdbarch, 64);

View file

@ -10683,9 +10683,7 @@ arm_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
/* wchar_t is unsigned under the AAPCS. */
if (tdep->arm_abi == ARM_ABI_AAPCS)
set_gdbarch_wchar_signed (gdbarch, 0);
else
set_gdbarch_wchar_signed (gdbarch, 1);
set_gdbarch_wchar_signed (gdbarch, false);
/* Compute type alignment. */
set_gdbarch_type_align (gdbarch, arm_type_align);

View file

@ -1487,7 +1487,6 @@ avr_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_addr_bit (gdbarch, 32);
set_gdbarch_wchar_bit (gdbarch, 2 * TARGET_CHAR_BIT);
set_gdbarch_wchar_signed (gdbarch, 1);
set_gdbarch_float_bit (gdbarch, 4 * TARGET_CHAR_BIT);
set_gdbarch_double_bit (gdbarch, 4 * TARGET_CHAR_BIT);

View file

@ -63,7 +63,7 @@ struct gdbarch
int long_double_bit = 8*TARGET_CHAR_BIT;
const struct floatformat ** long_double_format = floatformats_ieee_double;
int wchar_bit = 4*TARGET_CHAR_BIT;
int wchar_signed = -1;
bool wchar_signed = true;
gdbarch_floatformat_for_type_ftype *floatformat_for_type = default_floatformat_for_type;
int ptr_bit = 4*TARGET_CHAR_BIT;
int addr_bit = 0;
@ -307,8 +307,6 @@ verify_gdbarch (struct gdbarch *gdbarch)
/* Skip verify of long_double_bit, invalid_p == 0. */
/* Skip verify of long_double_format, invalid_p == 0. */
/* Skip verify of wchar_bit, invalid_p == 0. */
if (gdbarch->wchar_signed == -1)
gdbarch->wchar_signed = 1;
/* Skip verify of wchar_signed, invalid_p == 0. */
/* Skip verify of floatformat_for_type, invalid_p == 0. */
/* Skip verify of ptr_bit, invalid_p == 0. */
@ -1648,12 +1646,11 @@ set_gdbarch_wchar_bit (struct gdbarch *gdbarch,
gdbarch->wchar_bit = wchar_bit;
}
int
bool
gdbarch_wchar_signed (struct gdbarch *gdbarch)
{
gdb_assert (gdbarch != NULL);
/* Check variable changed from its initial value. */
gdb_assert (gdbarch->wchar_signed != -1);
/* Skip verify of wchar_signed, invalid_p == 0. */
if (gdbarch_debug >= 2)
gdb_printf (gdb_stdlog, "gdbarch_wchar_signed called\n");
return gdbarch->wchar_signed;
@ -1661,7 +1658,7 @@ gdbarch_wchar_signed (struct gdbarch *gdbarch)
void
set_gdbarch_wchar_signed (struct gdbarch *gdbarch,
int wchar_signed)
bool wchar_signed)
{
gdbarch->wchar_signed = wchar_signed;
}

View file

@ -109,10 +109,12 @@ extern void set_gdbarch_long_double_format (struct gdbarch *gdbarch, const struc
extern int gdbarch_wchar_bit (struct gdbarch *gdbarch);
extern void set_gdbarch_wchar_bit (struct gdbarch *gdbarch, int wchar_bit);
/* One if `wchar_t' is signed, zero if unsigned. */
/* True if `wchar_t' is signed, false if unsigned.
extern int gdbarch_wchar_signed (struct gdbarch *gdbarch);
extern void set_gdbarch_wchar_signed (struct gdbarch *gdbarch, int wchar_signed);
The default value is true (signed). */
extern bool gdbarch_wchar_signed (struct gdbarch *gdbarch);
extern void set_gdbarch_wchar_signed (struct gdbarch *gdbarch, bool wchar_signed);
/* Returns the floating-point format to be used for values of length LENGTH.
NAME, if non-NULL, is the type name, which may be used to distinguish

View file

@ -286,12 +286,13 @@ starting with C++11.
Value(
comment="""
One if `wchar_t' is signed, zero if unsigned.
True if `wchar_t' is signed, false if unsigned.
The default value is true (signed).
""",
type="int",
type="bool",
name="wchar_signed",
predefault="-1",
postdefault="1",
predefault="true",
invalid=False,
)

View file

@ -1352,7 +1352,7 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_long_long_bit (gdbarch, 8 * TARGET_CHAR_BIT);
set_gdbarch_wchar_bit (gdbarch, 2 * TARGET_CHAR_BIT);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_double_bit (gdbarch, 4 * TARGET_CHAR_BIT);
set_gdbarch_double_format (gdbarch, floatformats_ieee_single);

View file

@ -39,7 +39,7 @@ i386_go32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
set_gdbarch_has_dos_based_file_system (gdbarch, 1);
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
}

View file

@ -870,7 +870,7 @@ m32r_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
= gdbarch_alloc (&info, gdbarch_tdep_up (new m32r_gdbarch_tdep));
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_num_regs (gdbarch, M32R_NUM_REGS);
set_gdbarch_pc_regnum (gdbarch, M32R_PC_REGNUM);

View file

@ -1060,7 +1060,7 @@ moxie_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
= gdbarch_alloc (&info, gdbarch_tdep_up (new moxie_gdbarch_tdep));
set_gdbarch_wchar_bit (gdbarch, 32);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_num_regs (gdbarch, MOXIE_NUM_REGS);
set_gdbarch_sp_regnum (gdbarch, MOXIE_SP_REGNUM);

View file

@ -1993,7 +1993,7 @@ nds32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
tdep->elf_abi = elf_abi;
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
if (fpu_freg == -1)
num_regs = NDS32_NUM_REGS;

View file

@ -1407,7 +1407,7 @@ rs6000_aix_init_osabi (struct gdbarch_info info, struct gdbarch *gdbarch)
set_gdbarch_wchar_bit (gdbarch, 32);
else
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_auto_wide_charset (gdbarch, rs6000_aix_auto_wide_charset);
set_gdbarch_make_solib_ops (gdbarch, make_aix_solib_ops);

View file

@ -2235,7 +2235,7 @@ sh_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_long_long_bit (gdbarch, 8 * TARGET_CHAR_BIT);
set_gdbarch_wchar_bit (gdbarch, 2 * TARGET_CHAR_BIT);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_float_bit (gdbarch, 4 * TARGET_CHAR_BIT);
set_gdbarch_double_bit (gdbarch, 8 * TARGET_CHAR_BIT);

View file

@ -1825,7 +1825,6 @@ sparc32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_long_double_format (gdbarch, floatformats_ieee_quad);
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 1);
set_gdbarch_num_regs (gdbarch, SPARC32_NUM_REGS);
set_gdbarch_register_name (gdbarch, sparc32_register_name);

View file

@ -1817,7 +1817,7 @@ sparc64_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
set_gdbarch_ptr_bit (gdbarch, 64);
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_num_regs (gdbarch, SPARC64_NUM_REGS);
set_gdbarch_register_name (gdbarch, sparc64_register_name);

View file

@ -942,7 +942,7 @@ static void
windows_init_abi_common (struct gdbarch_info info, struct gdbarch *gdbarch)
{
set_gdbarch_wchar_bit (gdbarch, 16);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
set_gdbarch_auto_wide_charset (gdbarch, windows_auto_wide_charset);
/* Canonical paths on this target look like

View file

@ -779,7 +779,6 @@ xstormy16_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_long_long_bit (gdbarch, 8 * TARGET_CHAR_BIT);
set_gdbarch_wchar_bit (gdbarch, 2 * TARGET_CHAR_BIT);
set_gdbarch_wchar_signed (gdbarch, 1);
set_gdbarch_float_bit (gdbarch, 4 * TARGET_CHAR_BIT);
set_gdbarch_double_bit (gdbarch, 8 * TARGET_CHAR_BIT);

View file

@ -3170,7 +3170,7 @@ xtensa_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
xtensa_session_once_reported = 0;
set_gdbarch_wchar_bit (gdbarch, 2 * TARGET_CHAR_BIT);
set_gdbarch_wchar_signed (gdbarch, 0);
set_gdbarch_wchar_signed (gdbarch, false);
/* Pseudo-Register read/write. */
set_gdbarch_pseudo_register_read (gdbarch, xtensa_pseudo_register_read);