R600/SI: Check for empty stack in SIAnnotateControlFlow::isTopOfStack

Fixes assertion failure in newly added lit test. Might just be a bandaid that
needs to be revisited.

llvm-svn: 175139
diff --git a/llvm/lib/Target/R600/SIAnnotateControlFlow.cpp b/llvm/lib/Target/R600/SIAnnotateControlFlow.cpp
index f580377..2477e2a 100644
--- a/llvm/lib/Target/R600/SIAnnotateControlFlow.cpp
+++ b/llvm/lib/Target/R600/SIAnnotateControlFlow.cpp
@@ -147,7 +147,7 @@
 
 /// \brief Is BB the last block saved on the stack ?
 bool SIAnnotateControlFlow::isTopOfStack(BasicBlock *BB) {
-  return Stack.back().first == BB;
+  return !Stack.empty() && Stack.back().first == BB;
 }
 
 /// \brief Pop the last saved value from the control flow stack