<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qt/qtdeclarative.git/src/qml/jit/qv4regalloc.cpp, branch wip/nacl</title>
<subtitle>Qt Declarative (Quick 2)
</subtitle>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/'/>
<entry>
<title>Fix a couple of container detachments</title>
<updated>2016-01-05T16:36:02+00:00</updated>
<author>
<name>Sérgio Martins</name>
<email>sergio.martins@kdab.com</email>
</author>
<published>2016-01-05T15:30:34+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=49f9797d2a2aab245a9866bc4563812a6e8c02e1'/>
<id>49f9797d2a2aab245a9866bc4563812a6e8c02e1</id>
<content type='text'>
Change-Id: I0def20d858de7721771702907b7a431b5fb90a1f
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I0def20d858de7721771702907b7a431b5fb90a1f
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>QML: Fix typeof context property.</title>
<updated>2015-10-27T13:17:33+00:00</updated>
<author>
<name>Erik Verbruggen</name>
<email>erik.verbruggen@digia.com</email>
</author>
<published>2015-10-27T11:21:00+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=9730574818c80b956946dc26458c839915855196'/>
<id>9730574818c80b956946dc26458c839915855196</id>
<content type='text'>
This was missing from f21e8c641af6b2d10f0d7e7e0fc6a755dab3673c.

Task-number: QTBUG-48524
Change-Id: I5cc6a979d965a1ef6b7fbc916a7ca9df868b459a
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This was missing from f21e8c641af6b2d10f0d7e7e0fc6a755dab3673c.

Task-number: QTBUG-48524
Change-Id: I5cc6a979d965a1ef6b7fbc916a7ca9df868b459a
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>QML: Sanitize reading environment variables.</title>
<updated>2015-10-22T12:40:18+00:00</updated>
<author>
<name>Friedemann Kleint</name>
<email>Friedemann.Kleint@theqtcompany.com</email>
</author>
<published>2015-10-22T10:35:08+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=8848abe69fa957d5406659229cecdada83da8421'/>
<id>8848abe69fa957d5406659229cecdada83da8421</id>
<content type='text'>
Where possible, use qEnvironmentVariableIsSet()/
qEnvironmentVariableIsEmpty() instead of checking on the
return value of qgetenv().
Where the value is required, add a check using one of
qEnvironmentVariableIsSet()/Empty().

Change-Id: Ia8b7534e6f5165bd8a6b4e63ccc139c42dd03056
Reviewed-by: Lars Knoll &lt;lars.knoll@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Where possible, use qEnvironmentVariableIsSet()/
qEnvironmentVariableIsEmpty() instead of checking on the
return value of qgetenv().
Where the value is required, add a check using one of
qEnvironmentVariableIsSet()/Empty().

Change-Id: Ia8b7534e6f5165bd8a6b4e63ccc139c42dd03056
Reviewed-by: Lars Knoll &lt;lars.knoll@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Access the id objects through a specialized runtime method</title>
<updated>2015-08-12T07:29:44+00:00</updated>
<author>
<name>Lars Knoll</name>
<email>lars.knoll@theqtcompany.com</email>
</author>
<published>2015-06-22T14:33:40+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=1a1f10806c901bc10483370a932d41af0c9629cd'/>
<id>1a1f10806c901bc10483370a932d41af0c9629cd</id>
<content type='text'>
This brings us one step closer to getting rid of the
QQmlContextWrapper.

Change-Id: Ied57f4c174c2ebd95096310a4ad4c0c28787e7a4
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This brings us one step closer to getting rid of the
QQmlContextWrapper.

Change-Id: Ied57f4c174c2ebd95096310a4ad4c0c28787e7a4
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Access context properties through the qml context</title>
<updated>2015-08-10T01:22:05+00:00</updated>
<author>
<name>Lars Knoll</name>
<email>lars.knoll@theqtcompany.com</email>
</author>
<published>2015-06-22T05:46:32+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=f21e8c641af6b2d10f0d7e7e0fc6a755dab3673c'/>
<id>f21e8c641af6b2d10f0d7e7e0fc6a755dab3673c</id>
<content type='text'>
And get rid of another temp in the IR.

Change-Id: I039393e020e5141f1986aee276246c30fd8057f3
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
And get rid of another temp in the IR.

Change-Id: I039393e020e5141f1986aee276246c30fd8057f3
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Use the QmlContext to access properties of the scope object</title>
<updated>2015-08-10T01:21:57+00:00</updated>
<author>
<name>Lars Knoll</name>
<email>lars.knoll@theqtcompany.com</email>
</author>
<published>2015-06-19T12:18:13+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=b2889568170b20ca8f870a7f4a1a1c3ac9f698c5'/>
<id>b2889568170b20ca8f870a7f4a1a1c3ac9f698c5</id>
<content type='text'>
Add some runtime methods to access properties of the scope
object directly (using the QmlContext), and generate proper
code to call those.

Change-Id: I0b29357c9a3b9ad53ba568ec6cb763e8ecb10f21
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add some runtime methods to access properties of the scope
object directly (using the QmlContext), and generate proper
code to call those.

