From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15840 invoked by alias); 27 Mar 2007 19:16:42 -0000 Received: (qmail 15832 invoked by uid 22791); 27 Mar 2007 19:16:41 -0000 X-Spam-Check-By: sourceware.org Received: from mx2.suse.de (HELO mx2.suse.de) (195.135.220.15) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 27 Mar 2007 20:16:32 +0100 Received: from Relay1.suse.de (mail2.suse.de [195.135.221.8]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx2.suse.de (Postfix) with ESMTP id 14CDF21764 for ; Tue, 27 Mar 2007 21:16:30 +0200 (CEST) From: Andreas Schwab To: gdb-patches@sourceware.org Subject: Signed vs. unsigned adresses in solib-svr4 X-Yow: Intra-mural sports results are filtering through th' plumbing... Date: Tue, 27 Mar 2007 19:16:00 -0000 Message-ID: User-Agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.91 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2007-03/txt/msg00270.txt.bz2 All but two places in solib-svr4.c assume unsigned target addresses. This patch fixes these two occurences of extract_signed_integer to make things consistent. Andreas. 2007-03-27 Andreas Schwab * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Use extract_unsigned_integer instead of extract_signed_integer. (LM_DYNAMIC_FROM_LINK_MAP): Likewise. Index: solib-svr4.c =================================================================== RCS file: /cvs/src/src/gdb/solib-svr4.c,v retrieving revision 1.61 diff -u -a -p -u -p -a -r1.61 solib-svr4.c --- solib-svr4.c 9 Jan 2007 17:58:58 -0000 1.61 +++ solib-svr4.c 27 Mar 2007 19:12:52 -0000 @@ -138,9 +138,9 @@ LM_ADDR_FROM_LINK_MAP (struct so_list *s { struct link_map_offsets *lmo = svr4_fetch_link_map_offsets (); - return (CORE_ADDR) extract_signed_integer (so->lm_info->lm - + lmo->l_addr_offset, - lmo->l_addr_size); + return (CORE_ADDR) extract_unsigned_integer (so->lm_info->lm + + lmo->l_addr_offset, + lmo->l_addr_size); } static int @@ -158,9 +158,9 @@ LM_DYNAMIC_FROM_LINK_MAP (struct so_list gdb_assert (lmo->l_ld_size != 0); - return (CORE_ADDR) extract_signed_integer (so->lm_info->lm - + lmo->l_ld_offset, - lmo->l_ld_size); + return (CORE_ADDR) extract_unsigned_integer (so->lm_info->lm + + lmo->l_ld_offset, + lmo->l_ld_size); } static CORE_ADDR -- Andreas Schwab, SuSE Labs, schwab@suse.de SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."