LLVM API Documentation
#include <sys/types.h>
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <limits.h>
#include <stdlib.h>
#include "regex_impl.h"
#include "regutils.h"
#include "regex2.h"
#include "regcclass.h"
#include "regcname.h"
Go to the source code of this file.
Classes | |
struct | parse |
Defines | |
#define | NPAREN 10 /* we need to remember () 1-9 for back refs */ |
#define | PEEK() (*p->next) |
#define | PEEK2() (*(p->next+1)) |
#define | MORE() (p->next < p->end) |
#define | MORE2() (p->next+1 < p->end) |
#define | SEE(c) (MORE() && PEEK() == (c)) |
#define | SEETWO(a, b) (MORE() && MORE2() && PEEK() == (a) && PEEK2() == (b)) |
#define | EAT(c) ((SEE(c)) ? (NEXT(), 1) : 0) |
#define | EATTWO(a, b) ((SEETWO(a, b)) ? (NEXT2(), 1) : 0) |
#define | NEXT() (p->next++) |
#define | NEXT2() (p->next += 2) |
#define | NEXTn(n) (p->next += (n)) |
#define | GETNEXT() (*p->next++) |
#define | SETERROR(e) seterr(p, (e)) |
#define | REQUIRE(co, e) (void)((co) || SETERROR(e)) |
#define | MUSTSEE(c, e) (REQUIRE(MORE() && PEEK() == (c), e)) |
#define | MUSTEAT(c, e) (REQUIRE(MORE() && GETNEXT() == (c), e)) |
#define | MUSTNOTSEE(c, e) (REQUIRE(!MORE() || PEEK() != (c), e)) |
#define | EMIT(op, sopnd) doemit(p, (sop)(op), (size_t)(sopnd)) |
#define | INSERT(op, pos) doinsert(p, (sop)(op), HERE()-(pos)+1, pos) |
#define | AHEAD(pos) dofwd(p, pos, HERE()-(pos)) |
#define | ASTERN(sop, pos) EMIT(sop, HERE()-pos) |
#define | HERE() (p->slen) |
#define | THERE() (p->slen - 1) |
#define | THERETHERE() (p->slen - 2) |
#define | DROP(n) (p->slen -= (n)) |
#define | DUPMAX 255 |
#define | INFINITY (DUPMAX + 1) |
#define | never 0 /* some <assert.h>s have bugs too */ |
#define | GOODFLAGS(f) ((f)&~REG_DUMP) |
#define | BACKSL (1<<CHAR_BIT) |
#define | N 2 |
#define | INF 3 |
#define | REP(f, t) ((f)*8 + (t)) |
#define | MAP(n) (((n) <= 1) ? (n) : ((n) == INFINITY) ? INF : N) |
Functions | |
static void | p_ere (struct parse *, int) |
static void | p_ere_exp (struct parse *) |
static void | p_str (struct parse *) |
static void | p_bre (struct parse *, int, int) |
static int | p_simp_re (struct parse *, int) |
static int | p_count (struct parse *) |
static void | p_bracket (struct parse *) |
static void | p_b_term (struct parse *, cset *) |
static void | p_b_cclass (struct parse *, cset *) |
static void | p_b_eclass (struct parse *, cset *) |
static char | p_b_symbol (struct parse *) |
static char | p_b_coll_elem (struct parse *, int) |
static char | othercase (int) |
static void | bothcases (struct parse *, int) |
static void | ordinary (struct parse *, int) |
static void | nonnewline (struct parse *) |
static void | repeat (struct parse *, sopno, int, int) |
static int | seterr (struct parse *, int) |
static cset * | allocset (struct parse *) |
static void | freeset (struct parse *, cset *) |
static int | freezeset (struct parse *, cset *) |
static int | firstch (struct parse *, cset *) |
static int | nch (struct parse *, cset *) |
static void | mcadd (struct parse *, cset *, const char *) |
static void | mcinvert (struct parse *, cset *) |
static void | mccase (struct parse *, cset *) |
static int | isinsets (struct re_guts *, int) |
static int | samesets (struct re_guts *, int, int) |
static void | categorize (struct parse *, struct re_guts *) |
static sopno | dupl (struct parse *, sopno, sopno) |
static void | doemit (struct parse *, sop, size_t) |
static void | doinsert (struct parse *, sop, size_t, sopno) |
static void | dofwd (struct parse *, sopno, sop) |
static void | enlarge (struct parse *, sopno) |
static void | stripsnug (struct parse *, struct re_guts *) |
static void | findmust (struct parse *, struct re_guts *) |
static sopno | pluscount (struct parse *, struct re_guts *) |
int | llvm_regcomp (llvm_regex_t *preg, const char *pattern, int cflags) |
Variables | |
static char | nuls [10] |
Definition at line 133 of file regcomp.c.
Referenced by p_ere(), p_ere_exp(), and repeat().
Definition at line 134 of file regcomp.c.
Referenced by p_ere(), p_ere_exp(), p_simp_re(), and repeat().
#define BACKSL (1<<CHAR_BIT) |
Referenced by p_simp_re().
#define DROP | ( | n | ) | (p->slen -= (n)) |
Definition at line 120 of file regcomp.c.
Referenced by p_b_term(), p_bracket(), p_bre(), p_ere(), p_ere_exp(), and p_simp_re().
Definition at line 121 of file regcomp.c.
Referenced by p_b_symbol(), p_b_term(), and p_simp_re().
Definition at line 131 of file regcomp.c.
Referenced by doinsert(), llvm_regcomp(), ordinary(), p_bracket(), p_bre(), p_ere(), p_ere_exp(), p_simp_re(), and repeat().
#define GETNEXT | ( | ) | (*p->next++) |
Definition at line 125 of file regcomp.c.
Referenced by p_b_symbol(), p_count(), p_ere_exp(), p_simp_re(), and p_str().
Referenced by llvm_regcomp(), and llvm_regexec().
#define HERE | ( | ) | (p->slen) |
Definition at line 135 of file regcomp.c.
Referenced by doinsert(), dupl(), p_bre(), p_ere(), p_ere_exp(), p_simp_re(), and repeat().
Definition at line 145 of file regcomp.c.
Referenced by p_ere_exp(), and p_simp_re().
Definition at line 132 of file regcomp.c.
Referenced by p_ere(), p_ere_exp(), p_simp_re(), and repeat().
#define MORE | ( | ) | (p->next < p->end) |
Definition at line 116 of file regcomp.c.
Referenced by p_b_cclass(), p_b_coll_elem(), p_b_symbol(), p_b_term(), p_bracket(), p_bre(), p_count(), p_ere(), p_ere_exp(), p_simp_re(), and p_str().
#define MORE2 | ( | ) | (p->next+1 < p->end) |
Definition at line 117 of file regcomp.c.
Referenced by p_b_term(), and p_ere_exp().
Definition at line 129 of file regcomp.c.
Referenced by p_bracket(), and p_ere_exp().
#define MUSTNOTSEE | ( | c, | |
e | |||
) | (REQUIRE(!MORE() || PEEK() != (c), e)) |
#define N 2 |
Referenced by llvm::AAMDNodes::AAMDNodes(), llvm::DwarfUnit::addBlockByrefAddress(), llvm::AddCatchInfo(), llvm::MachineModuleInfo::addCatchTypeInfo(), llvm::DwarfUnit::addComplexAddress(), llvm::bfi_detail::IrreducibleGraph::addNodesInLoop(), llvm::SUnit::addPred(), adjustForFNeg(), adjustForLTGFR(), adjustForSubtraction(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::adjustFromLeftSib(), llvm::array_lengthof(), llvm::APInt::byteSwap(), llvm::Calculate(), llvm::DomTreeNodeBase< MachineBasicBlock >::compare(), llvm::DIELoc::ComputeSize(), llvm::DIEBlock::ComputeSize(), llvm::DwarfFile::computeSizeAndOffset(), ConstantFold(), llvm::DwarfUnit::constructSubprogramArguments(), llvm::DwarfUnit::constructTypeDIE(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::copy(), llvm::StringRef::count(), countOperands(), llvm::InstrEmitter::CountResults(), llvm::DIBuilder::createArtificialType(), createIrreducibleLoop(), llvm::DIBuilder::createObjectPointerType(), llvm::AArch64_AM::decodeLogicalImmediate(), decodeTestingFormat(), llvm::DIBasicType::DIBasicType(), llvm::DICompileUnit::DICompileUnit(), llvm::DICompositeType::DICompositeType(), llvm::DIDerivedType::DIDerivedType(), llvm::DIDescriptor::DIDescriptor(), llvm::DIEnumerator::DIEnumerator(), llvm::DIFile::DIFile(), llvm::DIGlobalVariable::DIGlobalVariable(), llvm::DILexicalBlock::DILexicalBlock(), llvm::DILexicalBlockFile::DILexicalBlockFile(), llvm::DINameSpace::DINameSpace(), llvm::DIScope::DIScope(), llvm::DISubprogram::DISubprogram(), llvm::DISubrange::DISubrange(), llvm::DISubroutineType::DISubroutineType(), llvm::DITemplateTypeParameter::DITemplateTypeParameter(), llvm::DITemplateValueParameter::DITemplateValueParameter(), llvm::DIType::DIType(), llvm::DITypedArray< T >::DITypedArray(), llvm::DIVariable::DIVariable(), llvm::ArrayRef< uint64_t >::drop_back(), llvm::StringRef::drop_back(), llvm::LexicalScope::dump(), llvm::SelectionDAG::dump(), llvm::DIEAbbrev::Emit(), llvm::OnDiskChainedHashTableGenerator< Info >::Emit(), llvm::EHStreamer::emitExceptionTable(), llvm::MachineCodeEmitter::emitString(), llvm::DIELoc::EmitValue(), llvm::DIEBlock::EmitValue(), llvm::SmallVectorImpl< MachineInstr * >::erase(), llvm::StringRef::find(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::findFrom(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, RootBranchCap, Traits >::findFrom(), FoldCondBranchOnPHI(), foldUDivShl(), llvm::ArrayRecycler< T, Align >::Capacity::get(), llvm::TypeBuilder< T[N], cross >::get(), llvm::LazyCallGraph::get(), llvm::ScaledNumber< uint64_t >::get(), llvm::SDLoc::getDebugLoc(), llvm::DominatorTreeBase< MachineBasicBlock >::getDescendants(), llvm::BranchProbabilityInfo::getEdgeProbability(), llvm::MachineBranchProbabilityInfo::getEdgeProbability(), getFoldedOffsetOf(), getFoldedSizeOf(), llvm::SDNode::getGluedMachineNode(), llvm::SDLoc::getIROrder(), llvm::RegisterClassInfo::getLastCalleeSavedAlias(), llvm::LoopBase< BlockT, LoopT >::getLoopLatch(), llvm::LoopBase< BlockT, LoopT >::getLoopPredecessor(), llvm::SelectionDAGBuilder::getNonRegisterValue(), getNumOperandsNoGlue(), llvm::AArch64CC::getNZCVToSatisfyCondCode(), llvm::MachineModuleInfo::getOrCreateLandingPadInfo(), llvm::DbgVariable::getType(), llvm::MachineModuleInfo::getTypeIDFor(), llvm::opt::Arg::getValue(), llvm::SelectionDAGBuilder::getValue(), llvm::ScalarEvolution::getZeroExtendExpr(), hasMoreThanOneUseOtherThanLLVMUsed(), llvm::bfi_detail::IrreducibleGraph::initialize(), llvm::ResourcePriorityQueue::initNumRegDefsLeft(), llvm::SmallSet< unsigned, 16 >::insert(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, RootBranchCap, Traits >::insert(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::insertFrom(), llvm::IntEqClasses::IntEqClasses(), Is_PostInc_S4_Offset(), isImmMskBitp(), llvm::isInt(), IsS11_0_Offset(), IsS11_1_Offset(), IsS11_2_Offset(), IsS11_3_Offset(), IsU6_0_Offset(), IsU6_1_Offset(), IsU6_2_Offset(), llvm::isUInt(), llvm::AArch64_AM::isValidDecodeLogicalImmediate(), isZero(), llvm::SelectionDAG::Legalize(), LLVMAddNamedMetadataOperand(), LLVMGetMDNodeOperands(), LLVMGetNamedMetadataNumOperands(), LLVMGetNamedMetadataOperands(), llvm::XCoreInstrInfo::loadImmediate(), llvm::AliasAnalysis::Location::Location(), llvm::MSP430TargetLowering::LowerShifts(), llvm::makeSubprogramMap(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::moveRight(), llvm::ScaledNumbers::multiply64(), llvm::opt::operator<(), llvm::InlineAsm::ConstraintInfo::Parse(), llvm::format_object_base::print(), llvm::DIEAbbrev::print(), llvm::DIE::print(), llvm::DebugInfoFinder::processDeclare(), llvm::AArch64_AM::processLogicalImmediate(), llvm::DebugInfoFinder::processValue(), llvm::DIEAbbrev::Profile(), llvm::coverage::RawCoverageReader::readULEB128(), llvm::ImutAVLFactory< ImutInfo >::recoverNodes(), llvm::SelectionDAG::RemoveDeadNodes(), llvm::cl::parser< const PassInfo * >::removeLiteralOption(), llvm::MachineInstr::RemoveOperand(), llvm::SUnit::removePred(), repeat(), llvm::LiveRangeCalc::reset(), llvm::StringRef::rfind(), llvm::CGSCCToFunctionPassAdaptor< FunctionPassT >::run(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::IntervalMapImpl::LeafNode< KeyT, ValT, N, Traits >::safeFind(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, RootBranchCap, Traits >::safeFind(), llvm::FastISel::selectGetElementPtr(), llvm::DICompositeType::setContainingType(), llvm::yaml::Input::setCurrentDocument(), llvm::SelectionDAGBuilder::setUnusedArgValue(), llvm::SelectionDAGBuilder::setValue(), llvm::SmallString< 256 >::slice(), llvm::StringRef::slice(), llvm::SmallVector< Inst, 7 >::SmallVector(), SolveQuadraticEquation(), llvm::opt::StrCmpOptionName(), llvm::StrInStrNoCase(), llvm::ResourcePriorityQueue::SUSchedulingCost(), llvm::ScaledNumber< DigitsT >::toInt(), llvm::APInt::toString(), unwrapLoop(), llvm::LoopBase< BlockT, LoopT >::verifyLoop(), llvm::InstCombiner::visitAdd(), llvm::yaml::BinaryRef::writeAsBinary(), WriteFunctionLocalMetadata(), llvm::WriteGraph(), and WriteModuleMetadata().
#define NEXT | ( | ) | (p->next++) |
Definition at line 122 of file regcomp.c.
Referenced by p_b_cclass(), p_b_coll_elem(), p_b_term(), p_ere_exp(), and p_simp_re().
#define NEXT2 | ( | ) | (p->next += 2) |
Definition at line 123 of file regcomp.c.
Referenced by p_b_term().
#define NEXTn | ( | n | ) | (p->next += (n)) |
Definition at line 124 of file regcomp.c.
Referenced by p_bracket().
#define NPAREN 10 /* we need to remember () 1-9 for back refs */ |
Definition at line 65 of file regcomp.c.
Referenced by doinsert(), llvm_regcomp(), p_ere_exp(), and p_simp_re().
#define PEEK | ( | ) | (*p->next) |
Definition at line 114 of file regcomp.c.
Referenced by p_b_cclass(), p_b_term(), p_bracket(), p_count(), p_ere(), p_ere_exp(), and p_simp_re().
#define PEEK2 | ( | ) | (*(p->next+1)) |
Definition at line 115 of file regcomp.c.
Referenced by p_b_term(), and p_ere_exp().
Definition at line 127 of file regcomp.c.
Referenced by p_b_symbol(), p_b_term(), p_bre(), p_count(), p_ere(), p_ere_exp(), p_simp_re(), and p_str().
Definition at line 118 of file regcomp.c.
Referenced by p_b_term(), p_ere(), and p_ere_exp().
Definition at line 119 of file regcomp.c.
Referenced by p_b_coll_elem(), p_bracket(), p_bre(), and p_simp_re().
Definition at line 126 of file regcomp.c.
Referenced by allocset(), enlarge(), llvm_regcomp(), mcadd(), p_b_cclass(), p_b_coll_elem(), p_b_term(), p_ere_exp(), p_simp_re(), repeat(), and stripsnug().
#define THERE | ( | ) | (p->slen - 1) |
Definition at line 136 of file regcomp.c.
Referenced by llvm_regcomp(), p_ere(), p_ere_exp(), and repeat().
#define THERETHERE | ( | ) | (p->slen - 2) |
Definition at line 137 of file regcomp.c.
Referenced by p_ere_exp(), and repeat().
Definition at line 1058 of file regcomp.c.
References re_guts::csetsize, llvm::LibFunc::free, parse::g, cset::hash, if(), cset::mask, llvm::LibFunc::memset, cset::multis, parse::ncsalloc, re_guts::ncsets, cset::ptr, llvm::LibFunc::realloc, REG_ESPACE, re_guts::setbits, SETERROR, re_guts::sets, and cset::smultis.
Referenced by p_bracket().
Definition at line 911 of file regcomp.c.
References parse::end, parse::next, othercase(), and p_bracket().
Referenced by ordinary().
static void categorize | ( | struct parse * | p, |
struct re_guts * | g | ||
) | [static] |
Definition at line 1286 of file regcomp.c.
References re_guts::categories, parse::error, isinsets(), re_guts::ncategories, and samesets().
Referenced by llvm_regcomp().
Definition at line 1337 of file regcomp.c.
References enlarge(), parse::error, OPSHIFT, parse::slen, SOP, parse::ssize, and parse::strip.
Definition at line 1394 of file regcomp.c.
References parse::error, OP, OPSHIFT, and parse::strip.
Definition at line 1359 of file regcomp.c.
References EMIT, parse::error, HERE, llvm::LibFunc::memmove, NPAREN, parse::pbegin, parse::pend, and parse::strip.
Definition at line 1311 of file regcomp.c.
References enlarge(), HERE, llvm::LibFunc::memmove, parse::slen, parse::ssize, and parse::strip.
Referenced by p_ere_exp(), p_simp_re(), and repeat().
Definition at line 1408 of file regcomp.c.
References llvm::LibFunc::realloc, REG_ESPACE, SETERROR, parse::ssize, and parse::strip.
Definition at line 1448 of file regcomp.c.
References parse::error, re_guts::iflags, llvm::LibFunc::malloc, re_guts::mlen, re_guts::must, O_CH, O_QUEST, OCH_, OCHAR, OEND, OLPAREN, OOR2, OP, OPLUS_, OPND, OQUEST_, ORPAREN, REGEX_BAD, and re_guts::strip.
Referenced by llvm_regcomp().
Definition at line 1170 of file regcomp.c.
References CHIN, re_guts::csetsize, and parse::g.
Referenced by p_bracket().
Definition at line 1117 of file regcomp.c.
References CHsub, re_guts::csetsize, parse::g, re_guts::ncsets, and re_guts::sets.
Referenced by freezeset(), and p_bracket().
Definition at line 1139 of file regcomp.c.
References CHIN, re_guts::csetsize, freeset(), parse::g, cset::hash, re_guts::ncsets, and re_guts::sets.
Referenced by p_bracket().
Definition at line 1251 of file regcomp.c.
References re_guts::ncsets, and re_guts::setbits.
Referenced by categorize().
int llvm_regcomp | ( | llvm_regex_t * | preg, |
const char * | pattern, | ||
int | cflags | ||
) |
Definition at line 157 of file regcomp.c.
References re_guts::backrefs, llvm::LibFunc::calloc, re_guts::categories, categorize(), re_guts::catspace, re_guts::cflags, re_guts::csetsize, EMIT, parse::end, parse::error, findmust(), re_guts::firststate, llvm::LibFunc::free, parse::g, GOODFLAGS, re_guts::iflags, re_guts::laststate, llvm_regfree(), re_guts::magic, MAGIC1, MAGIC2, llvm::LibFunc::malloc, llvm::LibFunc::memset, re_guts::mlen, re_guts::must, re_guts::nbol, NC, re_guts::ncategories, parse::ncsalloc, re_guts::ncsets, re_guts::neol, parse::next, NPAREN, re_guts::nplus, re_guts::nsub, OEND, OUT, p_bre(), p_ere(), p_str(), parse::pbegin, parse::pend, pluscount(), llvm_regex::re_endp, llvm_regex::re_g, llvm_regex::re_magic, llvm_regex::re_nsub, REG_ASSERT, REG_ESPACE, REG_EXTENDED, REG_INVARG, REG_NOSPEC, REG_PEND, REGEX_BAD, re_guts::setbits, SETERROR, re_guts::sets, parse::slen, parse::ssize, parse::strip, stripsnug(), llvm::LibFunc::strlen, and THERE.
Referenced by llvm::Regex::Regex().
Definition at line 1202 of file regcomp.c.
References llvm::LibFunc::free, llvm_strlcpy(), cset::multis, llvm::LibFunc::realloc, REG_ESPACE, SETERROR, cset::smultis, and llvm::LibFunc::strlen.
Definition at line 1186 of file regcomp.c.
References CHIN, re_guts::csetsize, and parse::g.
Referenced by p_bracket().
static void nonnewline | ( | struct parse * | p | ) | [static] |
Definition at line 953 of file regcomp.c.
References parse::end, parse::next, and p_bracket().
Referenced by p_ere_exp(), and p_simp_re().
Definition at line 934 of file regcomp.c.
References bothcases(), re_guts::categories, re_guts::cflags, EMIT, parse::g, re_guts::ncategories, OCHAR, othercase(), and REG_ICASE.
Referenced by p_bracket(), p_ere_exp(), p_simp_re(), and p_str().
Definition at line 893 of file regcomp.c.
Referenced by bothcases(), ordinary(), and p_bracket().
static void p_b_cclass | ( | struct parse * | p, |
cset * | cs | ||
) | [static] |
Definition at line 803 of file regcomp.c.
References cclasses, CHadd, cclass::chars, MCadd, MORE, cclass::multis, cclass::name, parse::next, NEXT, PEEK, REG_ECTYPE, SETERROR, llvm::LibFunc::strlen, and llvm::LibFunc::strncmp.
Referenced by p_b_term().
static char p_b_coll_elem | ( | struct parse * | p, |
int | endc | ||
) | [static] |
Definition at line 866 of file regcomp.c.
References cnames, cname::code, MORE, cname::name, parse::next, NEXT, REG_EBRACK, REG_ECOLLATE, SEETWO, SETERROR, and llvm::LibFunc::strncmp.
Referenced by p_b_eclass(), and p_b_symbol().
static void p_b_eclass | ( | struct parse * | p, |
cset * | cs | ||
) | [static] |
Definition at line 836 of file regcomp.c.
References CHadd, and p_b_coll_elem().
Referenced by p_b_term().
static char p_b_symbol | ( | struct parse * | p | ) | [static] |
Definition at line 848 of file regcomp.c.
References EATTWO, GETNEXT, MORE, p_b_coll_elem(), REG_EBRACK, REG_ECOLLATE, and REQUIRE.
Referenced by p_b_term().
Definition at line 740 of file regcomp.c.
References CHadd, EAT, EATTWO, MORE, MORE2, NEXT, NEXT2, p_b_cclass(), p_b_eclass(), p_b_symbol(), PEEK, PEEK2, REG_EBRACK, REG_ECOLLATE, REG_ECTYPE, REG_ERANGE, REQUIRE, SEE, and SETERROR.
Referenced by p_bracket().
Definition at line 661 of file regcomp.c.
References allocset(), re_guts::cflags, CHadd, CHIN, CHsub, re_guts::csetsize, EAT, EMIT, parse::end, parse::error, firstch(), freeset(), freezeset(), parse::g, mccase(), mcinvert(), MORE, cset::multis, MUSTEAT, nch(), parse::next, NEXTn, OANYOF, OBOW, OEOW, ordinary(), othercase(), p_b_term(), PEEK, REG_EBRACK, REG_ICASE, REG_NEWLINE, SEETWO, and llvm::LibFunc::strncmp.
Referenced by bothcases(), nonnewline(), p_ere_exp(), and p_simp_re().
Definition at line 493 of file regcomp.c.
References DROP, EAT, EMIT, parse::g, HERE, re_guts::iflags, MORE, re_guts::nbol, re_guts::neol, OBOL, OEOL, p_simp_re(), REG_EMPTY, REQUIRE, SEETWO, USEBOL, and USEEOL.
Referenced by llvm_regcomp(), and p_simp_re().
Definition at line 640 of file regcomp.c.
References DUPMAX, GETNEXT, llvm::LibFunc::isdigit, MORE, PEEK, REG_BADBR, and REQUIRE.
Referenced by p_ere_exp(), and p_simp_re().
Definition at line 300 of file regcomp.c.
References AHEAD, ASTERN, re_guts::backrefs, re_guts::cflags, dupl(), EAT, EMIT, parse::g, GETNEXT, HERE, re_guts::iflags, INFINITY, INSERT, llvm::LibFunc::isdigit, MORE, MORE2, MUSTEAT, re_guts::nbol, re_guts::neol, NEXT, nonnewline(), NPAREN, re_guts::nsub, O_BACK, O_CH, O_PLUS, O_QUEST, OANY, OBACK_, OBOL, OCH_, OEOL, OLPAREN, OOR1, OOR2, OP, OPLUS_, OQUEST_, ordinary(), ORPAREN, p_bracket(), p_count(), p_ere(), parse::pbegin, PEEK, PEEK2, parse::pend, REG_BADBR, REG_BADRPT, REG_EBRACE, REG_EESCAPE, REG_EMPTY, REG_EPAREN, REG_ESUBREG, REG_NEWLINE, repeat(), REQUIRE, SEE, SETERROR, parse::strip, THERE, THERETHERE, USEBOL, and USEEOL.
Referenced by p_ere().
Definition at line 524 of file regcomp.c.
References ASTERN, re_guts::backrefs, BACKSL, re_guts::cflags, dupl(), EAT, EATTWO, EMIT, parse::g, GETNEXT, HERE, INFINITY, INSERT, llvm::LibFunc::isdigit, MORE, NEXT, nonnewline(), NPAREN, re_guts::nsub, O_BACK, O_PLUS, O_QUEST, OANY, OBACK_, OLPAREN, OP, OPLUS_, OQUEST_, ordinary(), ORPAREN, p_bracket(), p_bre(), p_count(), parse::pbegin, PEEK, parse::pend, REG_BADBR, REG_BADRPT, REG_EBRACE, REG_EESCAPE, REG_EPAREN, REG_ESUBREG, REG_NEWLINE, repeat(), REQUIRE, SEETWO, SETERROR, and parse::strip.
Referenced by p_bre().
Definition at line 475 of file regcomp.c.
References GETNEXT, MORE, ordinary(), REG_EMPTY, and REQUIRE.
Referenced by llvm_regcomp().
Definition at line 1526 of file regcomp.c.
References parse::error, re_guts::iflags, O_PLUS, OEND, OP, OPLUS_, REGEX_BAD, and re_guts::strip.
Referenced by llvm_regcomp().
Definition at line 1268 of file regcomp.c.
References re_guts::ncsets, and re_guts::setbits.
Referenced by categorize().
Definition at line 1045 of file regcomp.c.
References parse::end, parse::error, parse::next, and nuls.
Definition at line 1428 of file regcomp.c.
References re_guts::nstates, llvm::LibFunc::realloc, REG_ESPACE, SETERROR, parse::slen, parse::strip, and re_guts::strip.
Referenced by llvm_regcomp().