From 5573d7d4b1ed201ca3ac71dcdcf359d7eda8c3d3 Mon Sep 17 00:00:00 2001 From: Jim Kingdon Date: Tue, 28 Sep 1993 17:43:25 +0000 Subject: Tue Sep 28 09:45:38 1993 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) * symmisc.c (print_symbol): Use %02x not %2x for LOC_CONST_BYTES. Clean up problems with targets and hosts that have 64 bit longs and pointers and 32 bit ints. * breakpoint.c, buildsym.c, c-lang.c, c-valprint.c, ch-lang.c, ch-valprint.c, core.c, cp-valprint.c, dbxread.c, exec.c, expprint.c, gdbtypes.c, infcmd.c, language.c, language.h, m2-lang.c, maint.c, mips-tdep.c, mipsread.c, partial-stab.h, printcmd.c, remote-vx.c, solib.c, source.c, stack.c, symfile.c, symmisc.c, symtab.c, valops.c, valprint.c, xcoffexec.c: Change all printf formats from %x to %lx if outputting an address. Change la_*_format to use long format. local_hex_string, local_hex_string_custom now take an unsigned long argument, change all callers. * coffread.c (read_coff_symtab): Remove superfluous cast for complaint output. * dbxread.c (end_psymtab): Cast MSYMBOL_INFO to long, not int. * findvar.c, value.h (write_register): Change register value to long. * gdbtypes.h (struct type): Change `bitsize' to long as TYPE_FIELD_STATIC_PHYSNAME uses this field as a pointer. * inferior.h (struct inferior_status): Change type of stop_pc to CORE_ADDR. * language.h (local_octal_string, local_octal_string_custom): Remove prototype, the functions are neither defined nor used. * mipsread.c (parse_symbol): Use temporary variable for bitsize as f->bitsize is a long now. * objfiles.c (add_to_objfile_sections, build_objfile_section_table): Use unsigned long casts instead of int for abusing sections_end pointer as integer. * stack.c (parse_frame_specification): Change type of `args' to CORE_ADDR for SETUP_ARBITRARY_FRAME. * printcmd.c (make_vasize): Allow redefinition via MAKEVA_SIZE. * mipsread.c (parse_type): Alpha cc now supports the t->continued bit, update algorithm to match the way the compiler uses it. --- gdb/findvar.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gdb/findvar.c') diff --git a/gdb/findvar.c b/gdb/findvar.c index c743d80..36c72f6 100644 --- a/gdb/findvar.c +++ b/gdb/findvar.c @@ -60,7 +60,7 @@ That operation is not available on integers of more than %d bytes.", p = endaddr - 1; #endif /* Do the sign extension once at the start. */ - retval = (*p ^ 0x80) - 0x80; + retval = ((LONGEST)*p ^ 0x80) - 0x80; #if TARGET_BYTE_ORDER == BIG_ENDIAN for (++p; p < endaddr; ++p) #else @@ -466,7 +466,8 @@ read_register (regno) void write_register (regno, val) - int regno, val; + int regno; + long val; { PTR buf; int size; @@ -697,7 +698,7 @@ value_from_register (type, regnum, frame) int mem_stor = 0, reg_stor = 0; int mem_tracking = 1; CORE_ADDR last_addr = 0; - CORE_ADDR first_addr; + CORE_ADDR first_addr = 0; value_bytes = (char *) alloca (len + MAX_REGISTER_RAW_SIZE); -- cgit v1.1