summaryrefslogtreecommitdiff
path: root/compiler/optimizing/nodes.cc
diff options
context:
space:
mode:
author Aart Bik <ajcbik@google.com> 2018-04-21 01:28:11 +0000
committer Aart Bik <ajcbik@google.com> 2018-04-21 01:28:11 +0000
commit75ff2c96c37485ff8c74cf9942c0a4bf0710e91c (patch)
tree13b3cdcf7060e06b1dc50201c4f4d9436d379db7 /compiler/optimizing/nodes.cc
parent240384b7d96c2d579bf58ed7a3e9c9ba1911dae3 (diff)
Revert "Revert^2: Deopt does not throw"
This reverts commit 240384b7d96c2d579bf58ed7a3e9c9ba1911dae3. Reason for revert: P1 b/78360004 points to this so reverting for now (will triage later) Change-Id: I041c1d9fc045391c73e887268c3b1b9b69fcc216
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()