Reviewers: Benedikt Meurer, Michael Starzinger,
Message:
Could you take a look, please?
Description:
Remove a brittle assertion from Turbofan lazy deoptimization handling.
As discussed in person with Benedikt, it is better to remove the assertion
because it is too brittle. The assertion says that the continuation block
should
immediately follow the call. However, there are exceptions - such as nop or
constant pool in-between being fine - that make the assertion brittle.
BUG=
Please review this at https://codereview.chromium.org/471523002/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+0, -8 lines):
M src/compiler/code-generator.cc
M test/cctest/cctest.status
Index: src/compiler/code-generator.cc
diff --git a/src/compiler/code-generator.cc b/src/compiler/code-generator.cc
index
878ace3be1e631a75bc31ff5670852348ef581cc..d151ac97c609ede082c542dca095db08350ccdbd
100644
--- a/src/compiler/code-generator.cc
+++ b/src/compiler/code-generator.cc
@@ -225,9 +225,6 @@ void
CodeGenerator::PopulateDeoptimizationData(Handle<Code> code_object) {
// Populate the return address patcher entries.
for (int i = 0; i < patch_count; ++i) {
LazyDeoptimizationEntry entry = lazy_deoptimization_entries_[i];
- DCHECK(entry.position_after_call() == entry.continuation()->pos() ||
- IsNopForSmiCodeInlining(code_object,
entry.position_after_call(),
- entry.continuation()->pos()));
data->SetReturnAddressPc(i, Smi::FromInt(entry.position_after_call()));
data->SetPatchedAddressPc(i,
Smi::FromInt(entry.deoptimization()->pos()));
}
Index: test/cctest/cctest.status
diff --git a/test/cctest/cctest.status b/test/cctest/cctest.status
index
cfe5fa0397a4c34443a736f11588714c1b827059..60baaca081caedc70b366b6295998e97c9a0fa14
100644
--- a/test/cctest/cctest.status
+++ b/test/cctest/cctest.status
@@ -179,11 +179,6 @@
'test-api/Bug618': [PASS],
- # TODO(turbofan): Deoptimization support buggy with snapshot=off.
- 'test-run-deopt/*': [PASS, ['no_snap == True', NO_VARIANTS]],
- 'test-deoptimization/*': [PASS, ['no_snap == True', NO_VARIANTS]],
- 'test-scheduler/BuildScheduleTrivialLazyDeoptCall': [PASS, ['no_snap ==
True', NO_VARIANTS]],
-
# BUG(v8:3385).
'test-serialize/DeserializeFromSecondSerialization': [PASS, FAIL],
'test-serialize/DeserializeFromSecondSerializationAndRunScript2': [PASS,
FAIL],
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.