while (depth-- && tail && !((unsigned long) tail & 3)) { if ((!CMP_ADDR_EQUAL(last_address, tail, 0) || !CMP_ADDR_EQUAL(last_address, tail, 8)) && !pages_present(tail)) return; last_address = (unsigned long) tail; 
while (depth-- && tail && !((unsigned long) tail & 3)) 
void arm_backtrace(struct pt_regs * const regs, unsigned int depth){	struct frame_tail *tail;	unsigned long last_address = 0;	tail = ((struct frame_tail *) regs->ARM_fp) - 1;	if (!user_mode(regs)) {#ifdef CONFIG_FRAME_POINTER		while (depth-- && tail && valid_kernel_stack(tail, regs)) {			tail = kernel_backtrace(tail);		}#endif		return;	}	while (depth-- && tail && !((unsigned long) tail & 3)) {		if ((!CMP_ADDR_EQUAL(last_address, tail, 0)			|| !CMP_ADDR_EQUAL(last_address, tail, 8))				&& !pages_present(tail))			return;		last_address = (unsigned long) tail;		tail = user_backtrace(tail);	}}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/c34d1b4d165c67b966bca4aba026443d7ff161eb/backtrace.c/buggy/arch/arm/oprofile/backtrace.c