Change-Id: I0b29357c9a3b9ad53ba568ec6cb763e8ecb10f21
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add ability to retrieve and use the QmlContext from our generated code</title>
<updated>2015-08-10T01:21:48+00:00</updated>
<author>
<name>Lars Knoll</name>
<email>lars.knoll@theqtcompany.com</email>
</author>
<published>2015-06-18T11:12:31+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=416c0f32632ef1393350e45a29311d7881828993'/>
<id>416c0f32632ef1393350e45a29311d7881828993</id>
<content type='text'>
Our generated code (JIT and interpreter) should operate on the
QML context to retrieve QML related things. That's better than
operating on 4 different temps.

So this commit introduces the QML context as a temp in the
code we generate for QML. The next commits will move things over
to use that context with specialized runtime methods instead of
using generic subscript/get calls on the different subobjects.

Change-Id: Ia05cf339de9cdd23003f35cf78ede17d2590f8de
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Our generated code (JIT and interpreter) should operate on the
QML context to retrieve QML related things. That's better than
operating on 4 different temps.

So this commit introduces the QML context as a temp in the
code we generate for QML. The next commits will move things over
to use that context with specialized runtime methods instead of
using generic subscript/get calls on the different subobjects.

Change-Id: Ia05cf339de9cdd23003f35cf78ede17d2590f8de
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Get rid of qv4value_inl_p.h and replace it by qv4typedvalue_p.h</title>
<updated>2015-04-24T15:20:43+00:00</updated>
<author>
<name>Lars Knoll</name>
<email>lars.knoll@theqtcompany.com</email>
</author>
<published>2015-02-14T21:46:41+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=0a499043fbaccc0a83ba59f81f64993552d7b13b'/>
<id>0a499043fbaccc0a83ba59f81f64993552d7b13b</id>
<content type='text'>
This is a cleaner separation and further reduces include dependencies
in the definitions of our basic data structured.

Change-Id: I18aa86cdea0c0dfbc16075d4d617af97e638811e
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a cleaner separation and further reduces include dependencies
in the definitions of our basic data structured.

Change-Id: I18aa86cdea0c0dfbc16075d4d617af97e638811e
Reviewed-by: Simon Hausmann &lt;simon.hausmann@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>V4: fix regalloc for loops with many life&amp;changing vars.</title>
<updated>2015-03-03T10:03:59+00:00</updated>
<author>
<name>Erik Verbruggen</name>
<email>erik.verbruggen@digia.com</email>
</author>
<published>2015-03-02T13:35:28+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=63f7a61cbfc787804b658729ecaf2a8d8da26e70'/>
<id>63f7a61cbfc787804b658729ecaf2a8d8da26e70</id>
<content type='text'>
When all registers are in use, and one needs to be spilled, the register
whose use is the furthest in the future will be chosen. What needs to be
taken into account is that any use that can also work from the stack can
be skipped, because it does not require the value to be in a register.

Task-number: QTBUG-44687
Change-Id: Ide624b190603d9a22f992d4ae5daa3ce8d94472c
Reviewed-by: Fawzi Mohamed &lt;fawzi.mohamed@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When all registers are in use, and one needs to be spilled, the register
whose use is the furthest in the future will be chosen. What needs to be
taken into account is that any use that can also work from the stack can
be skipped, because it does not require the value to be in a register.

Task-number: QTBUG-44687
Change-Id: Ide624b190603d9a22f992d4ae5daa3ce8d94472c
Reviewed-by: Fawzi Mohamed &lt;fawzi.mohamed@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>V4: fix phi node use position calculation.</title>
<updated>2015-03-03T10:03:56+00:00</updated>
<author>
<name>Erik Verbruggen</name>
<email>erik.verbruggen@digia.com</email>
</author>
<published>2015-03-02T13:22:24+00:00</published>
<link rel='alternate' type='text/html' href='https://code.qt.io/cgit/qt/qtdeclarative.git/commit/?id=b368fe0167666cc7ce264705653107ffc21ac8cc'/>
<id>b368fe0167666cc7ce264705653107ffc21ac8cc</id>
<content type='text'>
As phi-nodes get transformed into moves, and the moves end up right
before the terminator of the basic block of the incoming edge, the
use by that phi-node is the position of that terminator minus one.

However, when checking if uses need a register, this was not taken into
account, resulting in an invalid life-time interval split position
calculation.

Task-number: QTBUG-44687
Change-Id: I0edd416f7ee5c8ea16bf7133870be45d0e6efea9
Reviewed-by: Fawzi Mohamed &lt;fawzi.mohamed@theqtcompany.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As phi-nodes get transformed into moves, and the moves end up right
before the terminator of the basic block of the incoming edge, the
use by that phi-node is the position of that terminator minus one.

However, when checking if uses need a register, this was not taken into
account, resulting in an invalid life-time interval split position
calculation.

Task-number: QTBUG-44687
Change-Id: I0edd416f7ee5c8ea16bf7133870be45d0e6efea9
Reviewed-by: Fawzi Mohamed &lt;fawzi.mohamed@theqtcompany.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
