Fix and test for assert/crash in v8 inlining of local functions in qml mode v5.1.0-rc1
authorDavid McFarland <corngood@gmail.com>
Sun, 26 May 2013 01:54:44 +0000 (22:54 -0300)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Fri, 31 May 2013 08:57:07 +0000 (10:57 +0200)
commit7d469e82e274d334c7d03d81b10d225c59d30798
treead3f500d1d62b42c16585a35151f470a1c79969e
parent30a8abf65e8fd08baaa972fb79af060043895215
Fix and test for assert/crash in v8 inlining of local functions in qml mode

When v8 tries to inline a local function which has been flagged
is_qml_global, the assert "CHECK(location_ != __null)" fails.

This happens because of the early out in RecordTypeFeedback for
is_qml_global.  I've limited the early out to UNALLOCATED
variables with is_qml_global.

bug: https://bugreports.qt-project.org/browse/QTBUG-31366

Change-Id: I360ef1a05a970589159686cf3100cb70de9ae29d
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
src/3rdparty/v8/src/ast.cc
tests/auto/v8/tst_v8.cpp
tests/auto/v8/v8main.cpp
tests/auto/v8/v8test.cpp
tests/auto/v8/v8test.h