V4 IR: do type inference/propagation before optimization.
authorErik Verbruggen <erik.verbruggen@me.com>
Fri, 27 Sep 2013 16:44:09 +0000 (18:44 +0200)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Mon, 30 Sep 2013 13:05:01 +0000 (15:05 +0200)
commit2b6dfcf23b8e9d672dff0a083ed4e7adc28115eb
tree340a4df1e473cfe20158ea0cd0b77911c1f86946
parent7c3f891c454971ed0150e66c2261e6e5c36664a3
V4 IR: do type inference/propagation before optimization.

This gives slightly better results for inplace increment/decrement,
where the operand has to be converted to a number. When that operand is
known to be a number, this conversion can be removed. By doing the
optimizations after typing, these conversions will not only turn into
assignments, but they will be propagated through the IR. That saves
a copy/move, which, in turn, will lighten the work for the register
allocator and the instruction selection.

Change-Id: If76575a71fbcb2d810b94060e61b4364bdaaa065
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
src/qml/compiler/qv4ssa.cpp