[Development] QML engine changes

Simon Hausmann simon.hausmann at digia.com
Mon Jun 24 11:50:40 CEST 2013


On Monday 24. June 2013 10.50.54 Björn Breitmeyer wrote:
> Hi,
> 
> Does that include to get rid of v8 as an JS engine option for QML2?

Yes, that's exactly the proposed change.

> I have not tested it yet, but it would be interesting to know if the new
> engine also uses just in time compilation, as we had quite some work done
> to get v8 running on WinCE due to wrong ARM abis for Windows CE among other
> things.

Yes it does just-in-time compilation and will require most probably some 
changes to work under Windows CE. (but it should be less than the changes 
require for V8, if my memory of the v8 changes serves me right)


Simon

> Am Montag, 24. Juni 2013, 10:26:33 schrieb Simon Hausmann:
> > Hi,
> > 
> > As you may have heard (or read), Lars, Erik and I have been working on
> > some
> > bigger changes for qtdeclarative for a while. In a nutshell we've replaced
> > the V8 JavaScript engine with a new engine that we wrote (based on work by
> > Roberto and Aaron). We've progressed rather well and in our wip/v4 branch
> > in qtdeclarative we're now passing all auto tests (as well as the
> > ECMAScript 262 test suite). So that's why we'd like to propose merging
> > this
> > work into qtdeclarative mainline (dev branch), in the coming days/week(s)
> > -
> > in time for Qt 5.2 though.
> > 
> > We think that this work brings in many advantages, among others much
> > improved maintenance (we know how this thing works, which isn't something
> > we can confidently say about V8 as much as we'd like to), a unified code
> > path in QML [1], much less code overall  and great opportunities for
> > optimizations (way beyond what's possible with V8's API layer - you'd be
> > surprised how often even in today's QML usage the V8 code path is not
> > actually taken because it's slower that the built-in interpreter).
> > 
> > 
> > So this is a heads-up and of course a last call for objections :)
> > 
> > 
> > 
> > Simon
> > 
> > 
> > [1] Did you know what when you read a URL property in QML binding
> > expressions, sometimes it's a string and sometimes it's an opaque variant?
> > That's because the builtin interpreter in qtdeclarative and V8 behave
> > different. We're fixing that :)
> > _______________________________________________
> > Development mailing list
> > Development at qt-project.org
> > http://lists.qt-project.org/mailman/listinfo/development
> 
> Join us in October at Qt Developer Days 2013 - https://devdays.kdab.com



More information about the Development mailing list