Commit Graph

7 Commits

Author SHA1 Message Date
Lars Knoll f6d5079a44 Move functionality from PropertyDescriptor to Property
Change-Id: I37177b5287ec323f54826cce1cb307ee7f678930
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-04-12 14:32:13 +02:00
Lars Knoll 380a486ae7 Use PropertyAttributes in PropertyDescriptor
This further encapsulates the property attribute handling,
and will allow to separate the attributes from the
proprety data.

Change-Id: I140a6c9349cd1e871cd9fdcef51abac7ae78e517
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-04-12 14:30:58 +02:00
Lars Knoll 1e87e39a19 Change internal class when attributes of properties change
This should allow us to share property attributes for different
class instances saving quite some memory. In addition, it
can be used to speed up property access (as we then know in the
lookup whether it's a data or accessor property).

Change-Id: Ide9c6168a07b5c83a1e73d075d8fc4f6594e08fd
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-04-12 14:25:21 +02:00
Lars Knoll 11a1f28e3c Change the Context stack back to a singly linked list
The other implementation was too complicated, and only solved
one special case (indirect eval calls), but that one can be
solved by simply creating a GlobalContext when needed.

In addition it'll make it simpler to implement context
optimisations for simple methods in the future.

Speeds up the V8 benchmark by 3%

Change-Id: I61ac7753821e0174476094f51a9a4e934563f8e0
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-04-07 21:24:35 +02:00
Lars Knoll fa0344bfe6 Clean up the property lookup code
Also look a bit deeper into the proto chain. This speeds up
the deltablue benchmark by 10%

Change-Id: Id3f5de58f336d7ca74c7c32e6c30564410baf1e4
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-04-05 11:04:21 +02:00
Lars Knoll 8175a76069 Some further fixes to the v8 API
Better implementation of user comparisons, and fix a bug in
GetPropertyNames.

Change-Id: I2afa87239e4e269707d1809712b0beefed162d0e
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-04-02 17:42:04 +02:00
Lars Knoll 2ec09791eb Rename qmljs_runtime to qv4runtime
Change-Id: I46ba9b2621be72116d94bee249ad5b798e951c88
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
2013-03-14 22:15:02 +01:00