Lines Matching refs:regset
1180 /* Go through `regset' and set submatch data for submatches that are
1183 tre_purge_regset(int *regset, tre_tnfa_t *tnfa, int tag)
1187 for (i = 0; regset[i] >= 0; i++)
1189 int id = regset[i] / 2;
1190 int start = !(regset[i] % 2);
1196 regset[0] = -1;
1212 int *regset, *orig_regset;
1229 regset = xmalloc(sizeof(*regset) * ((tnfa->num_submatches + 1) * 2));
1230 if (regset == NULL)
1232 regset[0] = -1;
1233 orig_regset = regset;
1238 xfree(regset);
1246 xfree(regset);
1274 /* Add end of this submatch to regset. */
1275 for (i = 0; regset[i] >= 0; i++);
1276 regset[i] = id * 2 + 1;
1277 regset[i + 1] = -1;
1294 /* Add start of this submatch to regset. */
1295 for (i = 0; regset[i] >= 0; i++);
1296 regset[i] = id * 2;
1297 regset[i + 1] = -1;
1319 /* Add end of this submatch to regset after processing this
1334 if (regset[0] >= 0)
1351 tre_purge_regset(regset, tnfa, tag);
1358 regset[0] = -1;
1409 STACK_PUSHX(stack, int, regset[0] >= 0 || iter->minimal);
1423 if (regset[0] >= 0 || iter->minimal)
1442 tre_purge_regset(regset, tnfa, tag);
1445 regset[0] = -1;
1461 if (regset[0] >= 0)
1475 STACK_PUSHX(stack, voidptr, regset);
1476 STACK_PUSHX(stack, int, regset[0] >= 0);
1494 if (regset[0] >= 0)
1510 tre_purge_regset(regset, tnfa, tag);
1513 regset[0] = -1;
1590 /* Lift the bottom of the `regset' array so that when processing
1594 while (*regset >= 0)
1595 regset++;
1611 regset = tre_stack_pop_voidptr(stack);
1648 tre_purge_regset(regset, tnfa, tag);