summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
diff options
context:
space:
mode:
authorRon Lieberman <ronl@codeaurora.org>2016-09-17 16:21:09 +0000
committerRon Lieberman <ronl@codeaurora.org>2016-09-17 16:21:09 +0000
commitda5df7c99ed402cb8a9ae3c54abbbe72eeafdc6a (patch)
tree6a925f5222b0a45ed65236c90a9195823debf515 /llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
parentac0fc849cf53b41735526eba7931ee4f3508fb8f (diff)
downloadbcm5719-llvm-da5df7c99ed402cb8a9ae3c54abbbe72eeafdc6a.tar.gz
bcm5719-llvm-da5df7c99ed402cb8a9ae3c54abbbe72eeafdc6a.zip
[Hexagon] segv while processing SUnit with nullNodePtr
Added BoundaryNode check to isBestZeroLatency function. llvm-svn: 281825
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonSubtarget.cpp')
-rw-r--r--llvm/lib/Target/Hexagon/HexagonSubtarget.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp b/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
index a3ec0483113..8648901d6c1 100644
--- a/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
@@ -264,6 +264,10 @@ bool HexagonSubtarget::isBestZeroLatency(SUnit *Src, SUnit *Dst,
MachineInstr &SrcInst = *Src->getInstr();
MachineInstr &DstInst = *Dst->getInstr();
+ // Ignore Boundary SU nodes as these have null instructions.
+ if (Dst->isBoundaryNode())
+ return false;
+
if (SrcInst.isPHI() || DstInst.isPHI())
return false;
OpenPOWER on IntegriCloud