From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH] x86/time: fix scale_delta() inline assembly Date: Mon, 26 Nov 2012 19:22:46 +0000 Message-ID: References: <1353949952.5830.131.camel@zakaz.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1353949952.5830.131.camel@zakaz.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell , Jan Beulich Cc: xen-devel List-Id: xen-devel@lists.xenproject.org On 26/11/2012 17:12, "Ian Campbell" wrote: >> That's how things are with multi-insn asm-s (and even with single- >> insn ones when an output different from an input get tied together >> through using the same register). I continue to think that using the >> numbered forms here is better. > > I think the important difference here is that the mul generates its > result specifically in rdx:rax rather than user specified registers. > Since the output is not specified via the constraints IMHO using the > constraints when subsequently consuming those outputs is confusing. > > I'd agree with you if mul was something like "mul %2,%0,%1" (where %2*% > rax =>%0:%1) then "shrd $32,%0,%1" would be perfectly fine. > > Anyway I guess we'll have to agree to disagree. In any case your opinion > trumps mine on this code ;-) I didn't find Jan's asm particularly confusing, any more than it kind of fundamentally is. It's fine by me for it to go in as it is. -- Keir