Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 28 Feb 2013 11:46:14 -0500
From:      Ryan Stone <rysto32@gmail.com>
To:        Alexey Dokuchaev <danfe@freebsd.org>
Cc:        Davide Italiano <davide@freebsd.org>, svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r247460 - head/sys/dev/acpica
Message-ID:  <CAFMmRNyCB1PC5zQ1448PyxcoXRUwqLKfooOoQ9dKJ4RDFgJ6sQ@mail.gmail.com>
In-Reply-To: <20130228162522.GA41693@FreeBSD.org>
References:  <201302281127.r1SBR2VE068276@svn.freebsd.org> <20130228162522.GA41693@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Feb 28, 2013 at 11:25 AM, Alexey Dokuchaev <danfe@freebsd.org>wrote:

> On Thu, Feb 28, 2013 at 11:27:02AM +0000, Davide Italiano wrote:
> > New Revision: 247460
> > URL: http://svnweb.freebsd.org/changeset/base/247460
> >
> > Log:
> >   MFcalloutng (r247427 by mav):
> >   We don't need any precision here. Let it be fast and dirty shift then
> >   slow and excessively precise 64-bit division.
> >
> > -    if (sbt >= 0 && us > sbt / SBT_1US)
> > -     us = sbt / SBT_1US;
> > +    if (sbt >= 0 && us > (sbt >> 12))
> > +     us = (sbt >> 12);
>
> Does this really buy us anything?  Modern compilers should be smart enough
> to
> generate correct code.  Do you have evidence that this is not the case
> here?
> Not to mention that it obfuscates the code by using some magic constant.
>
> ./danfe
>

SBT_1US is 4294, not 4096 (1 << 12).  This is an approximation, which the
compiler obviously can't automatically apply.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFMmRNyCB1PC5zQ1448PyxcoXRUwqLKfooOoQ9dKJ4RDFgJ6sQ>