learn = 0; p = table[i].sym; 
p1 = table[i].sym;  /* find the token on the symbol */ p2 = memmem(p1, len, str, 2); if (!p2) continue;  /* decrease the counts for this symbol's tokens */ forget_symbol(table[i].sym, len);  size = len; 
static void compress_symbols(unsigned char *str, int tlen, int idx){	int i, len, learn, size;	unsigned char *p;	for (i = 0; i < cnt; i++) {		if (!(table[i].flags & SYM_FLAG_VALID)) continue;		len = table[i].len;		learn = 0;		p = table[i].sym;		do {			/* find the token on the symbol */			p = (unsigned char *) strstr((char *) p, (char *) str);			if (!p) break;			if (!learn) {				/* if this symbol was used to count, decrease it */				if (table[i].flags & SYM_FLAG_SAMPLED)					forget_symbol(table[i].sym, len);				learn = 1;			}			*p = idx;			size = (len - (p - table[i].sym)) - tlen + 1;			memmove(p + 1, p + tlen, size);			p++;			len -= tlen - 1;		} while (size >= tlen);		if(learn) {			table[i].len = len;			/* if this symbol was used to count, learn it again */			if(table[i].flags & SYM_FLAG_SAMPLED)				learn_symbol(table[i].sym, len);		}	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b3dbb4ecd46767b621df3dedd28788da93ee0cac/kallsyms.c/buggy/scripts/kallsyms.c