From owner-svn-src-projects@FreeBSD.ORG Sat Jan 9 02:17:14 2010 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B3A3D106566C; Sat, 9 Jan 2010 02:17:14 +0000 (UTC) (envelope-from neel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id A31E78FC08; Sat, 9 Jan 2010 02:17:14 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o092HEU8063181; Sat, 9 Jan 2010 02:17:14 GMT (envelope-from neel@svn.freebsd.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o092HEt7063179; Sat, 9 Jan 2010 02:17:14 GMT (envelope-from neel@svn.freebsd.org) Message-Id: <201001090217.o092HEt7063179@svn.freebsd.org> From: Neel Natu Date: Sat, 9 Jan 2010 02:17:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r201880 - projects/mips/sys/mips/mips X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jan 2010 02:17:14 -0000 Author: neel Date: Sat Jan 9 02:17:14 2010 New Revision: 201880 URL: http://svn.freebsd.org/changeset/base/201880 Log: Compute the target of the jump in the 'J' and 'JAL' instructions correctly. The 256MB segment is formed by taking the top 4 bits of the address of the instruction in the "branch delay" slot as opposed to the 'J' or 'JAL' instruction itself. Approved by: imp (mentor) Modified: projects/mips/sys/mips/mips/trap.c Modified: projects/mips/sys/mips/mips/trap.c ============================================================================== --- projects/mips/sys/mips/mips/trap.c Sat Jan 9 01:46:38 2010 (r201879) +++ projects/mips/sys/mips/mips/trap.c Sat Jan 9 02:17:14 2010 (r201880) @@ -1091,7 +1091,7 @@ MipsEmulateBranch(struct trapframe *fram case OP_J: case OP_JAL: retAddr = (inst.JType.target << 2) | - ((unsigned)instPC & 0xF0000000); + ((unsigned)(instPC + 4) & 0xF0000000); break; case OP_BEQ: