Lines Matching refs:g
200 struct re_guts *g; member
296 struct re_guts *g; in llvm_regcomp() local
318 g = (struct re_guts *)malloc(sizeof(struct re_guts) + in llvm_regcomp()
320 if (g == NULL) in llvm_regcomp()
326 free((char *)g); in llvm_regcomp()
331 p->g = g; in llvm_regcomp()
340 g->csetsize = NC; in llvm_regcomp()
341 g->sets = NULL; in llvm_regcomp()
342 g->setbits = NULL; in llvm_regcomp()
343 g->ncsets = 0; in llvm_regcomp()
344 g->cflags = cflags; in llvm_regcomp()
345 g->iflags = 0; in llvm_regcomp()
346 g->nbol = 0; in llvm_regcomp()
347 g->neol = 0; in llvm_regcomp()
348 g->must = NULL; in llvm_regcomp()
349 g->mlen = 0; in llvm_regcomp()
350 g->nsub = 0; in llvm_regcomp()
351 g->ncategories = 1; /* category 0 is "everything else" */ in llvm_regcomp()
352 g->categories = &g->catspace[-(CHAR_MIN)]; in llvm_regcomp()
353 (void) memset((char *)g->catspace, 0, NC*sizeof(cat_t)); in llvm_regcomp()
354 g->backrefs = 0; in llvm_regcomp()
358 g->firststate = THERE(); in llvm_regcomp()
366 g->laststate = THERE(); in llvm_regcomp()
369 categorize(p, g); in llvm_regcomp()
370 stripsnug(p, g); in llvm_regcomp()
371 findmust(p, g); in llvm_regcomp()
372 g->nplus = pluscount(p, g); in llvm_regcomp()
373 g->magic = MAGIC2; in llvm_regcomp()
374 preg->re_nsub = g->nsub; in llvm_regcomp()
375 preg->re_g = g; in llvm_regcomp()
379 if (g->iflags®EX_BAD) in llvm_regcomp()
453 p->g->nsub++; in p_ere_exp()
454 subno = p->g->nsub; in p_ere_exp()
481 p->g->iflags |= USEBOL; in p_ere_exp()
482 p->g->nbol++; in p_ere_exp()
487 p->g->iflags |= USEEOL; in p_ere_exp()
488 p->g->neol++; in p_ere_exp()
499 if (p->g->cflags®_NEWLINE) in p_ere_exp()
525 assert(backrefnum <= p->g->nsub); in p_ere_exp()
532 p->g->backrefs = 1; in p_ere_exp()
639 p->g->iflags |= USEBOL; in p_bre()
640 p->g->nbol++; in p_bre()
649 p->g->iflags |= USEEOL; in p_bre()
650 p->g->neol++; in p_bre()
681 if (p->g->cflags®_NEWLINE) in p_simp_re()
693 p->g->nsub++; in p_simp_re()
694 subno = p->g->nsub; in p_simp_re()
724 assert(i <= p->g->nsub); in p_simp_re()
733 p->g->backrefs = 1; in p_simp_re()
838 if (p->g->cflags®_ICASE) { in p_bracket()
842 for (i = p->g->csetsize - 1; i >= 0; i--) in p_bracket()
854 for (i = p->g->csetsize - 1; i >= 0; i--) in p_bracket()
859 if (p->g->cflags®_NEWLINE) in p_bracket()
1074 cat_t *cap = p->g->categories; in ordinary()
1076 if ((p->g->cflags®_ICASE) && isalpha((uch)ch) && othercase(ch) != ch) in ordinary()
1081 cap[ch] = p->g->ncategories++; in ordinary()
1194 int no = p->g->ncsets++; in allocset()
1198 size_t css = (size_t)p->g->csetsize; in allocset()
1211 ptr = (cset *)realloc((char *)p->g->sets, nc * sizeof(cset)); in allocset()
1214 p->g->sets = ptr; in allocset()
1216 ptr = (uch *)realloc((char *)p->g->setbits, nbytes); in allocset()
1219 p->g->setbits = ptr; in allocset()
1222 p->g->sets[i].ptr = p->g->setbits + css*(i/CHAR_BIT); in allocset()
1224 (void) memset((char *)p->g->setbits + (nbytes - css), 0, css); in allocset()
1227 if (p->g->sets == NULL || p->g->setbits == NULL) in allocset()
1230 cs = &p->g->sets[no]; in allocset()
1231 cs->ptr = p->g->setbits + css*((no)/CHAR_BIT); in allocset()
1239 free(p->g->sets); in allocset()
1240 p->g->sets = NULL; in allocset()
1241 free(p->g->setbits); in allocset()
1242 p->g->setbits = NULL; in allocset()
1256 cset *top = &p->g->sets[p->g->ncsets]; in freeset()
1257 size_t css = (size_t)p->g->csetsize; in freeset()
1262 p->g->ncsets--; in freeset()
1279 cset *top = &p->g->sets[p->g->ncsets]; in freezeset()
1281 size_t css = (size_t)p->g->csetsize; in freezeset()
1284 for (cs2 = &p->g->sets[0]; cs2 < top; cs2++) in freezeset()
1299 return((int)(cs - p->g->sets)); in freezeset()
1309 size_t css = (size_t)p->g->csetsize; in firstch()
1325 size_t css = (size_t)p->g->csetsize; in nch()
1387 isinsets(struct re_guts *g, int c) in isinsets() argument
1391 int ncols = (g->ncsets+(CHAR_BIT-1)) / CHAR_BIT; in isinsets()
1394 for (i = 0, col = g->setbits; i < ncols; i++, col += g->csetsize) in isinsets()
1404 samesets(struct re_guts *g, int c1, int c2) in samesets() argument
1408 int ncols = (g->ncsets+(CHAR_BIT-1)) / CHAR_BIT; in samesets()
1412 for (i = 0, col = g->setbits; i < ncols; i++, col += g->csetsize) in samesets()
1422 categorize(struct parse *p, struct re_guts *g) in categorize() argument
1424 cat_t *cats = g->categories; in categorize()
1434 if (cats[c] == 0 && isinsets(g, c)) { in categorize()
1435 cat = g->ncategories++; in categorize()
1438 if (cats[c2] == 0 && samesets(g, c, c2)) in categorize()
1569 stripsnug(struct parse *p, struct re_guts *g) in stripsnug() argument
1571 g->nstates = p->slen; in stripsnug()
1573 g->strip = p->strip; in stripsnug()
1578 g->strip = (sop *)realloc((char *)p->strip, p->slen * sizeof(sop)); in stripsnug()
1579 if (g->strip == NULL) { in stripsnug()
1581 g->strip = p->strip; in stripsnug()
1595 findmust(struct parse *p, struct re_guts *g) in findmust() argument
1611 scan = g->strip + 1; in findmust()
1633 g->iflags |= REGEX_BAD; in findmust()
1639 if (newlen > g->mlen) { /* ends one */ in findmust()
1641 g->mlen = newlen; in findmust()
1648 if (g->mlen == 0) /* there isn't one */ in findmust()
1652 g->must = malloc((size_t)g->mlen + 1); in findmust()
1653 if (g->must == NULL) { /* argh; just forget it */ in findmust()
1654 g->mlen = 0; in findmust()
1657 cp = g->must; in findmust()
1659 for (i = g->mlen; i > 0; i--) { in findmust()
1662 assert(cp < g->must + g->mlen); in findmust()
1665 assert(cp == g->must + g->mlen); in findmust()
1673 pluscount(struct parse *p, struct re_guts *g) in pluscount() argument
1683 scan = g->strip + 1; in pluscount()
1698 g->iflags |= REGEX_BAD; in pluscount()