lkml.org 
[lkml]   [2008]   [Jul]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 02/34] AMD IOMMU: add header file for driver data structures and defines
On Wed, 9 Jul 2008 18:38:23 -0700
Andrew Morton <akpm@linux-foundation.org> wrote:

> On Thu, 26 Jun 2008 21:27:38 +0200 Joerg Roedel
> <joerg.roedel@amd.com> wrote:
>
> > +/* helper macros */
> > +#define LOW_U32(x) ((x) & ((1ULL << 32)-1))
> > +#define HIGH_U32(x) (LOW_U32((x) >> 32))
>
> Please avoid putting general-purpose helpers into private header
> files.

especially broken helpers.

A >> 32 on something that may be a 32 bit entry is bad; int32 >> 32...
gcc can (and does!) optimize that out.

(because it first gets translated into a SHR x86 instruction which then
notices it's encoded as a zero shift.. which then gets deleted)



--
If you want to reach me at my work email, use arjan@linux.intel.com
For development, discussion and tips for power savings,
visit http://www.lesswatts.org


\
 
 \ /
  Last update: 2008-07-10 03:53    [from the cache]
©2003-2011 Jasper Spaans