static inline unsigned long __xchg()

in include/asm/cmpxchg.h [150:162]


static inline unsigned long __xchg(volatile void *ptr, unsigned long with,
		int size)
{
	switch (size) {
	case 1:
	case 2:
		return xchg_small(ptr, with, size);
	case 4:
		return xchg_u32(ptr, with);
	default:
		return __xchg_called_with_bad_pointer();
	}
}