summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
diff options
context:
space:
mode:
authorBjorn Pettersson <bjorn.a.pettersson@ericsson.com>2018-05-02 06:56:38 +0000
committerBjorn Pettersson <bjorn.a.pettersson@ericsson.com>2018-05-02 06:56:38 +0000
commit1c5a05f32cf0095e9670d30396f24bb58b995cc5 (patch)
treea5fc29e7f5cf2ebb6bf863f0fbf644ce20499c0a /llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
parent7764a04af007eca68eafcf5caaea560ed05e35a9 (diff)
downloadbcm5719-llvm-1c5a05f32cf0095e9670d30396f24bb58b995cc5.tar.gz
bcm5719-llvm-1c5a05f32cf0095e9670d30396f24bb58b995cc5.zip
[SelectionDAG] Selection of DBG_VALUE using a PHI node result (pt 2)
Summary: This is a follow up to rL331182. A PHI node can be split up into several MIR PHI nodes when being selected. When there is a dbg.value intrinsic that uses the result of such a PHI node we need to select several DBG_VALUE instructions, with fragment expressions, in order to do a correct selection. Reviewers: rnk, aprantl, vsk Reviewed By: vsk Subscribers: mattd, llvm-commits, JDevlieghere, aprantl, gbedwell, rnk Tags: #debug-info Differential Revision: https://reviews.llvm.org/D46329 llvm-svn: 331337
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h')
-rw-r--r--llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
index af094e4ab1c..7ed61c64bf5 100644
--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
+++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
@@ -1048,6 +1048,11 @@ struct RegsForValue {
void AddInlineAsmOperands(unsigned Kind, bool HasMatching,
unsigned MatchingIdx, const SDLoc &dl,
SelectionDAG &DAG, std::vector<SDValue> &Ops) const;
+
+ /// Check if the total RegCount is greater than one.
+ bool occupiesMultipleRegs() const {
+ return std::accumulate(RegCount.begin(), RegCount.end(), 0) > 1;
+ }
};
} // end namespace llvm
OpenPOWER on IntegriCloud