diff options
author | Jan Arve Saether <jan-arve.saether@qt.io> | 2017-06-26 18:38:27 +0200 |
---|---|---|
committer | Jan Arve Saether <jan-arve.saether@qt.io> | 2017-07-11 16:44:33 +0200 |
commit | b6e6e737f1a4a7e48989a6a036e25c238304802f (patch) | |
tree | 8d4b5940b92ad1fc94e46c1742acd9355e19e1d4 /src/qml/compiler/qv4ssa.cpp | |
parent | d5b3f5da9cfa90fc43f29f3bdeec01884a47d6ca (diff) | |
parent | 4beee1a6dcc1be57aa6fb2a175dadc6ff298545d (diff) |
Merge remote-tracking branch 'origin/dev' into wip/pointerhandler
Conflicts:
examples/quick/shared/LauncherList.qml
src/quick/items/qquickevents.cpp
src/quick/items/qquickevents_p_p.h
src/quick/items/qquickwindow.cpp
tests/auto/quick/touchmouse/tst_touchmouse.cpp
Change-Id: Id692d291455093fc72db61f1b854f3fc9190267b
Diffstat (limited to 'src/qml/compiler/qv4ssa.cpp')
-rw-r--r-- | src/qml/compiler/qv4ssa.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/qml/compiler/qv4ssa.cpp b/src/qml/compiler/qv4ssa.cpp index 731c6ad38f..8cf5fac760 100644 --- a/src/qml/compiler/qv4ssa.cpp +++ b/src/qml/compiler/qv4ssa.cpp @@ -2770,7 +2770,7 @@ public: } else if (Const *c = (*conversion.expr)->asConst()) { convertConst(c, conversion.targetType); } else if (ArgLocal *al = (*conversion.expr)->asArgLocal()) { - Temp *target = bb->TEMP(bb->newTemp()); + Temp *target = bb->TEMP(bb->newTemp(BasicBlock::NewTempForOptimizer)); target->type = conversion.targetType; Expr *convert = bb->CONVERT(al, conversion.targetType); Move *convCall = f->NewStmt<Move>(); @@ -2791,7 +2791,7 @@ public: *conversion.expr = source; } else if (Temp *t = (*conversion.expr)->asTemp()) { - Temp *target = bb->TEMP(bb->newTemp()); + Temp *target = bb->TEMP(bb->newTemp(BasicBlock::NewTempForOptimizer)); target->type = conversion.targetType; Expr *convert = bb->CONVERT(t, conversion.targetType); Move *convCall = f->NewStmt<Move>(); @@ -2820,7 +2820,7 @@ public: // to: // double{%3} = double{-double{%1}}; // int32{%2} = int32{convert(double{%3})}; - Temp *tmp = bb->TEMP(bb->newTemp()); + Temp *tmp = bb->TEMP(bb->newTemp(BasicBlock::NewTempForOptimizer)); tmp->type = u->type; Move *extraMove = f->NewStmt<Move>(); worklist.registerNewStatement(extraMove); @@ -5417,7 +5417,11 @@ void Optimizer::run(QQmlEnginePrivate *qmlEngine, bool doTypeInference, bool pee showMeTheCode(function, "After loop detection"); // cfg2dot(function, loopDetection.allLoops()); - if (peelLoops) { + // ### disable loop peeling for now. It doesn't give any measurable performance + // improvements at this time, but significantly increases the size of the + // JIT generated code + Q_UNUSED(peelLoops); + if (0 && peelLoops) { QVector<LoopDetection::LoopInfo *> innerLoops = loopDetection.innermostLoops(); LoopPeeling(df).run(innerLoops); |