diff options
author | Chris Lattner <sabre@nondot.org> | 2010-02-28 21:56:16 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-02-28 21:56:16 +0000 |
commit | 623a2e84fb46d52834a06a612adb4f8a7462402d (patch) | |
tree | 8abf9732c6ef2a04fc6474073e6c54fd7fff865b | |
parent | ff7fb60f2a7e2f3efd54df6480aadcb4adf5cab7 (diff) |
resolve a fixme by using hte new flag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97420 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/CodeGen/DAGISelHeader.h | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/include/llvm/CodeGen/DAGISelHeader.h b/include/llvm/CodeGen/DAGISelHeader.h index 9aec982229..51bb2f4915 100644 --- a/include/llvm/CodeGen/DAGISelHeader.h +++ b/include/llvm/CodeGen/DAGISelHeader.h @@ -889,17 +889,15 @@ SDNode *SelectCodeCommon(SDNode *NodeToMatch, const unsigned char *MatcherTable, Res->setNodeId(-1); } - // FIXME: Whether the selected node has a flag result should come from - // flags on the node. unsigned ResNumResults = Res->getNumValues(); - if (Res->getValueType(ResNumResults-1) == MVT::Flag) { - // Move the flag if needed. - if (OldFlagResultNo != -1 && - (unsigned)OldFlagResultNo != ResNumResults-1) - ReplaceUses(SDValue(NodeToMatch, OldFlagResultNo), - SDValue(Res, ResNumResults-1)); + // Move the flag if needed. + if ((EmitNodeInfo & OPFL_FlagOutput) && OldFlagResultNo != -1 && + (unsigned)OldFlagResultNo != ResNumResults-1) + ReplaceUses(SDValue(NodeToMatch, OldFlagResultNo), + SDValue(Res, ResNumResults-1)); + + if ((EmitNodeInfo & OPFL_FlagOutput) != 0) --ResNumResults; - } // Move the chain reference if needed. if ((EmitNodeInfo & OPFL_Chain) && OldChainResultNo != -1 && |