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 |
Macros | |
#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().
#define GOODFLAGS | ( | f | ) | ((f)&~REG_DUMP) |
Referenced by llvm_regcomp().
#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().
#define INF 3 |
Referenced by repeat().
#define INFINITY (DUPMAX + 1) |
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 N 2 |
Referenced by llvm::CompileUnit::addBlockByrefAddress(), llvm::AddCatchInfo(), llvm::MachineModuleInfo::addCatchTypeInfo(), llvm::CompileUnit::addComplexAddress(), llvm::GCOVBlock::addCount(), AddNodeIDCustom(), llvm::SUnit::addPred(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::adjustFromLeftSib(), llvm::User::allocHungoffUses(), llvm::PHINode::allocHungoffUses(), llvm::array_endof(), llvm::array_lengthof(), llvm::SelectionDAG::AssignTopologicalOrder(), llvm::APInt::byteSwap(), llvm::Calculate(), canFoldInAddressingMode(), CheckCondCode(), CheckInteger(), CheckValueType(), CloneNodeWithValues(), CombineBaseUpdate(), llvm::TargetLowering::TargetLoweringOpt::CombineTo(), llvm::DomTreeNodeBase< llvm::MachineBasicBlock >::compare(), llvm::ScheduleDAGSDNodes::computeLatency(), llvm::MachineBasicBlock::computeRegisterLiveness(), llvm::DIEBlock::ComputeSize(), llvm::DwarfUnits::computeSizeAndOffset(), ConstantFold(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::copy(), llvm::StringRef::count(), countOperands(), llvm::InstrEmitter::CountResults(), llvm::IRBuilder< true, TargetFolder >::CreateAggregateRet(), llvm::DIBuilder::createArtificialType(), llvm::DIBuilder::createObjectPointerType(), llvm::ilist_sentinel_traits< IVStrideUse >::destroySentinel(), llvm::DFSPass(), llvm::StringRef::drop_back(), llvm::StringRef::drop_front(), llvm::SelectionDAG::dump(), llvm::ScheduleDAGSDNodes::dumpNode(), llvm::DIEAbbrev::Emit(), llvm::DwarfDebug::emitDIE(), llvm::DwarfException::EmitExceptionTable(), llvm::ScheduleDAGSDNodes::EmitSchedule(), llvm::MachineCodeEmitter::emitString(), llvm::JITCodeEmitter::emitString(), llvm::DIEBlock::EmitValue(), llvm::StringSwitch< T, R >::EndsWith(), llvm::SmallVectorImpl< std::pair< int, int64_t > >::erase(), llvm::StringRef::find(), FindCallSeqStart(), llvm::IntervalMapImpl::LeafNode< typename, typename, unsigned, typename >::findFrom(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, RootBranchCap, Traits >::findFrom(), findGluedUser(), findMaskedBFI(), llvm::InstCombiner::FoldAndOfICmps(), FoldCondBranchOnPHI(), foldUDivShl(), llvm::ArrayRecycler< T, Align >::Capacity::get(), llvm::TypeBuilder< T[N], cross >::get(), llvm::MachineFunction::getBlockNumbered(), llvm::SelectionDAG::getCondCode(), llvm::legacy::FunctionPassManagerImpl::getContainedManager(), llvm::legacy::PassManagerImpl::getContainedManager(), llvm::LPPassManager::getContainedPass(), llvm::RGPassManager::getContainedPass(), llvm::FPPassManager::getContainedPass(), llvm::SelectionDAG::getCopyToReg(), llvm::SDLoc::getDebugLoc(), llvm::DominatorTreeBase< llvm::MachineBasicBlock >::getDescendants(), llvm::cl::parser< const PassInfo * >::getDescription(), llvm::BranchProbabilityInfo::getEdgeProbability(), llvm::MachineBranchProbabilityInfo::getEdgeProbability(), llvm::StructType::getElementType(), llvm::GraphTraits< MachineDomTreeNode * >::getEntryNode(), llvm::GraphTraits< SUnit * >::getEntryNode(), llvm::GraphTraits< DomTreeNode * >::getEntryNode(), llvm::GraphTraits< SDNode * >::getEntryNode(), getFoldedOffsetOf(), getFoldedSizeOf(), llvm::SDNode::getGluedMachineNode(), llvm::ScheduleDAGSDNodes::getGraphNodeLabel(), llvm::SDLoc::getIROrder(), llvm::RegisterClassInfo::getLastCalleeSavedAlias(), llvm::LoopBase< N, M >::getLoopLatch(), llvm::LoopBase< N, M >::getLoopPredecessor(), llvm::SelectionDAG::getMachineNode(), llvm::SelectionDAG::getMemIntrinsicNode(), llvm::SelectionDAG::getNode(), getNonCompileUnitScope(), llvm::SelectionDAGBuilder::getNonRegisterValue(), llvm::BitCodeAbbrev::getOperandInfo(), llvm::cl::parser< const PassInfo * >::getOption(), llvm::cl::parser< const PassInfo * >::getOptionValue(), llvm::MachineModuleInfo::getOrCreateLandingPadInfo(), llvm::CompileUnit::getOrCreateSubprogramDIE(), llvm::FoldingSetImpl::GetOrInsertNode(), llvm::PPCTargetLowering::getPreIndexedAddressParts(), llvm::MDNode::getTemporary(), llvm::DbgVariable::getType(), llvm::MachineModuleInfo::getTypeIDFor(), llvm::opt::Arg::getValue(), llvm::SelectionDAGBuilder::getValue(), llvm::PPC::getVSPLTImmediate(), llvm::ScalarEvolution::getZeroExtendExpr(), llvm::IntEqClasses::grow(), HandleMergeInputChains(), hasMoreThanOneUseOtherThanLLVMUsed(), llvm::Value::hasNUses(), llvm::Value::hasNUsesOrMore(), llvm::PressureDiffs::init(), llvm::ResourcePriorityQueue::initNumRegDefsLeft(), llvm::SDNode::InitOperands(), llvm::SmallSet< llvm::BasicBlock *, 16 >::insert(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, RootBranchCap, Traits >::insert(), llvm::IntervalMapImpl::LeafNode< typename, typename, unsigned, typename >::insertFrom(), llvm::FoldingSetImpl::InsertNode(), llvm::IntEqClasses::IntEqClasses(), Is_PostInc_S4_Offset(), llvm::PPC::isAllNegativeZeroVector(), isConstantSplatVector(), llvm::ISD::isEXTLoad(), llvm::TargetLowering::isGAPlusOffset(), llvm::isInt(), isInt32Immediate(), isInt64Immediate(), llvm::APInt::isIntN(), isIntS16Immediate(), llvm::A64Imms::isLogicalImm(), llvm::A64Imms::isLogicalImmBits(), llvm::ISD::isNON_EXTLoad(), llvm::ISD::isNON_TRUNCStore(), llvm::ISD::isNormalLoad(), llvm::ISD::isNormalStore(), llvm::SUnit::isPred(), IsS11_0_Offset(), IsS11_1_Offset(), IsS11_2_Offset(), IsS11_3_Offset(), isScalarLoadToVector(), llvm::ISD::isSEXTLoad(), llvm::APInt::isSignedIntN(), IsSingleInstrConstant(), llvm::SUnit::isSucc(), llvm::ISD::isTRUNCStore(), IsU6_0_Offset(), IsU6_1_Offset(), IsU6_2_Offset(), llvm::isUInt(), llvm::isUIntN(), llvm::ISD::isUNINDEXEDLoad(), llvm::ISD::isUNINDEXEDStore(), isVectorAllOnes(), llvm::PPC::isVSLDOIShuffleMask(), isZero(), isZeroOrAllOnes(), llvm::ISD::isZEXTLoad(), LLVMAddNamedMetadataOperand(), LLVMCreateGenericValueOfFloat(), LLVMGetMDNodeOperands(), LLVMGetNamedMetadataNumOperands(), LLVMGetNamedMetadataOperands(), llvm::AArch64TargetLowering::LowerBUILD_VECTOR(), llvm::MSP430TargetLowering::LowerShifts(), llvm::MipsCallEntry::MipsCallEntry(), llvm::SelectionDAG::MorphNodeTo(), llvm::IntervalMapImpl::NodeBase< std::pair< KeyT, KeyT >, ValT, N >::moveRight(), mult96bit(), operator new(), llvm::operator+(), llvm::opt::operator<(), llvm::raw_ostream::operator<<(), llvm::InlineAsm::ConstraintInfo::Parse(), partitionShuffleOfConcats(), llvm::PPCTargetLowering::PerformDAGCombine(), PerformLOADCombine(), PerformShuffleCombine256(), PerformSTORECombine(), PerformVECTOR_SHUFFLECombine(), llvm::AMDGPUTargetLowering::PostISelFolding(), llvm::format_object_base::print(), llvm::DIEAbbrev::print(), llvm::DIE::print(), llvm::PrintDomTree(), llvm::DebugInfoFinder::processDeclare(), llvm::DebugInfoFinder::processValue(), llvm::DIEAbbrev::Profile(), llvm::ImutAVLFactory< ImutInfo >::recoverNodes(), llvm::SelectionDAG::RemoveDeadNodes(), llvm::MachineFunction::removeFromMBBNumbering(), llvm::RemoveFromVector(), llvm::cl::parser< const PassInfo * >::removeLiteralOption(), llvm::MachineInstr::RemoveOperand(), llvm::SUnit::removePred(), repeat(), ReplaceINTRINSIC_W_CHAIN(), ReplaceLoadVector(), llvm::X86TargetLowering::ReplaceNodeResults(), llvm::LiveRangeCalc::reset(), llvm::BitVector::resize(), llvm::StringRef::rfind(), llvm::RegisterClassInfo::runOnMachineFunction(), llvm::IntervalMapImpl::LeafNode< typename, typename, unsigned, typename >::safeFind(), llvm::IntervalMapImpl::BranchNode< KeyT, ValT, RootBranchCap, Traits >::safeFind(), llvm::SDDbgValue::SDDbgValue(), llvm::PPCTargetLowering::SelectAddressRegImm(), llvm::PPCTargetLowering::SelectAddressRegRegOnly(), llvm::SelectionDAG::SelectNodeTo(), llvm::MCEncodedFragment::setBundlePadding(), llvm::DICompositeType::setContainingType(), llvm::yaml::Input::setCurrentDocument(), llvm::SelectionDAG::setGraphAttrs(), llvm::SelectionDAG::setGraphColor(), llvm::MachinePassRegistryNode::setNext(), llvm::FoldingSetImpl::Node::SetNextInBucket(), llvm::SDValue::setNode(), llvm::SUnit::setNode(), llvm::DIEAbbrev::setNumber(), llvm::MachineBasicBlock::setNumber(), llvm::SelectionDAG::setRoot(), llvm::DICompositeType::setTypeArray(), llvm::SelectionDAGBuilder::setUnusedArgValue(), llvm::SelectionDAGBuilder::setValue(), llvm::ArrayRef< uint8_t >::slice(), llvm::MutableArrayRef< T >::slice(), SolveQuadraticEquation(), llvm::opt::StrCmpOptionName(), llvm::StrInStrNoCase(), llvm::SmallString< 256 >::substr(), llvm::StringRef::substr(), llvm::ResourcePriorityQueue::SUSchedulingCost(), llvm::APInt::toString(), llvm::SelectionDAG::UpdateNodeOperands(), llvm::LoopBase< N, M >::verifyLoop(), llvm::InstCombiner::visitAdd(), llvm::object::yaml::BinaryRef::writeAsBinary(), llvm::WriteConstantInternal(), WriteFunctionLocalMetadata(), WriteModuleMetadata(), and llvm::DIE::~DIE().
#define never 0 /* some <assert.h>s have bugs too */ |
#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().
#define REP | ( | f, | |
t | |||
) | ((f)*8 + (t)) |
Referenced by repeat().
#define REQUIRE | ( | co, | |
e | |||
) | (void)((co) || SETERROR(e)) |
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().
#define SETERROR | ( | e | ) | seterr(p, (e)) |
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::Intrinsic::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().
|
static |
Definition at line 911 of file regcomp.c.
References parse::end, parse::next, othercase(), and p_bracket().
Referenced by ordinary().
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::Intrinsic::memmove, NPAREN, parse::pbegin, parse::pend, and parse::strip.
Definition at line 1311 of file regcomp.c.
References enlarge(), HERE, llvm::Intrinsic::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, for(), parse::g, and never.
Referenced by p_bracket().
Definition at line 1117 of file regcomp.c.
References CHsub, re_guts::csetsize, for(), 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, for(), freeset(), parse::g, cset::hash, re_guts::ncsets, and re_guts::sets.
Referenced by p_bracket().
|
static |
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::Intrinsic::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, for(), and parse::g.
Referenced by p_bracket().
|
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().
|
static |
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().
|
static |
Definition at line 893 of file regcomp.c.
Referenced by bothcases(), ordinary(), and p_bracket().
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 |
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().
Definition at line 836 of file regcomp.c.
References CHadd, and p_b_coll_elem().
Referenced by p_b_term().
|
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().
|
static |
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().
|
static |
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().
|
static |
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().
|
static |
|
static |
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().
|
static |
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().
|
static |
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().
|
static |
Definition at line 1268 of file regcomp.c.
References re_guts::ncsets, and re_guts::setbits.
Referenced by categorize().
|
static |
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().