Line | Source | Count |
1 | | - |
2 | | - |
3 | | - |
4 | namespace QV4 { | - |
5 | | - |
6 | namespace Compiler { | - |
7 | | - |
8 | struct ControlFlow { | - |
9 | using Reference = Codegen::Reference; | - |
10 | using BytecodeGenerator = Moth::BytecodeGenerator; | - |
11 | using Instruction = Moth::Instruction; | - |
12 | | - |
13 | enum Type { | - |
14 | Loop, | - |
15 | With, | - |
16 | Block, | - |
17 | Finally, | - |
18 | Catch | - |
19 | }; | - |
20 | | - |
21 | enum UnwindType { | - |
22 | Break, | - |
23 | Continue, | - |
24 | Return | - |
25 | }; | - |
26 | | - |
27 | struct UnwindTarget { | - |
28 | BytecodeGenerator::Label linkLabel; | - |
29 | int unwindLevel; | - |
30 | }; | - |
31 | | - |
32 | Codegen *cg; | - |
33 | ControlFlow *parent; | - |
34 | Type type; | - |
35 | | - |
36 | ControlFlow(Codegen *cg, Type type) | - |
37 | : cg(cg), parent(cg->controlFlow), type(type) | - |
38 | { | - |
39 | cg->controlFlow = this; | - |
40 | }executed 1808077 times by 76 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 1808077 |
41 | | - |
42 | virtual ~ControlFlow() { | - |
43 | cg->controlFlow = parent; | - |
44 | }executed 1815632 times by 76 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 1815632 |
45 | | - |
46 | UnwindTarget unwindTarget(UnwindType type, const QString &label = QString()) | - |
47 | { | - |
48 | ((type == Break || type == Continue || type == Return) ? static_cast<void>(0) : qt_assert("type == Break || type == Continue || type == Return", __FILE__, 104)); | - |
49 | ControlFlow *flow = this; | - |
50 | int level = 0; | - |
51 | while (flowTRUE | evaluated 553069 times by 28 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- ...
| FALSE | evaluated 501977 times by 27 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
|
) { | 501977-553069 |
52 | BytecodeGenerator::Label l = flow->getUnwindTarget(type, label); | - |
53 | if (l.isValid()TRUE | evaluated 18110 times by 10 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| FALSE | evaluated 537738 times by 28 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- ...
|
) | 18110-537738 |
54 | returnexecuted 18112 times by 10 tests: return UnwindTarget{l, level}; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
UnwindTarget{l, level};executed 18112 times by 10 tests: return UnwindTarget{l, level}; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| 18112 |
55 | if (flow->requiresUnwind()TRUE | evaluated 82890 times by 13 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| FALSE | evaluated 452832 times by 26 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
|
) | 82890-452832 |
56 | ++executed 82875 times by 13 tests: ++level; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
level;executed 82875 times by 13 tests: ++level; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 82875 |
57 | flow = flow->parent; | - |
58 | }executed 536372 times by 28 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- ...
| 536372 |
59 | if (type == ReturnTRUE | evaluated 502571 times by 27 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
| FALSE | evaluated 6 times by 1 test |
) | 6-502571 |
60 | returnexecuted 505876 times by 27 tests: return UnwindTarget{ cg->returnLabel(), level }; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
UnwindTarget{ cg->returnLabel(), level };executed 505876 times by 27 tests: return UnwindTarget{ cg->returnLabel(), level }; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
| 505876 |
61 | returnexecuted 6 times by 1 test: return UnwindTarget(); UnwindTarget();executed 6 times by 1 test: return UnwindTarget(); | 6 |
62 | } | - |
63 | | - |
64 | virtual QString label() const { returnexecuted 282 times by 3 tests: return QString(); Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
QString();executed 282 times by 3 tests: return QString(); Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
} | 282 |
65 | | - |
66 | bool hasLoop() const { | - |
67 | const ControlFlow *flow = this; | - |
68 | while (flowTRUE | evaluated 2190619 times by 76 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| FALSE | evaluated 1672862 times by 76 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
|
) { | 1672862-2190619 |
69 | if (flow->type == LoopTRUE | evaluated 64236 times by 26 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickrepeater
- tst_qquickvisualdatamodel
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_signalspy
- ...
| FALSE | evaluated 2126927 times by 76 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
|
) | 64236-2126927 |
70 | returnexecuted 64244 times by 26 tests: return true; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickrepeater
- tst_qquickvisualdatamodel
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_signalspy
- ...
true;executed 64244 times by 26 tests: return true; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickrepeater
- tst_qquickvisualdatamodel
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_signalspy
- ...
| 64244 |
71 | flow = flow->parent; | - |
72 | }executed 2128177 times by 76 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 2128177 |
73 | returnexecuted 1675981 times by 76 tests: return false; Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
false;executed 1675981 times by 76 tests: return false; Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 1675981 |
74 | } | - |
75 | | - |
76 | protected: | - |
77 | virtual BytecodeGenerator::Label getUnwindTarget(UnwindType, const QString & = QString()) { | - |
78 | returnexecuted 532531 times by 28 tests: return BytecodeGenerator::Label(); Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- ...
BytecodeGenerator::Label();executed 532531 times by 28 tests: return BytecodeGenerator::Label(); Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- ...
| 532531 |
79 | } | - |
80 | virtual bool requiresUnwind() { | - |
81 | return never executed: return false; false;never executed: return false; | 0 |
82 | } | - |
83 | | - |
84 | public: | - |
85 | BytecodeGenerator::ExceptionHandler *parentUnwindHandler() { | - |
86 | returnexecuted 160405 times by 22 tests: return parent ? parent->unwindHandler() : nullptr; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
parent ? parent->unwindHandler() : nullptr;executed 160405 times by 22 tests: return parent ? parent->unwindHandler() : nullptr; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 160405 |
87 | } | - |
88 | | - |
89 | virtual BytecodeGenerator::ExceptionHandler *unwindHandler() { | - |
90 | return never executed: return parentUnwindHandler(); parentUnwindHandler();never executed: return parentUnwindHandler(); | 0 |
91 | } | - |
92 | | - |
93 | | - |
94 | protected: | - |
95 | QString loopLabel() const { | - |
96 | QString label; | - |
97 | if (cg->_labelledStatementTRUE | evaluated 603 times by 5 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
| FALSE | evaluated 29962 times by 32 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- ...
|
) { | 603-29962 |
98 | label = cg->_labelledStatement->label.toString(); | - |
99 | cg->_labelledStatement = nullptr; | - |
100 | }executed 603 times by 5 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
| 603 |
101 | returnexecuted 30522 times by 32 tests: return label; Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- ...
label;executed 30522 times by 32 tests: return label; Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- ...
| 30522 |
102 | } | - |
103 | BytecodeGenerator *generator() const { | - |
104 | returnexecuted 862770 times by 22 tests: return cg->bytecodeGenerator; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
cg->bytecodeGenerator;executed 862770 times by 22 tests: return cg->bytecodeGenerator; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 862770 |
105 | } | - |
106 | }; | - |
107 | | - |
108 | struct ControlFlowUnwind : public ControlFlow | - |
109 | { | - |
110 | BytecodeGenerator::ExceptionHandler unwindLabel; | - |
111 | | - |
112 | ControlFlowUnwind(Codegen *cg, Type type) | - |
113 | : ControlFlow(cg, type) | - |
114 | { | - |
115 | }executed 1813663 times by 76 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 1813663 |
116 | | - |
117 | void setupUnwindHandler() | - |
118 | { | - |
119 | unwindLabel = generator()->newExceptionHandler(); | - |
120 | }executed 129245 times by 22 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 129245 |
121 | | - |
122 | void emitUnwindHandler() | - |
123 | { | - |
124 | ((requiresUnwind()) ? static_cast<void>(0) : qt_assert("requiresUnwind()", __FILE__, 180)); | - |
125 | | - |
126 | Instruction::UnwindDispatch dispatch; | - |
127 | generator()->addInstruction(dispatch); | - |
128 | }executed 129947 times by 22 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 129947 |
129 | | - |
130 | virtual BytecodeGenerator::ExceptionHandler *unwindHandler() override { | - |
131 | returnexecuted 31337 times by 17 tests: return unwindLabel.isValid() ? &unwindLabel : parentUnwindHandler(); Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
unwindLabel.isValid() ? &unwindLabel : parentUnwindHandler();executed 31337 times by 17 tests: return unwindLabel.isValid() ? &unwindLabel : parentUnwindHandler(); Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 31337 |
132 | } | - |
133 | }; | - |
134 | | - |
135 | struct ControlFlowLoop : public ControlFlowUnwind | - |
136 | { | - |
137 | QString loopLabel; | - |
138 | BytecodeGenerator::Label *breakLabel = nullptr; | - |
139 | BytecodeGenerator::Label *continueLabel = nullptr; | - |
140 | bool _requiresUnwind; | - |
141 | | - |
142 | ControlFlowLoop(Codegen *cg, BytecodeGenerator::Label *breakLabel, BytecodeGenerator::Label *continueLabel = nullptr, bool requiresUnwind = false) | - |
143 | : ControlFlowUnwind(cg, Loop), loopLabel(ControlFlow::loopLabel()), breakLabel(breakLabel), continueLabel(continueLabel), _requiresUnwind(requiresUnwind) | - |
144 | { | - |
145 | if (_requiresUnwindTRUE | evaluated 13449 times by 13 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlqt
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| FALSE | evaluated 17157 times by 30 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- tst_qquickworkerscript
- ...
|
) { | 13449-17157 |
146 | setupUnwindHandler(); | - |
147 | generator()->setUnwindHandler(&unwindLabel); | - |
148 | }executed 13484 times by 13 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlqt
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 13484 |
149 | }executed 30661 times by 32 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- ...
| 30661 |
150 | | - |
151 | ~ControlFlowLoop() { | - |
152 | if (_requiresUnwindTRUE | evaluated 13528 times by 13 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlqt
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| FALSE | evaluated 17131 times by 30 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- tst_qquickworkerscript
- ...
|
) { | 13528-17131 |
153 | unwindLabel.link(); | - |
154 | generator()->setUnwindHandler(parentUnwindHandler()); | - |
155 | emitUnwindHandler(); | - |
156 | }executed 13554 times by 13 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlqt
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 13554 |
157 | }executed 30714 times by 32 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlcomponent
- tst_qqmlecmascript
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickcustomaffector
- tst_qquickgridview
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpathview
- tst_qquickpositioners
- tst_qquickrepeater
- tst_qquickscreen
- tst_qquickvisualdatamodel
- ...
| 30714 |
158 | | - |
159 | bool requiresUnwind() override { | - |
160 | returnexecuted 15651 times by 16 tests: return _requiresUnwind; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlqt
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
_requiresUnwind;executed 15651 times by 16 tests: return _requiresUnwind; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlqt
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 15651 |
161 | } | - |
162 | | - |
163 | BytecodeGenerator::Label getUnwindTarget(UnwindType type, const QString &label) override { | - |
164 | switch (type) { | - |
165 | caseexecuted 17118 times by 9 tests: case Break: Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
Break:executed 17118 times by 9 tests: case Break: Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| 17118 |
166 | if (breakLabelTRUE | evaluated 17168 times by 9 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| FALSE | never evaluated |
&& (label.isEmpty()TRUE | evaluated 16945 times by 9 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| FALSE | evaluated 248 times by 2 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
|
|| label == loopLabelTRUE | evaluated 160 times by 2 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
| FALSE | evaluated 88 times by 2 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
|
)) | 0-17168 |
167 | returnexecuted 17029 times by 9 tests: return *breakLabel; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
*breakLabel;executed 17029 times by 9 tests: return *breakLabel; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| 17029 |
168 | break;executed 88 times by 2 tests: break; Executed by:- tst_ecmascripttests
- tst_parserstress
| 88 |
169 | caseexecuted 1212 times by 9 tests: case Continue: Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
Continue:executed 1212 times by 9 tests: case Continue: Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| 1212 |
170 | if (continueLabelTRUE | evaluated 1086 times by 9 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| FALSE | evaluated 126 times by 2 testsEvaluated by:- tst_ecmascripttests
- tst_qjsengine
|
&& (label.isEmpty()TRUE | evaluated 826 times by 9 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| FALSE | evaluated 262 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
|
|| label == loopLabelTRUE | evaluated 152 times by 2 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
| FALSE | evaluated 110 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
|
)) | 110-1086 |
171 | returnexecuted 976 times by 9 tests: return *continueLabel; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
*continueLabel;executed 976 times by 9 tests: return *continueLabel; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_quicktestmainwithsetup
- tst_testfiltering
| 976 |
172 | break;executed 236 times by 3 tests: break; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
| 236 |
173 | defaultexecuted 1778 times by 14 tests: default: Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_testfiltering
:executed 1778 times by 14 tests: default: Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_testfiltering
| 1778 |
174 | break;executed 1777 times by 14 tests: break; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_testfiltering
| 1777 |
175 | } | - |
176 | returnexecuted 2102 times by 14 tests: return BytecodeGenerator::Label(); Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_testfiltering
BytecodeGenerator::Label();executed 2102 times by 14 tests: return BytecodeGenerator::Label(); Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qqmllistmodel
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_testfiltering
| 2102 |
177 | } | - |
178 | | - |
179 | QString label() const override { returnexecuted 170 times by 3 tests: return loopLabel; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
loopLabel;executed 170 times by 3 tests: return loopLabel; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
} | 170 |
180 | }; | - |
181 | | - |
182 | | - |
183 | struct ControlFlowWith : public ControlFlowUnwind | - |
184 | { | - |
185 | ControlFlowWith(Codegen *cg) | - |
186 | : ControlFlowUnwind(cg, With) | - |
187 | { | - |
188 | setupUnwindHandler(); | - |
189 | | - |
190 | | - |
191 | Instruction::PushWithContext pushScope; | - |
192 | generator()->addInstruction(pushScope); | - |
193 | generator()->setUnwindHandler(&unwindLabel); | - |
194 | }executed 818 times by 6 tests: end of block Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qv4debugger
| 818 |
195 | | - |
196 | ~ControlFlowWith() { | - |
197 | | - |
198 | unwindLabel.link(); | - |
199 | | - |
200 | generator()->setUnwindHandler(parentUnwindHandler()); | - |
201 | Instruction::PopContext pop; | - |
202 | generator()->addInstruction(pop); | - |
203 | | - |
204 | emitUnwindHandler(); | - |
205 | }executed 819 times by 6 tests: end of block Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qv4debugger
| 819 |
206 | | - |
207 | bool requiresUnwind() override { | - |
208 | returnexecuted 893 times by 6 tests: return true; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qv4debugger
true;executed 893 times by 6 tests: return true; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
- tst_qv4debugger
| 893 |
209 | } | - |
210 | | - |
211 | | - |
212 | }; | - |
213 | | - |
214 | struct ControlFlowBlock : public ControlFlowUnwind | - |
215 | { | - |
216 | ControlFlowBlock(Codegen *cg, AST::Node *ast) | - |
217 | : ControlFlowUnwind(cg, Block) | - |
218 | { | - |
219 | block = cg->enterBlock(ast); | - |
220 | block->emitBlockHeader(cg); | - |
221 | | - |
222 | if (block->requiresExecutionContextTRUE | evaluated 825 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qv4debugger
| FALSE | evaluated 1666518 times by 75 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
|
) { | 825-1666518 |
223 | setupUnwindHandler(); | - |
224 | generator()->setUnwindHandler(&unwindLabel); | - |
225 | }executed 825 times by 3 tests: end of block Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qv4debugger
| 825 |
226 | }executed 1664723 times by 76 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 1664723 |
227 | | - |
228 | virtual ~ControlFlowBlock() { | - |
229 | | - |
230 | if (block->requiresExecutionContextTRUE | evaluated 826 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qv4debugger
| FALSE | evaluated 1666009 times by 75 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
|
) { | 826-1666009 |
231 | unwindLabel.link(); | - |
232 | generator()->setUnwindHandler(parentUnwindHandler()); | - |
233 | }executed 826 times by 3 tests: end of block Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qv4debugger
| 826 |
234 | | - |
235 | block->emitBlockFooter(cg); | - |
236 | | - |
237 | if (block->requiresExecutionContextTRUE | evaluated 825 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qv4debugger
| FALSE | evaluated 1670661 times by 75 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
|
) | 825-1670661 |
238 | emitUnwindHandler();executed 825 times by 3 tests: emitUnwindHandler(); Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qv4debugger
| 825 |
239 | cg->leaveBlock(); | - |
240 | }executed 1669689 times by 76 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_flickableinterop
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlapplicationengine
- tst_qqmlbinding
- tst_qqmlcomponent
- tst_qqmlconnections
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlenginedebugservice
- tst_qqmlexpression
- tst_qqmlincubator
- tst_qqmlinfo
- tst_qqmlinstantiator
- tst_qqmlitemmodels
- tst_qqmllistmodel
- tst_qqmllistmodelworkerscript
- tst_qqmllistreference
- tst_qqmllocale
- tst_qqmlmoduleplugin
- ...
| 1669689 |
241 | | - |
242 | virtual bool requiresUnwind() override { | - |
243 | returnexecuted 450006 times by 27 tests: return block->requiresExecutionContext; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
block->requiresExecutionContext;executed 450006 times by 27 tests: return block->requiresExecutionContext; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlcomponent
- tst_qqmlconsole
- tst_qqmlcontext
- tst_qqmlecmascript
- tst_qqmlexpression
- tst_qqmllistmodel
- tst_qqmllocale
- tst_qqmlnotifier
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlvaluetypeproviders
- tst_qqmlvaluetypes
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquicklayouts
- tst_qquicklistview
- tst_qquickpositioners
- tst_qquickvisualdatamodel
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- ...
| 450006 |
244 | } | - |
245 | | - |
246 | Context *block; | - |
247 | }; | - |
248 | | - |
249 | struct ControlFlowCatch : public ControlFlowUnwind | - |
250 | { | - |
251 | AST::Catch *catchExpression; | - |
252 | bool insideCatch = false; | - |
253 | BytecodeGenerator::ExceptionHandler exceptionLabel; | - |
254 | bool oldLookupByName; | - |
255 | | - |
256 | ControlFlowCatch(Codegen *cg, AST::Catch *catchExpression) | - |
257 | : ControlFlowUnwind(cg, Catch), catchExpression(catchExpression), | - |
258 | exceptionLabel(generator()->newExceptionHandler()) | - |
259 | { | - |
260 | generator()->setUnwindHandler(&exceptionLabel); | - |
261 | }executed 113791 times by 21 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 113791 |
262 | | - |
263 | virtual bool requiresUnwind() override { | - |
264 | returnexecuted 194657 times by 21 tests: return true; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
true;executed 194657 times by 21 tests: return true; Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 194657 |
265 | } | - |
266 | | - |
267 | BytecodeGenerator::ExceptionHandler *unwindHandler() override { | - |
268 | returnexecuted 315 times by 5 tests: return insideCatch ? &unwindLabel : &exceptionLabel; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qv4debugger
insideCatch ? &unwindLabel : &exceptionLabel;executed 315 times by 5 tests: return insideCatch ? &unwindLabel : &exceptionLabel; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qqmlecmascript
- tst_qv4debugger
| 315 |
269 | } | - |
270 | | - |
271 | ~ControlFlowCatch() { | - |
272 | | - |
273 | insideCatch = true; | - |
274 | setupUnwindHandler(); | - |
275 | | - |
276 | Codegen::RegisterScope scope(cg); | - |
277 | | - |
278 | | - |
279 | exceptionLabel.link(); | - |
280 | BytecodeGenerator::Jump noException = generator()->jumpNoException(); | - |
281 | | - |
282 | Context *block = cg->enterBlock(catchExpression); | - |
283 | | - |
284 | block->emitBlockHeader(cg); | - |
285 | | - |
286 | generator()->setUnwindHandler(&unwindLabel); | - |
287 | | - |
288 | if (catchExpression->patternElement->bindingIdentifier.isEmpty()TRUE | evaluated 334 times by 1 test | FALSE | evaluated 113694 times by 21 testsEvaluated by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
|
) | 334-113694 |
289 | | - |
290 | cg->initializeAndDestructureBindingElement(catchExpression->patternElement, Reference::fromName(cg, ([]() noexcept -> QString { enum { Size = sizeof(u"" "@caught")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "@caught" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); returnexecuted 334 times by 1 test: return qstring_literal_temp; qstring_literal_temp;executed 334 times by 1 test: return qstring_literal_temp; }())));executed 334 times by 1 test: cg->initializeAndDestructureBindingElement(catchExpression->patternElement, Reference::fromName(cg, ([]() noexcept -> QString { enum { Size = sizeof(u"" "@caught")/2 - 1 }; static const QStaticStringData<Size> qstring_literal = { { { { -1 } }, Size, 0, 0, sizeof(QStringData) }, u"" "@caught" }; QStringDataPtr holder = { qstring_literal.data_ptr() }; const QString qstring_literal_temp(holder); return qstring_literal_temp; }()))); | 334 |
291 | | - |
292 | cg->statementList(catchExpression->statement->statements); | - |
293 | | - |
294 | | - |
295 | unwindLabel.link(); | - |
296 | block->emitBlockFooter(cg); | - |
297 | | - |
298 | cg->leaveBlock(); | - |
299 | | - |
300 | noException.link(); | - |
301 | generator()->setUnwindHandler(parentUnwindHandler()); | - |
302 | | - |
303 | emitUnwindHandler(); | - |
304 | insideCatch = false; | - |
305 | }executed 113700 times by 21 tests: end of block Executed by:- tst_ecmascripttests
- tst_examples
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qmlcachegen
- tst_qqmlconsole
- tst_qqmlecmascript
- tst_qqmllistmodelworkerscript
- tst_qqmlpropertymap
- tst_qqmlqt
- tst_qqmlsqldatabase
- tst_qqmlxmlhttprequest
- tst_qquickanimationcontroller
- tst_qquickitem2
- tst_qquicklayouts
- tst_qquickworkerscript
- tst_qtqmlmodules
- tst_quicktestmainwithsetup
- tst_qv4debugger
- tst_testfiltering
| 113700 |
306 | }; | - |
307 | | - |
308 | struct ControlFlowFinally : public ControlFlowUnwind | - |
309 | { | - |
310 | AST::Finally *finally; | - |
311 | bool insideFinally = false; | - |
312 | | - |
313 | ControlFlowFinally(Codegen *cg, AST::Finally *finally) | - |
314 | : ControlFlowUnwind(cg, Finally), finally(finally) | - |
315 | { | - |
316 | ((finally != nullptr) ? static_cast<void>(0) : qt_assert("finally != nullptr", __FILE__, 372)); | - |
317 | setupUnwindHandler(); | - |
318 | generator()->setUnwindHandler(&unwindLabel); | - |
319 | }executed 825 times by 5 tests: end of block Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
| 825 |
320 | | - |
321 | virtual bool requiresUnwind() override { | - |
322 | returnexecuted 1350 times by 5 tests: return !insideFinally; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
!insideFinally;executed 1350 times by 5 tests: return !insideFinally; Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
| 1350 |
323 | } | - |
324 | | - |
325 | BytecodeGenerator::ExceptionHandler *unwindHandler() override { | - |
326 | returnexecuted 513 times by 5 tests: return insideFinally ? parentUnwindHandler() : ControlFlowUnwind::unwindHandler(); Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
insideFinally ? parentUnwindHandler() : ControlFlowUnwind::unwindHandler();executed 513 times by 5 tests: return insideFinally ? parentUnwindHandler() : ControlFlowUnwind::unwindHandler(); Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
| 513 |
327 | } | - |
328 | | - |
329 | ~ControlFlowFinally() { | - |
330 | | - |
331 | unwindLabel.link(); | - |
332 | | - |
333 | Codegen::RegisterScope scope(cg); | - |
334 | | - |
335 | insideFinally = true; | - |
336 | int returnValueTemp = -1; | - |
337 | if (cg->requiresReturnValueTRUE | evaluated 134 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_qjsengine
- tst_qqmlecmascript
| FALSE | evaluated 692 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsvalue
|
) { | 134-692 |
338 | returnValueTemp = generator()->newRegister(); | - |
339 | Instruction::MoveReg move; | - |
340 | move.srcReg = cg->_returnAddress; | - |
341 | move.destReg = returnValueTemp; | - |
342 | generator()->addInstruction(move); | - |
343 | }executed 134 times by 3 tests: end of block Executed by:- tst_ecmascripttests
- tst_qjsengine
- tst_qqmlecmascript
| 134 |
344 | int exceptionTemp = generator()->newRegister(); | - |
345 | Instruction::GetException instr; | - |
346 | generator()->addInstruction(instr); | - |
347 | Reference::fromStackSlot(cg, exceptionTemp).storeConsumeAccumulator(); | - |
348 | | - |
349 | generator()->setUnwindHandler(parentUnwindHandler()); | - |
350 | cg->statement(finally->statement); | - |
351 | insideFinally = false; | - |
352 | | - |
353 | if (cg->requiresReturnValueTRUE | evaluated 134 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_qjsengine
- tst_qqmlecmascript
| FALSE | evaluated 692 times by 3 testsEvaluated by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsvalue
|
) { | 134-692 |
354 | Instruction::MoveReg move; | - |
355 | move.srcReg = returnValueTemp; | - |
356 | move.destReg = cg->_returnAddress; | - |
357 | generator()->addInstruction(move); | - |
358 | }executed 134 times by 3 tests: end of block Executed by:- tst_ecmascripttests
- tst_qjsengine
- tst_qqmlecmascript
| 134 |
359 | Reference::fromStackSlot(cg, exceptionTemp).loadInAccumulator(); | - |
360 | Instruction::SetException setException; | - |
361 | generator()->addInstruction(setException); | - |
362 | | - |
363 | emitUnwindHandler(); | - |
364 | }executed 826 times by 5 tests: end of block Executed by:- tst_ecmascripttests
- tst_parserstress
- tst_qjsengine
- tst_qjsvalue
- tst_qqmlecmascript
| 826 |
365 | }; | - |
366 | | - |
367 | } } | - |
368 | | - |
369 | | - |
| | |