aboutsummaryrefslogtreecommitdiffstats
path: root/src/3rdparty
Commit message (Collapse)AuthorAgeFilesLines
...
* iOS: Don't enable PROT_WRITE and PROT_EXEC at the same timeTor Arne Vestbø2013-04-171-2/+15
| | | | | | | | We define ENABLE_ASSEMBLER_WX_EXCLUSIVE, which we use to limit the page flags to either RW or RX. Change-Id: I253648ea98610438a533c7a7ccbf5c27c3b8230a Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Don't use std::vector::shrink_to_fit(), it's C++11, and not enabled on iOSTor Arne Vestbø2013-04-171-1/+1
| | | | | Change-Id: I547df5bcf09837ebac9d64d66a4171ed87627b1a Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Fix build on iOSTor Arne Vestbø2013-04-172-1/+6
| | | | | | | | | | | | Add missing include for sys_cache_control, and make sure we don't define PLATFORM(IOS) or PLATFORM(IOS_SIMULATOR), since we're PLATFORM(QT). Intentionally squashed both changes for easier rebasing against upstream. Change-Id: I2e010aec76d1f1863d177af8a70091cc88bbc999 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Speed up regular expression matchingSimon Hausmann2013-04-165-13/+94
| | | | | | | | Use the Yarr JIT back-end if possible. Speeds up the RegExp v8 benchmark by a factor of 3. Change-Id: I7c6c8086d1d07dcd13400e3cc8bbae408ea67198 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix compilation with built-in v4vm JS engineSimon Hausmann2013-04-151-1/+1
| | | | | Change-Id: Ieda9267e296acf6392a5461f4cfb9233a7a409a0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix build of the rest of v4vm against WTF/JSC updateSimon Hausmann2013-04-122-1/+14
| | | | | | | | | * Add missing functions to our WTF stubs * Some of the math functions wrapped with MathExtras.h are back in the std:: namespace they belong to Change-Id: I9da43e8344ab8c95edc8db19f44ccdbd91b4ac70 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Apply modifications on top of WTF/JSCSimon Hausmann2013-04-124-16/+9
| | | | | | | | | * Extend FunctionPtr by another overloaded constructor that allows passing 6 arguments * Work around STL <> WTF incompatibilities with iterators * Remove unused printInternal functions that rely on CString/WTFString Change-Id: Ie0cc503288871cb594716e47e03dd509b1b5ac85 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* WTF/JSC update to r148273Simon Hausmann2013-04-1245-711/+2304
| | | | | | | | | | | | | This brings in various bug fixes in the ARM and MIPS assemblers as well as a Yarr crash fix and performance fix. This change doesn't compile as-is, but the next change will apply the modifications necessary to compile. That'll make future updates easier as it allows for cherry-picking because the modifications are usually always the same. Change-Id: Iac32f62c71e8ff908deb41f28f12fbc98c0823e1 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix memory allocation of executable codeSimon Hausmann2013-04-012-20/+26
| | | | | | | | | | | | | | Previously we allocated at least one page for each compiled function, even if it required less bytes (common). That causes excessive memory usages for large scripts or long running scripts with frequent eval usage. This patch introduces a simple allocator that allocates also on page granularity from the system but allocates the remaining space in the pages in sub-sequent calls. It is optimized to scale with the number of requests and also return pages to the system as soon as possible. Change-Id: I0751a8094afe97e94b5f44c6a691a679ecdb1df0 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Do not generate udis86 files when udis86 is disabled.Erik Verbruggen2013-02-271-11/+11
| | | | | Change-Id: Iaed45c949d29ac81a60adec3437f2790d23a58d5 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Converted calling runtime functions to new calling conventionSimon Hausmann2013-02-141-0/+7
| | | | | Change-Id: I03837e9b392957bd64a6710c1b85b4429556ba06 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Fix cmath function usageSimon Hausmann2013-02-091-0/+449
| | | | | | | | | | | Some of the cmath functions in std don't work reliably on all platforms and on top of that with Visual Studio they are not in the std namespace at all (but for example prefixed as _isnan). Import MathExtras.h from WTF that includes all the necessary workarounds, including things like making pow() with MinGW compliant with what JavaScript needs. Change-Id: I3d8190ce33919db69b2889b439731a9cf5b2a46e Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Simplify UChar stub hackSimon Hausmann2013-02-091-1/+1
| | | | | | | | | Don't use uint16_t, because it's not available with all MSVC versions. Since this is just a stub it's okay to simply write out the type. Change-Id: I9220c9476a7263377b723e46e4f49892908bd53c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Make ExecutableAllocator compile on WindowsSimon Hausmann2013-02-091-0/+17
| | | | | | | Use VirtualAlloc and friends instead of mmap. Change-Id: I52a90cebb111cf923d86ce6a821717dc7e02ad85 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Centralize code to determine system page sizeSimon Hausmann2013-02-091-2/+3
| | | | | | | | Use the existing WTF::pageSize() instead of calling sysconf ourselves. Change-Id: If68c793898253a239e13070e3454653474f61790 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Make it possible to omit the udis86 assembler from compilationSimon Hausmann2013-02-092-8/+12
| | | | | | | | Disable it on Windows and enable it generally only on x86 and amd64 architectures. Change-Id: If8f366a3095608b9afcd30dee6dc636d442d4107 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Work around broken min/max macro definitions on WindowsSimon Hausmann2013-02-091-0/+2
| | | | | | | | | Windows defines min and max to macros, which breaks code that for example uses std::max. Defining NOMINMAX globally prevents WinDefs.h from defining those macros. Change-Id: Ib79a48f9139febd1429a11753ffef4430953a3b4 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Include stdlib for arc4random().Erik Verbruggen2013-02-061-0/+4
| | | | | Change-Id: Icf7f09d2007941cd1005e28eaf189d1265c71900 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Avoid duplicated feature defines between tools/v4/v4.pro and src/v4/v4.proSimon Hausmann2013-02-013-25/+25
| | | | | | | Centralize the macros in v4.pri that's included by both. Change-Id: I1ae2ed3b7b97a4e905d2e4ae563c99c964253bb1 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Say hello to QtV4 module.Jędrzej Nowacki2013-01-30136-0/+59246
Change-Id: I507cd5707b7d7223a0d901cf939896fb2649b684 Reviewed-by: Lars Knoll <lars.knoll@digia.com>