summaryrefslogtreecommitdiffstats
path: root/JavaScriptCore/runtime/MarkStack.h
diff options
context:
space:
mode:
Diffstat (limited to 'JavaScriptCore/runtime/MarkStack.h')
-rw-r--r--JavaScriptCore/runtime/MarkStack.h21
1 files changed, 3 insertions, 18 deletions
diff --git a/JavaScriptCore/runtime/MarkStack.h b/JavaScriptCore/runtime/MarkStack.h
index a97aa7e..7a7b3af 100644
--- a/JavaScriptCore/runtime/MarkStack.h
+++ b/JavaScriptCore/runtime/MarkStack.h
@@ -31,15 +31,15 @@
#include <wtf/Noncopyable.h>
namespace JSC {
- class JSGlobalData;
class Register;
enum MarkSetProperties { MayContainNullValues, NoNullValues };
class MarkStack : Noncopyable {
public:
- MarkStack(void* jsArrayVPtr)
- : m_jsArrayVPtr(jsArrayVPtr)
+ MarkStack()
+ : m_markSets()
+ , m_values()
{
}
@@ -82,7 +82,6 @@ namespace JSC {
, m_end(end)
, m_properties(properties)
{
- ASSERT(values);
}
JSValue* m_values;
JSValue* m_end;
@@ -137,12 +136,6 @@ namespace JSC {
ASSERT(m_top);
return m_data[--m_top];
}
-
- inline T& last()
- {
- ASSERT(m_top);
- return m_data[m_top - 1];
- }
inline bool isEmpty()
{
@@ -157,14 +150,7 @@ namespace JSC {
ASSERT(0 == (size % MarkStack::pageSize()));
if (size == m_allocated)
return;
-#if PLATFORM(WIN)
- // We cannot release a part of a region with VirtualFree. To get around this,
- // we'll release the entire region and reallocate the size that we want.
- releaseStack(m_data, m_allocated);
- m_data = reinterpret_cast<T*>(allocateStack(size));
-#else
releaseStack(reinterpret_cast<char*>(m_data) + size, m_allocated - size);
-#endif
m_allocated = size;
m_capacity = m_allocated / sizeof(T);
}
@@ -176,7 +162,6 @@ namespace JSC {
T* m_data;
};
- void* m_jsArrayVPtr;
MarkStackArray<MarkSet> m_markSets;
MarkStackArray<JSCell*> m_values;
static size_t s_pageSize;