From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6323 invoked by alias); 15 Feb 2006 11:34:07 -0000 Received: (qmail 6297 invoked by uid 22791); 15 Feb 2006 11:34:06 -0000 X-Spam-Check-By: sourceware.org Received: from cam-admin0.cambridge.arm.com (HELO cam-admin0.cambridge.arm.com) (193.131.176.58) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 15 Feb 2006 11:34:05 +0000 Received: from cam-owa1.Emea.Arm.com (cam-owa1.emea.arm.com [10.1.255.62]) by cam-admin0.cambridge.arm.com (8.12.6/8.12.6) with ESMTP id k1FBXs6s005542; Wed, 15 Feb 2006 11:33:54 GMT Received: from pc960.cambridge.arm.com ([10.1.255.211]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.0); Wed, 15 Feb 2006 11:33:53 +0000 Subject: Re: [patch] Arm prologe skipping broken on 64-bit hosts From: Richard Earnshaw To: Paul Brook Cc: gdb-patches@sourceware.org In-Reply-To: <200602150302.15004.paul@codesourcery.com> References: <200602150137.21894.paul@codesourcery.com> <200602150302.15004.paul@codesourcery.com> Content-Type: text/plain Message-Id: <1140003227.28394.19.camel@pc960.cambridge.arm.com> Mime-Version: 1.0 Date: Wed, 15 Feb 2006 11:34:00 -0000 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2006-02/txt/msg00315.txt.bz2 On Wed, 2006-02-15 at 03:02, Paul Brook wrote: > This time with the patch. > > On Wednesday 15 February 2006 01:37, Paul Brook wrote: > > The Arm prologue skipping code is broken on 64-bit hosts. The problem is > > that the opcode is loaded as a signed integer, then stored in an "unsigned > > long". This is then compared against unsigned 32-bit constants. > > > > The attached patch fixes this by reading the instruction as an unsigned > > value. For consistency I made the same change in other similar routines. > > > > Tested with cross to arm-none-eabi. > > Ok? > > > > Paul > > > > 2006-02-15 Paul Brook > > > > * arm-tdep.c (arm_skip_prologue, thumb_get_next_pc, arm_get_next_pc): > > Load insn opcodes as unsigned values. OK. R.