[llvm-commits] [llvm] r63273 - in /llvm/trunk: include/llvm/CodeGen/SelectionDAG.h lib/CodeGen/SelectionDAG/SelectionDAG.cpp utils/TableGen/DAGISelEmitter.cpp
Bill Wendling
isanbard at gmail.com
Wed Jan 28 21:27:32 PST 2009
Author: void
Date: Wed Jan 28 23:27:31 2009
New Revision: 63273
URL: http://llvm.org/viewvc/llvm-project?rev=63273&view=rev
Log:
- Add DebugLoc to getTargetNode().
- Modify TableGen to add the DebugLoc when calling getTargetNode.
(The light-weight wrappers are only temporary. The non-DebugLoc version will be
removed once the whole debug info stuff is finished with.)
Modified:
llvm/trunk/include/llvm/CodeGen/SelectionDAG.h
llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/trunk/utils/TableGen/DAGISelEmitter.cpp
Modified: llvm/trunk/include/llvm/CodeGen/SelectionDAG.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/SelectionDAG.h?rev=63273&r1=63272&r2=63273&view=diff
==============================================================================
--- llvm/trunk/include/llvm/CodeGen/SelectionDAG.h (original)
+++ llvm/trunk/include/llvm/CodeGen/SelectionDAG.h Wed Jan 28 23:27:31 2009
@@ -699,72 +699,60 @@
/// node of the specified opcode and operands, it returns that node instead of
/// the current one.
SDNode *getTargetNode(unsigned Opcode, MVT VT);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT);
-
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT);
SDNode *getTargetNode(unsigned Opcode, MVT VT, SDValue Op1);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT, SDValue Op1);
-
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT, SDValue Op1);
SDNode *getTargetNode(unsigned Opcode, MVT VT, SDValue Op1, SDValue Op2);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT, SDValue Op1,
- SDValue Op2);
-
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT,
+ SDValue Op1, SDValue Op2);
SDNode *getTargetNode(unsigned Opcode, MVT VT,
SDValue Op1, SDValue Op2, SDValue Op3);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT,
SDValue Op1, SDValue Op2, SDValue Op3);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT,
const SDValue *Ops, unsigned NumOps);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT,
const SDValue *Ops, unsigned NumOps);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2);
-
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1, MVT VT2);
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, SDValue Op1);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2,
- SDValue Op1);
-
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1,
+ MVT VT2, SDValue Op1);
SDNode *getTargetNode(unsigned Opcode, MVT VT1,
MVT VT2, SDValue Op1, SDValue Op2);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1,
MVT VT2, SDValue Op1, SDValue Op2);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1,
MVT VT2, SDValue Op1, SDValue Op2, SDValue Op3);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1,
MVT VT2, SDValue Op1, SDValue Op2, SDValue Op3);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2,
const SDValue *Ops, unsigned NumOps);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1, MVT VT2,
const SDValue *Ops, unsigned NumOps);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3,
SDValue Op1, SDValue Op2);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2, MVT VT3,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL,
+ MVT VT1, MVT VT2, MVT VT3,
SDValue Op1, SDValue Op2);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3,
SDValue Op1, SDValue Op2, SDValue Op3);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2, MVT VT3,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1, MVT VT2, MVT VT3,
SDValue Op1, SDValue Op2, SDValue Op3);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3,
const SDValue *Ops, unsigned NumOps);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2, MVT VT3,
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1, MVT VT2, MVT VT3,
const SDValue *Ops, unsigned NumOps);
-
SDNode *getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3, MVT VT4,
const SDValue *Ops, unsigned NumOps);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1, MVT VT2, MVT VT3,
- MVT VT4, const SDValue *Ops, unsigned NumOps);
-
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL,
+ MVT VT1, MVT VT2, MVT VT3, MVT VT4,
+ const SDValue *Ops, unsigned NumOps);
SDNode *getTargetNode(unsigned Opcode, const std::vector<MVT> &ResultTys,
const SDValue *Ops, unsigned NumOps);
- SDNode *getTargetNode(unsigned Opcode, DebugLoc dl,
- const std::vector<MVT> &ResultTys, const SDValue *Ops,
- unsigned NumOps);
+ SDNode *getTargetNode(unsigned Opcode, DebugLoc DL,
+ const std::vector<MVT> &ResultTys,
+ const SDValue *Ops, unsigned NumOps);
/// getNodeIfExists - Get the specified node if it's already available, or
/// else return NULL.
Modified: llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp?rev=63273&r1=63272&r2=63273&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp (original)
+++ llvm/trunk/lib/CodeGen/SelectionDAG/SelectionDAG.cpp Wed Jan 28 23:27:31 2009
@@ -4747,169 +4747,142 @@
/// node of the specified opcode and operands, it returns that node instead of
/// the current one.
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT) {
- return getNode(~Opcode, VT).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT) {
- return getNode(~Opcode, dl, VT).getNode();
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT) {
+ return getNode(~Opcode, DL, VT).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT, SDValue Op1) {
- return getNode(~Opcode, VT, Op1).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT, Op1);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT,
- SDValue Op1) {
- return getNode(~Opcode, dl, VT, Op1).getNode();
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
+ MVT VT, SDValue Op1) {
+ return getNode(~Opcode, DL, VT, Op1).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT,
SDValue Op1, SDValue Op2) {
- return getNode(~Opcode, VT, Op1, Op2).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT, Op1, Op2);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT,
SDValue Op1, SDValue Op2) {
- return getNode(~Opcode, dl, VT, Op1, Op2).getNode();
+ return getNode(~Opcode, DL, VT, Op1, Op2).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT,
- SDValue Op1, SDValue Op2,
- SDValue Op3) {
- return getNode(~Opcode, VT, Op1, Op2, Op3).getNode();
-}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT,
- SDValue Op1, SDValue Op2,
- SDValue Op3) {
- return getNode(~Opcode, dl, VT, Op1, Op2, Op3).getNode();
+ SDValue Op1, SDValue Op2, SDValue Op3) {
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT, Op1, Op2, Op3);
+}
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT,
+ SDValue Op1, SDValue Op2, SDValue Op3) {
+ return getNode(~Opcode, DL, VT, Op1, Op2, Op3).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT,
const SDValue *Ops, unsigned NumOps) {
- return getNode(~Opcode, VT, Ops, NumOps).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT, Ops, NumOps);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT,
const SDValue *Ops, unsigned NumOps) {
- return getNode(~Opcode, dl, VT, Ops, NumOps).getNode();
+ return getNode(~Opcode, DL, VT, Ops, NumOps).getNode();
}
-
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1, MVT VT2) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2);
- SDValue Op;
- return getNode(~Opcode, VTs, 2, &Op, 0).getNode();
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
+ MVT VT1, MVT VT2) {
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
MVT VT1, MVT VT2) {
const MVT *VTs = getNodeValueTypes(VT1, VT2);
SDValue Op;
- return getNode(~Opcode, dl, VTs, 2, &Op, 0).getNode();
+ return getNode(~Opcode, DL, VTs, 2, &Op, 0).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1,
MVT VT2, SDValue Op1) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2);
- return getNode(~Opcode, VTs, 2, &Op1, 1).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2, Op1);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1,
MVT VT2, SDValue Op1) {
const MVT *VTs = getNodeValueTypes(VT1, VT2);
- return getNode(~Opcode, dl, VTs, 2, &Op1, 1).getNode();
+ return getNode(~Opcode, DL, VTs, 2, &Op1, 1).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1,
- MVT VT2, SDValue Op1,
- SDValue Op2) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2);
- SDValue Ops[] = { Op1, Op2 };
- return getNode(~Opcode, VTs, 2, Ops, 2).getNode();
+ MVT VT2, SDValue Op1, SDValue Op2) {
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2, Op1, Op2);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1,
- MVT VT2, SDValue Op1,
- SDValue Op2) {
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1,
+ MVT VT2, SDValue Op1, SDValue Op2) {
const MVT *VTs = getNodeValueTypes(VT1, VT2);
SDValue Ops[] = { Op1, Op2 };
- return getNode(~Opcode, dl, VTs, 2, Ops, 2).getNode();
+ return getNode(~Opcode, DL, VTs, 2, Ops, 2).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1,
MVT VT2, SDValue Op1,
SDValue Op2, SDValue Op3) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2);
- SDValue Ops[] = { Op1, Op2, Op3 };
- return getNode(~Opcode, VTs, 2, Ops, 3).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2,
+ Op1, Op2, Op3);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL, MVT VT1,
MVT VT2, SDValue Op1,
SDValue Op2, SDValue Op3) {
const MVT *VTs = getNodeValueTypes(VT1, VT2);
SDValue Ops[] = { Op1, Op2, Op3 };
- return getNode(~Opcode, dl, VTs, 2, Ops, 3).getNode();
+ return getNode(~Opcode, DL, VTs, 2, Ops, 3).getNode();
}
-
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1, MVT VT2,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
+ MVT VT1, MVT VT2,
const SDValue *Ops, unsigned NumOps) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2);
- return getNode(~Opcode, VTs, 2, Ops, NumOps).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2,
+ Ops, NumOps);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
MVT VT1, MVT VT2,
const SDValue *Ops, unsigned NumOps) {
const MVT *VTs = getNodeValueTypes(VT1, VT2);
- return getNode(~Opcode, dl, VTs, 2, Ops, NumOps).getNode();
+ return getNode(~Opcode, DL, VTs, 2, Ops, NumOps).getNode();
}
-
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
+ MVT VT1, MVT VT2, MVT VT3,
SDValue Op1, SDValue Op2) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2, VT3);
- SDValue Ops[] = { Op1, Op2 };
- return getNode(~Opcode, VTs, 3, Ops, 2).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2, VT3,
+ Op1, Op2);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
MVT VT1, MVT VT2, MVT VT3,
SDValue Op1, SDValue Op2) {
const MVT *VTs = getNodeValueTypes(VT1, VT2, VT3);
SDValue Ops[] = { Op1, Op2 };
- return getNode(~Opcode, dl, VTs, 3, Ops, 2).getNode();
+ return getNode(~Opcode, DL, VTs, 3, Ops, 2).getNode();
}
-
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3,
- SDValue Op1, SDValue Op2,
- SDValue Op3) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2, VT3);
- SDValue Ops[] = { Op1, Op2, Op3 };
- return getNode(~Opcode, VTs, 3, Ops, 3).getNode();
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
+ MVT VT1, MVT VT2, MVT VT3,
+ SDValue Op1, SDValue Op2, SDValue Op3) {
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2, VT3,
+ Op1, Op2, Op3);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
MVT VT1, MVT VT2, MVT VT3,
- SDValue Op1, SDValue Op2,
- SDValue Op3) {
+ SDValue Op1, SDValue Op2, SDValue Op3) {
const MVT *VTs = getNodeValueTypes(VT1, VT2, VT3);
SDValue Ops[] = { Op1, Op2, Op3 };
- return getNode(~Opcode, dl, VTs, 3, Ops, 3).getNode();
+ return getNode(~Opcode, DL, VTs, 3, Ops, 3).getNode();
}
-
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1, MVT VT2, MVT VT3,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
+ MVT VT1, MVT VT2, MVT VT3,
const SDValue *Ops, unsigned NumOps) {
- const MVT *VTs = getNodeValueTypes(VT1, VT2, VT3);
- return getNode(~Opcode, VTs, 3, Ops, NumOps).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(), VT1, VT2, VT3,
+ Ops, NumOps);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
MVT VT1, MVT VT2, MVT VT3,
const SDValue *Ops, unsigned NumOps) {
const MVT *VTs = getNodeValueTypes(VT1, VT2, VT3);
- return getNode(~Opcode, VTs, 3, Ops, NumOps).getNode();
+ return getNode(~Opcode, DL, VTs, 3, Ops, NumOps).getNode();
}
-
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, MVT VT1,
- MVT VT2, MVT VT3, MVT VT4,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
+ MVT VT1, MVT VT2, MVT VT3, MVT VT4,
const SDValue *Ops, unsigned NumOps) {
- std::vector<MVT> VTList;
- VTList.push_back(VT1);
- VTList.push_back(VT2);
- VTList.push_back(VT3);
- VTList.push_back(VT4);
- const MVT *VTs = getNodeValueTypes(VTList);
- return getNode(~Opcode, VTs, 4, Ops, NumOps).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(),
+ VT1, VT2, VT3, VT4, Ops, NumOps);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl, MVT VT1,
- MVT VT2, MVT VT3, MVT VT4,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
+ MVT VT1, MVT VT2, MVT VT3, MVT VT4,
const SDValue *Ops, unsigned NumOps) {
std::vector<MVT> VTList;
VTList.push_back(VT1);
@@ -4917,21 +4890,19 @@
VTList.push_back(VT3);
VTList.push_back(VT4);
const MVT *VTs = getNodeValueTypes(VTList);
- return getNode(~Opcode, dl, VTs, 4, Ops, NumOps).getNode();
+ return getNode(~Opcode, DL, VTs, 4, Ops, NumOps).getNode();
}
-
SDNode *SelectionDAG::getTargetNode(unsigned Opcode,
const std::vector<MVT> &ResultTys,
const SDValue *Ops, unsigned NumOps) {
- const MVT *VTs = getNodeValueTypes(ResultTys);
- return getNode(~Opcode, VTs, ResultTys.size(),
- Ops, NumOps).getNode();
+ return getTargetNode(Opcode, DebugLoc::getUnknownLoc(),
+ ResultTys, Ops, NumOps);
}
-SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc dl,
+SDNode *SelectionDAG::getTargetNode(unsigned Opcode, DebugLoc DL,
const std::vector<MVT> &ResultTys,
const SDValue *Ops, unsigned NumOps) {
const MVT *VTs = getNodeValueTypes(ResultTys);
- return getNode(~Opcode, dl, VTs, ResultTys.size(),
+ return getNode(~Opcode, DL, VTs, ResultTys.size(),
Ops, NumOps).getNode();
}
Modified: llvm/trunk/utils/TableGen/DAGISelEmitter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/DAGISelEmitter.cpp?rev=63273&r1=63272&r2=63273&view=diff
==============================================================================
--- llvm/trunk/utils/TableGen/DAGISelEmitter.cpp (original)
+++ llvm/trunk/utils/TableGen/DAGISelEmitter.cpp Wed Jan 28 23:27:31 2009
@@ -1059,6 +1059,9 @@
std::string Code = "Opc" + utostr(OpcNo);
+ if (!isRoot || (InputHasChain && !NodeHasChain))
+ Code += ", N.getDebugLoc()";
+
emitOpcode(II.Namespace + "::" + II.TheDef->getName());
// Output order: results, chain, flags
More information about the llvm-commits
mailing list