Ignore:
Timestamp:
Dec 7, 2008, 3:55:04 PM (16 years ago)
Author:
[email protected]
Message:

<rdar://problem/6309878> Need more granular control over allocation of executable memory (21783)
<https://bugs.webkit.org/show_bug.cgi?id=21783>

Reviewed by Cameron Zwarich and Sam Weinig

Add a new allocator for use by the JIT that provides executable pages, so
we can get rid of the current hack that makes the entire heap executable.

1-2% progression on SunSpider-v8, 1% on SunSpider. Reduces memory usage as well!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/runtime/RegExp.h

    r38975 r39083  
    2424#include "UString.h"
    2525#include "WREC.h"
     26#include "ExecutableAllocator.h"
    2627#include <wtf/Forward.h>
    2728#include <wtf/RefCounted.h>
     
    3536    class RegExp : public RefCounted<RegExp> {
    3637    public:
    37         static PassRefPtr<RegExp> create(const UString& pattern);
    38         static PassRefPtr<RegExp> create(const UString& pattern, const UString& flags);
     38        static PassRefPtr<RegExp> create(JSGlobalData* globalData, const UString& pattern);
     39        static PassRefPtr<RegExp> create(JSGlobalData* globalData, const UString& pattern, const UString& flags);
    3940        ~RegExp();
    4041
     
    5354
    5455    private:
    55         RegExp(const UString& pattern);
    56         RegExp(const UString& pattern, const UString& flags);
     56        RegExp(JSGlobalData* globalData, const UString& pattern);
     57        RegExp(JSGlobalData* globalData, const UString& pattern, const UString& flags);
    5758
    5859        void compile();
     
    6970#if ENABLE(WREC)
    7071        WREC::CompiledRegExp m_wrecFunction;
     72        RefPtr<ExecutablePool> m_executablePool;
    7173#endif
    7274    };
Note: See TracChangeset for help on using the changeset viewer.