V4 JIT: do not generate inline fall-back code for strings types.
authorErik Verbruggen <erik.verbruggen@me.com>
Fri, 4 Oct 2013 11:47:12 +0000 (13:47 +0200)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Thu, 10 Oct 2013 07:54:18 +0000 (09:54 +0200)
Change-Id: I30ac6fcbc7d03f412ff03e87f2ecf61fd2617108
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
src/qml/compiler/qv4isel_masm.cpp

index 98558bf..859f6b9 100644 (file)
@@ -1372,7 +1372,9 @@ void InstructionSelection::binop(V4IR::AluOp oper, V4IR::Expr *leftSource, V4IR:
             return;
     }
 
-    Assembler::Jump done = genInlineBinop(oper, leftSource, rightSource, target);
+    Assembler::Jump done;
+    if (leftSource->type != V4IR::StringType && rightSource->type != V4IR::StringType)
+        done = genInlineBinop(oper, leftSource, rightSource, target);
 
     const Assembler::BinaryOperationInfo& info = Assembler::binaryOperation(oper);
     if (info.fallbackImplementation) {