vsrc = (void *)((unsigned long)vsrc + 4); dest = (void *)((unsigned long)dest + 4); 
vsrc += 4; dest += 4; 
static inline void eeh_memcpy_fromio(void *dest, const volatile void __iomem *src,				     unsigned long n){	void *vsrc = (void __force *) src;	void *destsave = dest;	unsigned long nsave = n;	while(n && (!EEH_CHECK_ALIGN(vsrc, 4) || !EEH_CHECK_ALIGN(dest, 4))) {		*((u8 *)dest) = *((volatile u8 *)vsrc);		__asm__ __volatile__ ("eieio" : : : "memory");		vsrc = (void *)((unsigned long)vsrc + 1);		dest = (void *)((unsigned long)dest + 1);					n--;	}	while(n > 4) {		*((u32 *)dest) = *((volatile u32 *)vsrc);		__asm__ __volatile__ ("eieio" : : : "memory");		vsrc = (void *)((unsigned long)vsrc + 4);		dest = (void *)((unsigned long)dest + 4);					n -= 4;	}	while(n) {		*((u8 *)dest) = *((volatile u8 *)vsrc);		__asm__ __volatile__ ("eieio" : : : "memory");		vsrc = (void *)((unsigned long)vsrc + 1);		dest = (void *)((unsigned long)dest + 1);					n--;	}	__asm__ __volatile__ ("sync" : : : "memory");	/* Look for ffff's here at dest[n].  Assume that at least 4 bytes	 * were copied. Check all four bytes.	 */	if ((nsave >= 4) &&		(EEH_POSSIBLE_ERROR((*((u32 *) destsave+nsave-4)), u32))) {		eeh_check_failure(src, (*((u32 *) destsave+nsave-4)));	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6c9afc655d4df902211d00a437e893881cdef588/eeh.h/buggy/include/asm-ppc64/eeh.h