summaryrefslogtreecommitdiff
path: root/compiler/optimizing/nodes.cc
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2018-04-19 05:32:07 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2018-04-19 05:32:07 +0000
commitcee49280366af9aa35e889e90d0ae0e90b453a22 (patch)
tree6b0b08d809291da44d9fdd368e4d6c5d9e4ce25e /compiler/optimizing/nodes.cc
parentb8b38900bef869495afe63458f04c85ef9d5aae7 (diff)
parent080820c8e7a25bc3fb28d7c5a1524b0e5537c7a9 (diff)
Merge "Revert "Deopt does not throw""
Diffstat (limited to 'compiler/optimizing/nodes.cc')
-rw-r--r--compiler/optimizing/nodes.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/compiler/optimizing/nodes.cc b/compiler/optimizing/nodes.cc
index 79bb70b9aa..f784f8f7f3 100644
--- a/compiler/optimizing/nodes.cc
+++ b/compiler/optimizing/nodes.cc
@@ -1916,6 +1916,15 @@ const HTryBoundary* HBasicBlock::ComputeTryEntryOfSuccessors() const {
}
}
+bool HBasicBlock::HasThrowingInstructions() const {
+ for (HInstructionIterator it(GetInstructions()); !it.Done(); it.Advance()) {
+ if (it.Current()->CanThrow()) {
+ return true;
+ }
+ }
+ return false;
+}
+
static bool HasOnlyOneInstruction(const HBasicBlock& block) {
return block.GetPhis().IsEmpty()
&& !block.GetInstructions().IsEmpty()