if (addr != PROM_ERROR) 
if (addr != PROM_ERROR && addr != 0) 
static unsigned long __init alloc_up(unsigned long size, unsigned long align){	unsigned long base = _ALIGN_UP(RELOC(alloc_bottom), align);	unsigned long addr = 0;	prom_debug("alloc_up(%x, %x)\n", size, align);	if (RELOC(ram_top) == 0)		prom_panic("alloc_up() called with mem not initialized\n");	if (align)		base = _ALIGN_UP(RELOC(alloc_bottom), align);	else		base = RELOC(alloc_bottom);	for(; (base + size) <= RELOC(alloc_top); 	    base = _ALIGN_UP(base + 0x100000, align)) {		prom_debug("    trying: 0x%x\n\r", base);		addr = (unsigned long)prom_claim(base, size, 0);		if (addr != PROM_ERROR)			break;		addr = 0;		if (align == 0)			break;	}	if (addr == 0)		return 0;	RELOC(alloc_bottom) = addr;	prom_debug(" -> %x\n", addr);	prom_debug("  alloc_bottom : %x\n", RELOC(alloc_bottom));	prom_debug("  alloc_top    : %x\n", RELOC(alloc_top));	prom_debug("  alloc_top_hi : %x\n", RELOC(alloc_top_high));	prom_debug("  rmo_top      : %x\n", RELOC(rmo_top));	prom_debug("  ram_top      : %x\n", RELOC(ram_top));	return addr;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/c49888203d7a316cb947bb8a1cf2ae191f28bcd3/prom_init.c/buggy/arch/powerpc/kernel/prom_init.c