diff options
| -rw-r--r-- | arch/arm/cpu/armv7/omap4/clocks.c | 2 | ||||
| -rw-r--r-- | drivers/bios_emulator/x86emu/prim_ops.c | 5 | ||||
| -rw-r--r-- | include/common.h | 25 | 
3 files changed, 25 insertions, 7 deletions
| diff --git a/arch/arm/cpu/armv7/omap4/clocks.c b/arch/arm/cpu/armv7/omap4/clocks.c index dd694c409..3f0dfd727 100644 --- a/arch/arm/cpu/armv7/omap4/clocks.c +++ b/arch/arm/cpu/armv7/omap4/clocks.c @@ -46,8 +46,6 @@  #define puts(s)  #endif -#define abs(x) (((x) < 0) ? ((x)*-1) : (x)) -  struct omap4_prcm_regs *const prcm = (struct omap4_prcm_regs *)0x4A004100;  const u32 sys_clk_array[8] = { diff --git a/drivers/bios_emulator/x86emu/prim_ops.c b/drivers/bios_emulator/x86emu/prim_ops.c index 7553087b2..5f6c795fb 100644 --- a/drivers/bios_emulator/x86emu/prim_ops.c +++ b/drivers/bios_emulator/x86emu/prim_ops.c @@ -118,11 +118,6 @@ static u32 x86emu_parity_tab[8] =  #define PARITY(x)   (((x86emu_parity_tab[(x) / 32] >> ((x) % 32)) & 1) == 0)  #define XOR2(x)	    (((x) ^ ((x)>>1)) & 0x1) -/*----------------------------- Implementation ----------------------------*/ -int abs(int v) -{ -	return (v>0)?v:-v; -}  /*----------------------------- Implementation ----------------------------*/ diff --git a/include/common.h b/include/common.h index 4b5841ef4..ff7126d35 100644 --- a/include/common.h +++ b/include/common.h @@ -222,6 +222,31 @@ typedef void (interrupt_handler_t)(void *);  #define MIN(x, y)  min(x, y)  #define MAX(x, y)  max(x, y) +/* + * Return the absolute value of a number. + * + * This handles unsigned and signed longs, ints, shorts and chars.  For all + * input types abs() returns a signed long. + * + * For 64-bit types, use abs64() + */ +#define abs(x) ({						\ +		long ret;					\ +		if (sizeof(x) == sizeof(long)) {		\ +			long __x = (x);				\ +			ret = (__x < 0) ? -__x : __x;		\ +		} else {					\ +			int __x = (x);				\ +			ret = (__x < 0) ? -__x : __x;		\ +		}						\ +		ret;						\ +	}) + +#define abs64(x) ({				\ +		s64 __x = (x);			\ +		(__x < 0) ? -__x : __x;		\ +	}) +  #if defined(CONFIG_ENV_IS_EMBEDDED)  #define TOTAL_MALLOC_LEN	CONFIG_SYS_MALLOC_LEN  #elif ( ((CONFIG_ENV_ADDR+CONFIG_ENV_SIZE) < CONFIG_SYS_MONITOR_BASE) || \ |