From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12591 invoked by alias); 8 Jul 2002 18:37:34 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 12569 invoked from network); 8 Jul 2002 18:37:32 -0000 Received: from unknown (HELO potter.sfbay.redhat.com) (205.180.83.107) by sources.redhat.com with SMTP; 8 Jul 2002 18:37:32 -0000 Received: from theotherone.redhat-remotie.org (remus.sfbay.redhat.com [172.16.27.252]) by potter.sfbay.redhat.com (8.11.6/8.11.6) with ESMTP id g68IcRQ11415 for ; Mon, 8 Jul 2002 11:38:27 -0700 Received: from localhost (localhost.fidalgo.net [127.0.0.1]) by theotherone.redhat-remotie.org (Postfix) with ESMTP id 3FA61BB40F for ; Mon, 8 Jul 2002 11:34:00 -0700 (PDT) Date: Mon, 08 Jul 2002 11:45:00 -0000 From: Don Howard X-X-Sender: To: Subject: Another memattr tweak Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2002-07/txt/msg00119.txt.bz2 The following patch allows gdb to display upper bounds of memory regions correctly when the upper bound wraps to zero. A zero upper bound is a special case that indicates that the memory region extends to the top of the target's memory space. 2002-07-08 Don Howard * memattr.c (mem_info_command): Print special case of upper bound as max CORE_ADDR + 1. Index: memattr.c =================================================================== RCS file: /cvs/src/src/gdb/memattr.c,v retrieving revision 1.12 diff -p -u -w -r1.12 memattr.c --- memattr.c 24 Jun 2002 22:08:30 -0000 1.12 +++ memattr.c 8 Jul 2002 18:35:30 -0000 @@ -235,7 +235,6 @@ mem_info_command (char *args, int from_t for (m = mem_region_chain; m; m = m->next) { - CORE_ADDR hi; char *tmp; printf_filtered ("%-3d %-3c\t", m->number, @@ -246,12 +245,21 @@ mem_info_command (char *args, int from_t tmp = local_hex_string_custom ((unsigned long) m->lo, "016l"); printf_filtered ("%s ", tmp); - hi = (m->hi == 0 ? ~0 : m->hi); if (TARGET_ADDR_BIT <= 32) - tmp = local_hex_string_custom ((unsigned long) hi, "08l"); + { + if (m->hi == 0) + tmp = "0x100000000"; else - tmp = local_hex_string_custom ((unsigned long) hi, "016l"); + tmp = local_hex_string_custom ((unsigned long) m->hi, "08l"); + } + else + { + if (m->hi == 0) + tmp = "0x10000000000000000"; + else + tmp = local_hex_string_custom ((unsigned long) m->hi, "016l"); + } printf_filtered ("%s ", tmp); -- dhoward@redhat.com gdb engineering