HomeSort by: relevance | last modified time | path
    Searched refs:Dag (Results 1 - 14 of 14) sorted by relevancy

  /src/external/apache2/llvm/dist/llvm/utils/TableGen/GlobalISel/
GIMatchDagInstr.h 18 /// Represents an instruction in the match DAG. This object knows very little
20 /// predicates that are associated with the match DAG. It merely knows the names
34 /// The match DAG this instruction belongs to.
35 GIMatchDag &Dag;
63 /// output since predicates are expected to be handled outside the DAG.
70 GIMatchDagInstr(GIMatchDag &Dag, StringRef Name, StringRef UserAssignedName,
72 : Dag(Dag), Name(Name), UserAssignedName(UserAssignedName),
GIMatchDagInstr.cpp 42 Dag.addMatchRoot(this);
  /src/external/apache2/llvm/dist/llvm/utils/TableGen/
PseudoLoweringEmitter.cpp 54 unsigned addDagOperandMapping(Record *Rec, DagInit *Dag,
70 // a single dag, so we can do fancier things.
73 addDagOperandMapping(Record *Rec, DagInit *Dag, CodeGenInstruction &Insn,
76 for (unsigned i = 0, e = Dag->getNumArgs(); i != e; ++i) {
77 if (DefInit *DI = dyn_cast<DefInit>(Dag->getArg(i))) {
107 } else if (IntInit *II = dyn_cast<IntInit>(Dag->getArg(i))) {
111 } else if (auto *BI = dyn_cast<BitsInit>(Dag->getArg(i))) {
116 } else if (DagInit *SubDag = dyn_cast<DagInit>(Dag->getArg(i))) {
135 DagInit *Dag = Rec->getValueAsDag("ResultInst");
136 assert(Dag && "Missing result instruction in pseudo expansion!")
    [all...]
RISCVCompressInstEmitter.cpp 24 // class CompressPat<dag input, dag output> {
25 // dag Input = input;
26 // dag Output = output;
116 void addDagOperandMapping(Record *Rec, DagInit *Dag, CodeGenInstruction &Inst,
156 // Only source instruction operands are allowed to not match Input Dag
176 << " Dag Operand Type: '" << DagOpType->getName()
183 /// The patterns in the Dag contain different types of operands:
186 /// maps Dag operands to its corresponding instruction operands. For register
187 /// operands and fixed registers it expects the Dag operand type to be containe
    [all...]
CodeGenDAGPatterns.cpp 1 //===- CodeGenDAGPatterns.cpp - Read DAG patterns from .td file -----------===//
34 #define DEBUG_TYPE "dag-patterns"
1850 if (DagInit *Dag = dyn_cast<DagInit>(I))
1851 if (DefInit *DI = dyn_cast<DefInit>(Dag->getOperator()))
2170 /// When Unnamed is set, return the type of a DAG operand with no name, such as
2175 /// When Unnamed is false, return the type of a named DAG operand such as the
2596 // default if we've run out of children of the pattern DAG to consume,
2837 DagInit *Dag = dyn_cast<DagInit>(TheInit);
2838 if (!Dag) {
2842 DefInit *OpDef = dyn_cast<DefInit>(Dag->getOperator())
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/Target/PowerPC/
PPCMachineScheduler.h 41 void initialize(ScheduleDAGMI *Dag) override;
PPCMachineScheduler.cpp 66 if (DAG->isTrackingPressure() &&
68 RegExcess, TRI, DAG->MF))
72 if (DAG->isTrackingPressure() &&
74 TryCand, Cand, RegCritical, TRI, DAG->MF))
102 // the scheduler pass by combining the loads during DAG postprocessing.
104 Cand.AtTop ? DAG->getNextClusterSucc() : DAG->getNextClusterPred();
106 TryCand.AtTop ? DAG->getNextClusterSucc() : DAG->getNextClusterPred();
119 if (DAG->isTrackingPressure() &
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/TableGen/
JSONBackend.cpp 91 } else if (auto *Dag = dyn_cast<DagInit>(&I)) {
92 obj["kind"] = "dag";
93 obj["operator"] = translateInit(*Dag->getOperator());
94 if (auto name = Dag->getName())
97 for (unsigned i = 0, limit = Dag->getNumArgs(); i < limit; ++i) {
99 arg.push_back(translateInit(*Dag->getArg(i)));
100 if (auto argname = Dag->getArgName(i))
TGLexer.h 50 Assert, Bit, Bits, Class, Code, Dag, Def, Defm, Defset, Defvar, ElseKW,
Record.cpp 138 return "dag";
814 if (DagInit *Dag = dyn_cast<DagInit>(LHS)) {
815 DefInit *DI = DefInit::get(Dag->getOperatorAsDef({}));
974 PrintFatalError(Twine("Concatenated Dag operators do not match: '") +
1093 DagInit *Dag = dyn_cast<DagInit>(LHS);
1095 if (Dag && Op) {
1098 for (unsigned i = 0, e = Dag->getNumArgs(); i != e; ++i) {
1099 Args.push_back(Dag->getArg(i));
1100 ArgNames.push_back(Dag->getArgName(i));
1357 case DAG:
    [all...]
TGParser.cpp 809 /// Type ::= DAG // dag type
819 case tgtok::Dag: Lex.Lex(); return DagRecTy::get();
1007 TokError("expected string, list, or dag type argument in unary operator");
1015 TokError("expected string, list, or dag type argument in unary operator");
1324 // After parsing the first dag argument, switch to expecting
1385 Code = TernOpInit::DAG;
1434 Error(MHSLoc, "could not determine type of the child list in !dag");
1445 Error(RHSLoc, "could not determine type of the name list in !dag");
1456 "cannot have both unset children and unset names in !dag");
    [all...]
  /src/external/apache2/llvm/dist/llvm/include/llvm/CodeGen/
MachineScheduler.h 17 // scheduled. Targets can override the DAG builder and scheduler without
25 // The default scheduler, ScheduleDAGMILive, builds the DAG and drives list
27 // intervals. Most targets don't need to override the DAG builder and list
37 // The DAG builder can also be customized in a sense by adding DAG mutations
38 // that will run after DAG building and before list scheduling. DAG mutations
44 // ScheduleDAGMI *DAG = createGenericSchedLive(C);
45 // DAG->addMutation(new CustomDAGMutation(...));
46 // return DAG;
    [all...]
  /src/external/apache2/llvm/dist/clang/utils/TableGen/
MveEmitter.cpp 457 // In the case where the Tablegen provides a value in the codegen dag as a
497 // set by setPredecessor() while processing a 'seq' dag node, and the list
1061 if (auto Dag = dyn_cast<DagInit>(I))
1062 return getType(Dag, Param);
1090 // dag whose operators select sub-cases of this function.
1095 "Expected ComplexTypeOp as dag operator in type expression");
1153 PrintFatalError("Bad operator in type dag expression");
1254 PrintFatalError("Unsupported dag node " + Op->getName());
1268 "dag operator argument should not have both a value and a name");
1297 PrintError("bad DAG argument type for code generation")
    [all...]
  /src/external/apache2/llvm/dist/llvm/lib/CodeGen/
MachineScheduler.cpp 142 // DAG subtrees must have at least this many nodes.
367 /// consistent with the DAG builder, which traverses the interior of the
370 /// This design avoids exposing scheduling boundaries to the DAG builder,
371 /// simplifying the DAG builder's support for "special" target instructions.
453 /// handle calls, the DAG builder needs to be modified to create register
549 // points to the scheduling boundary at the bottom of the region. The DAG
770 // Build the DAG.
782 // Initialize the strategy before modifying the DAG.
786 // Initialize ready queues now that the DAG and priority data are finalized.
819 // Notify the scheduling strategy before updating the DAG
    [all...]

Completed in 44 milliseconds