On Sun, 26 November 2006 12:26:08 -0800, Roland Dreier wrote: > > > +#define ALIGN(x,a) __ALIGN_MASK(x,(typeof(x))(a)-1) > > +#define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask)) > > Fine by me, but it loses the extra (typeof(x)) cast that Al wanted to > make sure that the result of ALIGN() is not wider than x. Not a big deal, is it? #define ALIGN(x,a) (typeof(x))__ALIGN_MASK(x,(typeof(x))(a)-1) #define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask)) Jörn -- Don't worry about people stealing your ideas. If your ideas are any good, you'll have to ram them down people's throats. -- Howard Aiken quoted by Ken Iverson quoted by Jim Horning quoted by Raph Levien, 1979 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- References:
- [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Roland Dreier <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: David Miller <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Roland Dreier <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: David Miller <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Roland Dreier <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Roland Dreier <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Andrew Morton <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Linus Torvalds <[email protected]>
- Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- From: Roland Dreier <[email protected]>
- [PATCH] Avoid truncating to 'long' in ALIGN() macro
- Prev by Date: Re: [patch] PM: suspend/resume debugging should depend on SOFTWARE_SUSPEND
- Next by Date: Re: [patch] cpufreq: mark cpufreq_tsc() as core_initcall_sync
- Previous by thread: Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- Next by thread: Re: [PATCH] Avoid truncating to 'long' in ALIGN() macro
- Index(es):