Instead the JS exception value is now part of the C++ Exception object.
This also allows getting rid of some run-time functions.
Change-Id: I43ff773cacd5e925ba96601f3633ccf3b62273be
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
This will allow for re-use from the v8 wrapper API.
Change-Id: I2330432dad43d7fd7af6147e96a0cbbb340cd917
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Store the platform specific unwind info (CIE/FDE on Linux/Mac x86/x86-64) directly
inside the VM::Function and therefore make all the functions of UnwindHelper static.
Also calculate the function size correctly.
Change-Id: If6a6b92a250044c6799218ef3506f34d630674c7
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Cache the InternalClass for ArrayObject and
use it directly in the constructor.
Change-Id: I17346045cd14852c400c7f3886414953e4dff869
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Remove unused code, inline where we only use a method
once.
Change-Id: I1896efc3f4d309082aff2f80f944e19c1ede2f50
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Add an internal class structure to Object that will allow
us to do much more efficient property lookups in the future.
Change-Id: I9ee72f6d73113a489f00ad7a31a20e91fbba18ed
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Which doesn't have nan(const char *tagp). Instead let's just use
std::numeric_limits<double>::quiet_NaN().
Change-Id: I13127a3813fc84e85681883c5a0ec89f7cd69667
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Use Q_INFINITY from qnumeric.h as portable wrapper.
Change-Id: I2dc2ef1c5e31ace89730b010c2a884e5b532b01f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
This allows simplifications of the code moving forward.
Change-Id: If65809fd3646e6dc2da6bc62190d6465b1b1ec12
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
This is very similar to the old string cache with a slight
twist:
Only strings we know will be used as identifiers (property names)
get entered into the cache. These are then also persistent and
won't ever get collected.
Change-Id: Id441694ef9faf30a87433ae22eb833d1db1d84f1
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>