From owner-svn-src-projects@FreeBSD.ORG Thu Nov 29 15:44:29 2012 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 0B6008AC; Thu, 29 Nov 2012 15:44:29 +0000 (UTC) (envelope-from grehan@freebsd.org) Received: from alto.onthenet.com.au (alto.OntheNet.com.au [203.13.68.12]) by mx1.freebsd.org (Postfix) with ESMTP id B170E8FC08; Thu, 29 Nov 2012 15:44:28 +0000 (UTC) Received: from dommail.onthenet.com.au (dommail.OntheNet.com.au [203.13.70.57]) by alto.onthenet.com.au (Postfix) with ESMTPS id 0668511C7F; Fri, 30 Nov 2012 01:44:27 +1000 (EST) Received: from Peter-Grehans-MacBook-Pro.local (c-67-190-8-21.hsd1.co.comcast.net [67.190.8.21]) by dommail.onthenet.com.au (MOS 4.2.4-GA) with ESMTP id BHY85708 (AUTH peterg@ptree32.com.au); Fri, 30 Nov 2012 01:44:24 +1000 Message-ID: <50B782D6.5060507@freebsd.org> Date: Thu, 29 Nov 2012 08:44:22 -0700 From: Peter Grehan User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.28) Gecko/20120306 Thunderbird/3.1.20 MIME-Version: 1.0 To: Jilles Tjoelker Subject: Re: svn commit: r243667 - in projects/bhyve/sys/amd64/vmm: . intel References: <201211290626.qAT6QhOr007958@svn.freebsd.org> <20121129152550.GB29338@stack.nl> In-Reply-To: <20121129152550.GB29338@stack.nl> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Junkmail-Info: RCVD_IN_SORBS_DUL,RDNS_DYNAMIC,SPF_SOFTFAIL X-Junkmail-Status: score=24/51, host=dommail.onthenet.com.au Cc: svn-src-projects@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.14 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: Thu, 29 Nov 2012 15:44:29 -0000 > I don't see a check on the ModRM reg field, which indicates whether the > 0x81 opcode is an ADD, OR, ADC, SBB, AND, SUB, XOR or CMP. So if one of > the other seven happens, it will silently execute as an AND. I don't > think it is useful to implement the other seven but they should be > rejected explicitly (if the ModRM reg field is not 4). Will do, thanks. > A hardware AND of any kind will update %rflags and compilers may take > advantage of this to branch based on the result without the need for a > separate instruction to test it. I suppose this is unlikely here (the > AND serving only to clear one or more bits). Yeh... x86 sucks :( later, Peter.