HomeSort by: relevance | last modified time | path
    Searched refs:Constraints (Results 1 - 25 of 43) sorted by relevancy

1 2

  /src/external/apache2/llvm/dist/llvm/lib/Analysis/
ConstraintSystem.cpp 1 //===- ConstraintSytem.cpp - A system of linear constraints. ----*- C++ -*-===//
29 assert(!Constraints.empty() &&
31 unsigned NumVariables = Constraints[0].size();
34 unsigned NumConstraints = Constraints.size();
38 if (Constraints[R1][1] == 0) {
40 NR.push_back(Constraints[R1][0]);
42 NR.push_back(Constraints[R1][i]);
54 if (Constraints[R2][1] == 0)
57 if ((Constraints[R1][1] < 0 && Constraints[R2][1] < 0) |
    [all...]
DependenceAnalysis.cpp 21 // Currently, the implementation cannot propagate constraints between
430 // of the Constraints X and Y. Returns true if X has changed.
438 LLVM_DEBUG(dbgs() << "\tintersect constraints\n");
477 // two Line constraints, and the right-hand value, Y, is never
3045 // Review the constraints, looking for opportunities
3057 SmallVectorImpl<Constraint> &Constraints,
3062 LLVM_DEBUG(Constraints[LI].dump(dbgs()));
3063 if (Constraints[LI].isDistance())
3064 Result |= propagateDistance(Src, Dst, Constraints[LI], Consistent);
3065 else if (Constraints[LI].isLine()
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/Analysis/
ConstraintSystem.h 1 //===- ConstraintSystem.h - A system of linear constraints. --------------===//
22 /// Current linear constraints in the system.
25 SmallVector<SmallVector<int64_t, 8>, 4> Constraints;
30 // Eliminate constraints from the system using Fourier–Motzkin elimination.
33 /// Print the constraints in the system, using x0...xn as variable names.
36 /// Returns true if there may be a solution for the constraints in the system.
41 assert(Constraints.empty() || R.size() == Constraints.back().size());
52 Constraints.push_back(R);
57 for (auto &CR : Constraints) {
    [all...]
DependenceAnalysis.h 856 /// of the Constraints X and Y. Returns true if X has changed.
860 /// propagate - Review the constraints, looking for opportunities
868 SmallVectorImpl<Constraint> &Constraints,
  /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
PBQPRAConstraint.h 36 /// constraints (e.g. Spill-costs, interference, coalescing).
48 /// Constraints added to this list will be applied, in the order that they are
53 for (auto &C : Constraints)
59 Constraints.push_back(std::move(C));
63 std::vector<std::unique_ptr<PBQPRAConstraint>> Constraints;
  /src/external/apache2/llvm/dist/llvm/lib/IR/
InlineAsm.cpp 31 const std::string &constraints, bool hasSideEffects,
34 AsmString(asmString), Constraints(constraints), FTy(FTy),
38 assert(Verify(getFunctionType(), constraints) &&
39 "Function type not legal for constraints!");
43 StringRef Constraints, bool hasSideEffects,
46 InlineAsmKeyType Key(AsmString, Constraints, FTy, hasSideEffects,
134 // Parse the various constraints.
182 // FIXME: For now assuming these are 2-character constraints.
218 InlineAsm::ParseConstraints(StringRef Constraints) {
    [all...]
ConstantsContext.h 461 StringRef Constraints;
468 InlineAsmKeyType(StringRef AsmString, StringRef Constraints,
471 : AsmString(AsmString), Constraints(Constraints), FTy(FTy),
476 : AsmString(Asm->getAsmString()), Constraints(Asm->getConstraintString()),
484 AsmString == X.AsmString && Constraints == X.Constraints &&
493 Constraints == Asm->getConstraintString() &&
498 return hash_combine(AsmString, Constraints, HasSideEffects, IsAlignStack,
506 return new InlineAsm(FTy, std::string(AsmString), std::string(Constraints),
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/IR/
InlineAsm.h 42 std::string AsmString, Constraints;
50 const std::string &Constraints, bool hasSideEffects,
64 StringRef Constraints, bool hasSideEffects,
84 const std::string &getConstraintString() const { return Constraints; }
90 static bool Verify(FunctionType *Ty, StringRef Constraints);
153 /// isMultipleAlternative - '|': has multiple-alternative constraints.
156 /// multipleAlternatives - If there are multiple alternative constraints,
177 /// constraints and their prefixes. If this returns an empty vector, and if
181 /// ParseConstraints - Parse the constraints of this inlineasm object,
184 return ParseConstraints(Constraints);
    [all...]
  /src/external/apache2/llvm/dist/clang/lib/Sema/
SemaStmtAsm.cpp 211 getClobberConflictLocation(MultiExprArg Exprs, StringLiteral **Constraints,
219 StringRef Constraint = Constraints[i]->getString();
244 MultiExprArg constraints, MultiExprArg Exprs,
249 StringLiteral **Constraints =
250 reinterpret_cast<StringLiteral**>(constraints.data());
264 StringLiteral *Literal = Constraints[i];
278 NumInputs, Names, Constraints, Exprs.data(), AsmString,
347 NumInputs, Names, Constraints, Exprs.data(), AsmString,
355 StringLiteral *Literal = Constraints[i];
369 NumInputs, Names, Constraints, Exprs.data(), AsmString
    [all...]
  /src/external/apache2/llvm/dist/clang/lib/StaticAnalyzer/Core/
RangeConstraintManager.cpp 1 //== RangeConstraintManager.cpp - Manage range constraints.------*- C++ -*--==//
10 // equality and inequality constraints on symbolic values of ProgramState.
522 /// and sharing constraints between symbols within the class. Also we can
523 /// conclude that there is no practical need in storing constraints for
634 addToDisequalityInfo(DisequalityMapTy &Info, ConstraintRangeTy &Constraints,
648 areFeasible(ConstraintRangeTy Constraints) {
650 Constraints,
1524 ConstraintRangeTy Constraints = State->get<ConstraintRange>();
1530 Constraints = CF.add(Constraints, Class, Constraint)
    [all...]
BugReporterVisitors.cpp 1103 // plain value without any constraints, and the function is guaranteed
2089 // If so, we can track both its contents and constraints on its value.
2151 // track the constraints on its contents.
2385 // If we cannot evaluate the condition (and the constraints are the same)
2944 : Constraints(ConstraintMap::Factory().getEmptyMap()) {}
2949 // Collect new constraints
2956 // Add constraints to the solver
2957 for (const auto &I : Constraints) {
2980 BR.markInvalid("Infeasible constraints", EndPathNode->getLocationContext());
2985 // Collect new constraints
    [all...]
  /src/external/apache2/llvm/dist/clang/lib/Parse/
ParseStmtAsm.cpp 634 SmallVector<std::string, 4> Constraints;
637 NumInputs, OpExprs, Constraints, Clobbers,
642 // constraints. Clang always adds fpsr to the clobber list anyway.
664 ConstraintRefs[i] = StringRef(Constraints[i]);
758 ExprVector Constraints;
767 /*NumOutputs*/ 0, /*NumInputs*/ 0, nullptr, Constraints, Exprs,
778 if (!AteExtraColon && ParseAsmOperandsOpt(Names, Constraints, Exprs))
794 if (!AteExtraColon && ParseAsmOperandsOpt(Names, Constraints, Exprs))
798 assert(Names.size() == Constraints.size() &&
799 Constraints.size() == Exprs.size() && "Input operand size mismatch!")
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/MC/
MCInstrDesc.h 29 /// Operand constraints. These are encoded in 16 bits with one of the
32 /// This allows for a maximum of 3 constraints.
97 /// Operand constraints (see OperandConstraint enum).
98 uint16_t Constraints;
213 (OpInfo[OpNum].Constraints & (1 << Constraint))) {
215 return (int)(OpInfo[OpNum].Constraints >> ValuePos) & 0x0f;
  /src/external/apache2/llvm/dist/llvm/utils/TableGen/
CodeGenInstruction.h 117 std::vector<ConstraintInfo> Constraints;
130 for (unsigned j = 0, e = Constraints.size(); j != e; ++j) {
131 const CGIOperandList::ConstraintInfo &CI = Constraints[j];
InstrDocsEmitter.cpp 15 // * Operand constraints
182 // Constraints.
183 StringRef Constraints = Inst->getValueAsString("Constraints");
184 if (!Constraints.empty()) {
185 OS << "Constraints: ``" << Constraints << "``\n\n";
CodeGenInstruction.cpp 146 // Make sure the constraints list for each operand is large enough to hold
149 OpInfo.Constraints.resize(OpInfo.MINumOperands);
251 if (!Ops[Op.first].Constraints[Op.second].isNone())
254 "' cannot have multiple constraints!");
255 Ops[Op.first].Constraints[Op.second] =
306 if (!Ops[SrcOp.first].Constraints[SrcOp.second].isNone())
309 "' cannot have multiple constraints!");
318 if (Op.Constraints[i] == NewConstraint)
324 Ops[SrcOp.first].Constraints[SrcOp.second] = NewConstraint;
426 // Parse Constraints
    [all...]
  /src/external/apache2/llvm/dist/clang/lib/CodeGen/
CGStmt.cpp 1977 case '=': // Will see this and the following in mult-alt constraints.
1998 "Must pass output names to constraints with a symbolic name");
2204 // Get all the output and input constraints together.
2229 std::string Constraints;
2239 // Keep track of inout constraints.
2244 // Keep track of out constraints for tied input operand.
2254 // It can be marked readnone if it doesn't have any input memory constraints
2280 if (!Constraints.empty())
2281 Constraints += ',';
2289 Constraints += "=" + OutputConstraint
    [all...]
TargetInfo.h 151 /// Adds constraints and types for result registers.
154 std::string &Constraints, std::vector<llvm::Type *> &ResultRegTypes,
  /src/external/apache2/llvm/dist/clang/include/clang/StaticAnalyzer/Core/PathSensitive/
SMTConstraintManager.h 130 // Constraints are unsatisfiable
215 ConstraintSMTType Constraints = State->get<ConstraintSMT>();
217 Indent(Out, Space, IsDot) << "\"constraints\": ";
218 if (Constraints.isEmpty()) {
225 for (ConstraintSMTType::iterator I = Constraints.begin();
226 I != Constraints.end(); ++I) {
232 if (std::next(I) != Constraints.end())
309 // TODO: Don't add all the constraints, only the relevant ones
313 // Construct the logical AND of all the constraints
353 // hash of the constraints in a stat
    [all...]
  /src/external/apache2/llvm/dist/clang/lib/AST/
Stmt.cpp 505 /// output operand. All output constraints are known to be non-empty (either
528 /// constraints, these can be empty.
535 StringLiteral **Constraints,
558 C.Deallocate(this->Constraints);
559 this->Constraints = new (C) StringLiteral*[NumConstraints];
560 std::copy(Constraints, Constraints + NumConstraints, this->Constraints);
601 // "Simple" inline asms have no constraints or operands, just convert the asm
836 StringLiteral **constraints, Expr **exprs
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/MC/MCParser/
MCAsmParser.h 207 SmallVectorImpl<std::string> &Constraints,
  /src/external/apache2/llvm/dist/clang/include/clang/StaticAnalyzer/Core/BugReporter/
BugReporterVisitors.h 342 /// The symbolic value for which we are tracking constraints.
371 /// constraints. When it reaches the root node, will create a refutation
372 /// manager and check if the constraints are satisfiable
375 /// Holds the constraints in a given path
376 ConstraintMap Constraints;
  /src/external/apache2/llvm/dist/clang/include/clang/AST/
Stmt.h 2866 /// output operand. All output constraints are known to be non-empty (either
2888 /// constraints, these can be empty.
2980 StringLiteral **Constraints = nullptr;
2988 IdentifierInfo **names, StringLiteral **constraints, Expr **exprs,
3075 return Constraints[i];
3078 return Constraints[i];
3103 return Constraints[i + NumOutputs];
3106 return Constraints[i + NumOutputs];
3164 StringLiteral **Constraints,
3205 StringRef *Constraints = nullptr
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/RISCV/AsmParser/
RISCVAsmParser.cpp 140 // Check instruction constraints.
2485 RISCVII::VConstraintType Constraints =
2487 if (Constraints == RISCVII::NoConstraint)
2493 if (Constraints & RISCVII::VS2Constraint) {
2499 if ((Constraints & RISCVII::VS1Constraint) && (Inst.getOperand(2).isReg())) {
2505 if ((Constraints & RISCVII::VMConstraint) && (DestReg == RISCV::V0)) {
  /src/external/apache2/llvm/dist/clang/lib/Serialization/
ASTReaderStmt.cpp 384 SmallVector<StringLiteral*, 16> Constraints;
388 Constraints.push_back(cast_or_null<StringLiteral>(Record.readSubStmt()));
392 // Constraints
402 Names.data(), Constraints.data(),
439 SmallVector<StringRef, 16> Constraints;
442 Constraints.reserve(NumOperands);
446 Constraints.push_back(ConstraintsData.back());
450 Constraints, Exprs, Clobbers);

Completed in 49 milliseconds

1 2