diff options
author | Jammy Zhou <Jammy.Zhou@amd.com> | 2015-07-13 16:49:42 +0800 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-08-05 13:47:52 -0400 |
commit | 90e14d453ae8f08701e10c61264b53a233acfa3c (patch) | |
tree | 5f3490d34f2937469d51d3d9d36066e0213675c8 /util_math.h | |
parent | 95ecf91c7bb33a49093cfa2a19bc841c04b2707a (diff) |
drm: fix the ALIGN macro to avoid value clamp
If the value is 64bit, but the alignment is 32bit type, the high 32bit
will be clamped with previous definition
Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Diffstat (limited to 'util_math.h')
-rw-r--r-- | util_math.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/util_math.h b/util_math.h index b8de0f86..3bc5f644 100644 --- a/util_math.h +++ b/util_math.h @@ -27,6 +27,7 @@ #define MIN2( A, B ) ( (A)<(B) ? (A) : (B) ) #define MAX2( A, B ) ( (A)>(B) ? (A) : (B) ) -#define ALIGN( value, alignment ) ( ((value) + (alignment) - 1) & ~((alignment) - 1) ) +#define __align_mask(value, mask) (((value) + (mask)) & ~(mask)) +#define ALIGN(value, alignment) __align_mask(value, (typeof(value))((alignment) - 1)) #endif /*_UTIL_MATH_H_*/ |