diff options
| author | 2018-04-17 14:56:29 -0700 | |
|---|---|---|
| committer | 2018-04-18 16:01:35 -0700 | |
| commit | 2905de1c0e5b6a0c995be474b3f0efdfdc6a41c4 (patch) | |
| tree | 83f372a7922090b3243831c2cb9a23b3ccd29c0b /compiler/optimizing/nodes.cc | |
| parent | 740a50992ea1a200068eb4486a172a151c9b329c (diff) | |
Deopt does not throw
Rationale:
"CanThrow" of deopt was possibly misused to prevents some
optimizations. However, the instruction technically cannot
throw an exception, and indeed crashed the graph verifier
for some corner cases. This Cl sets that right.
Bug: 29868356
Test: test-art-host,target
Change-Id: Icb551d3b2935282a70ad673a0544e4fe01104da1
Diffstat (limited to 'compiler/optimizing/nodes.cc')
| -rw-r--r-- | compiler/optimizing/nodes.cc | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/compiler/optimizing/nodes.cc b/compiler/optimizing/nodes.cc index f784f8f7f3..79bb70b9aa 100644 --- a/compiler/optimizing/nodes.cc +++ b/compiler/optimizing/nodes.cc @@ -1916,15 +1916,6 @@ 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() |