From owner-svn-src-all@freebsd.org Sat Nov 23 21:18:56 2019 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 6BA581BF643; Sat, 23 Nov 2019 21:18:56 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 47L5l42CJSz4SmX; Sat, 23 Nov 2019 21:18:56 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2F1A219E36; Sat, 23 Nov 2019 21:18:56 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id xANLIueo009878; Sat, 23 Nov 2019 21:18:56 GMT (envelope-from bdragon@FreeBSD.org) Received: (from bdragon@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id xANLIuXd009877; Sat, 23 Nov 2019 21:18:56 GMT (envelope-from bdragon@FreeBSD.org) Message-Id: <201911232118.xANLIuXd009877@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdragon set sender to bdragon@FreeBSD.org using -f From: Brandon Bergren Date: Sat, 23 Nov 2019 21:18:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r355035 - head/sys/powerpc/booke X-SVN-Group: head X-SVN-Commit-Author: bdragon X-SVN-Commit-Paths: head/sys/powerpc/booke X-SVN-Commit-Revision: 355035 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 23 Nov 2019 21:18:56 -0000 Author: bdragon Date: Sat Nov 23 21:18:55 2019 New Revision: 355035 URL: https://svnweb.freebsd.org/changeset/base/355035 Log: [PowerPC] Use QEMU-compatible version of SPE accumulator save Switch from "evaddumiaaw 0,0" to "evmwumiaa 0,0,0" when persisting the accumulator. This has the benefit of actually being implemented in QEMU as it is the form Linux uses for the same task. Both instructions are functionally equivilent, as we are using them for their side effect of copying the accumulator to GPRs rather than for the actual math operation that they are performing. Reviewed by: jhibbits Modified: head/sys/powerpc/booke/spe.c Modified: head/sys/powerpc/booke/spe.c ============================================================================== --- head/sys/powerpc/booke/spe.c Sat Nov 23 19:35:09 2019 (r355034) +++ head/sys/powerpc/booke/spe.c Sat Nov 23 21:18:55 2019 (r355035) @@ -83,7 +83,7 @@ save_vec_int(struct thread *td) #undef EVSTDW __asm ( "evxor 0,0,0\n" - "evaddumiaaw 0,0\n" + "evmwumiaa 0,0,0\n" "evstdd 0,0(%0)" :: "b"(&pcb->pcb_vec.spare[0])); pcb->pcb_vec.vscr = mfspr(SPR_SPEFSCR);