Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (163555 => 163556)
--- trunk/Source/_javascript_Core/ChangeLog 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/ChangeLog 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1,3 +1,40 @@
+2014-02-06 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r163542.
+ http://trac.webkit.org/changeset/163542
+ https://bugs.webkit.org/show_bug.cgi?id=128324
+
+ Caused many assertion failures (Requested by ap on #webkit).
+
+ * GNUmakefile.list.am:
+ * _javascript_Core.vcxproj/_javascript_Core.vcxproj:
+ * _javascript_Core.vcxproj/_javascript_Core.vcxproj.filters:
+ * _javascript_Core.xcodeproj/project.pbxproj:
+ * heap/CopyWriteBarrier.h:
+ (JSC::CopyWriteBarrier::set):
+ * heap/Heap.cpp:
+ (JSC::Heap::writeBarrier):
+ * heap/Heap.h:
+ (JSC::Heap::writeBarrier):
+ * jit/JITOperations.cpp:
+ * jit/JITWriteBarrier.h:
+ (JSC::JITWriteBarrierBase::set):
+ * llint/LLIntSlowPaths.cpp:
+ (JSC::LLInt::llint_write_barrier_slow):
+ * runtime/Arguments.h:
+ * runtime/JSWeakMap.cpp:
+ * runtime/MapData.cpp:
+ (JSC::MapData::ensureSpaceForAppend):
+ * runtime/PropertyTable.cpp:
+ (JSC::PropertyTable::PropertyTable):
+ * runtime/Structure.h:
+ * runtime/WriteBarrier.h:
+ (JSC::WriteBarrierBase::set):
+ (JSC::WriteBarrierBase::setMayBeNull):
+ (JSC::WriteBarrierBase::setEarlyValue):
+ (JSC::WriteBarrierBase<Unknown>::set):
+ * runtime/WriteBarrierInlines.h: Removed.
+
2014-02-06 Oliver Hunt <[email protected]>
Make 32bit pass the correct this value to custom getters
Modified: trunk/Source/_javascript_Core/GNUmakefile.list.am (163555 => 163556)
--- trunk/Source/_javascript_Core/GNUmakefile.list.am 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/GNUmakefile.list.am 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1221,7 +1221,6 @@
Source/_javascript_Core/runtime/WeakMapPrototype.h \
Source/_javascript_Core/runtime/WeakRandom.h \
Source/_javascript_Core/runtime/WriteBarrier.h \
- Source/_javascript_Core/runtime/WriteBarrierInlines.h \
Source/_javascript_Core/tools/CodeProfile.cpp \
Source/_javascript_Core/tools/CodeProfile.h \
Source/_javascript_Core/tools/CodeProfiling.cpp \
Modified: trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj (163555 => 163556)
--- trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1388,7 +1388,6 @@
<ClInclude Include="..\runtime\WeakMapPrototype.h" />
<ClInclude Include="..\runtime\WeakRandom.h" />
<ClInclude Include="..\runtime\WriteBarrier.h" />
- <ClInclude Include="..\runtime\WriteBarrierInlines.h" />
<ClInclude Include="..\tools\CodeProfile.h" />
<ClInclude Include="..\tools\CodeProfiling.h" />
<ClInclude Include="..\tools\ProfileTreeNode.h" />
Modified: trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters (163555 => 163556)
--- trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/_javascript_Core.vcxproj/_javascript_Core.vcxproj.filters 2014-02-06 20:22:43 UTC (rev 163556)
@@ -2438,9 +2438,6 @@
<ClInclude Include="..\runtime\WriteBarrier.h">
<Filter>runtime</Filter>
</ClInclude>
- <ClInclude Include="..\runtime\WriteBarrierInlines.h">
- <Filter>runtime</Filter>
- </ClInclude>
<ClInclude Include="..\tools\CodeProfile.h">
<Filter>tools</Filter>
</ClInclude>
Modified: trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj (163555 => 163556)
--- trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/_javascript_Core.xcodeproj/project.pbxproj 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1333,7 +1333,6 @@
C2981FDD17BAFF4400A3BC98 /* DFGDesiredWriteBarriers.h in Headers */ = {isa = PBXBuildFile; fileRef = C2981FDB17BAFF4400A3BC98 /* DFGDesiredWriteBarriers.h */; settings = {ATTRIBUTES = (Private, ); }; };
C29ECB031804D0ED00D2CBB4 /* CurrentThisInsideBlockGetterTest.mm in Sources */ = {isa = PBXBuildFile; fileRef = C29ECB011804D0ED00D2CBB4 /* CurrentThisInsideBlockGetterTest.mm */; };
C2A7F688160432D400F76B98 /* JSDestructibleObject.h in Headers */ = {isa = PBXBuildFile; fileRef = C2A7F687160432D400F76B98 /* JSDestructibleObject.h */; settings = {ATTRIBUTES = (Private, ); }; };
- C2B6D75318A33793004A9301 /* WriteBarrierInlines.h in Headers */ = {isa = PBXBuildFile; fileRef = C2B6D75218A33793004A9301 /* WriteBarrierInlines.h */; settings = {ATTRIBUTES = (Private, ); }; };
C2B916C214DA014E00CBAC86 /* MarkedAllocator.h in Headers */ = {isa = PBXBuildFile; fileRef = C2B916C114DA014E00CBAC86 /* MarkedAllocator.h */; settings = {ATTRIBUTES = (Private, ); }; };
C2B916C514DA040C00CBAC86 /* MarkedAllocator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2B916C414DA040C00CBAC86 /* MarkedAllocator.cpp */; };
C2C0F7CD17BBFC5B00464FE4 /* DFGDesiredTransitions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C2C0F7CB17BBFC5B00464FE4 /* DFGDesiredTransitions.cpp */; };
@@ -2766,7 +2765,6 @@
C29ECB011804D0ED00D2CBB4 /* CurrentThisInsideBlockGetterTest.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = CurrentThisInsideBlockGetterTest.mm; path = API/tests/CurrentThisInsideBlockGetterTest.mm; sourceTree = "<group>"; };
C29ECB021804D0ED00D2CBB4 /* CurrentThisInsideBlockGetterTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CurrentThisInsideBlockGetterTest.h; path = API/tests/CurrentThisInsideBlockGetterTest.h; sourceTree = "<group>"; };
C2A7F687160432D400F76B98 /* JSDestructibleObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSDestructibleObject.h; sourceTree = "<group>"; };
- C2B6D75218A33793004A9301 /* WriteBarrierInlines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WriteBarrierInlines.h; sourceTree = "<group>"; };
C2B916C114DA014E00CBAC86 /* MarkedAllocator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MarkedAllocator.h; sourceTree = "<group>"; };
C2B916C414DA040C00CBAC86 /* MarkedAllocator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MarkedAllocator.cpp; sourceTree = "<group>"; };
C2C0F7CB17BBFC5B00464FE4 /* DFGDesiredTransitions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DFGDesiredTransitions.cpp; path = dfg/DFGDesiredTransitions.cpp; sourceTree = "<group>"; };
@@ -3626,7 +3624,6 @@
7EF6E0BB0EB7A1EC0079AFAF /* runtime */ = {
isa = PBXGroup;
children = (
- C2B6D75218A33793004A9301 /* WriteBarrierInlines.h */,
BCF605110E203EF800B9A64D /* ArgList.cpp */,
BCF605120E203EF800B9A64D /* ArgList.h */,
BC257DE50E1F51C50016B6C9 /* Arguments.cpp */,
@@ -4644,7 +4641,6 @@
65C0285D1717966800351E35 /* ARMv7DOpcode.h in Headers */,
2A68295B1875F80500B6C3E2 /* CopyWriteBarrier.h in Headers */,
2A4EC90C1860D6C20094F782 /* WriteBarrierBuffer.h in Headers */,
- C2B6D75318A33793004A9301 /* WriteBarrierInlines.h in Headers */,
FE5932A8183C5A2600A1ECCC /* VMEntryScope.h in Headers */,
A532439318569709002ED692 /* CodeGeneratorInspectorStrings.py in Headers */,
A532439218569709002ED692 /* CodeGeneratorInspector.py in Headers */,
Modified: trunk/Source/_javascript_Core/heap/CopyWriteBarrier.h (163555 => 163556)
--- trunk/Source/_javascript_Core/heap/CopyWriteBarrier.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/heap/CopyWriteBarrier.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -68,10 +68,10 @@
return get();
}
- void set(VM& vm, const JSCell* owner, T* value)
+ void set(VM&, const JSCell* owner, T* value)
{
this->m_value = value;
- vm.heap.writeBarrier(owner);
+ Heap::writeBarrier(owner);
}
void setWithoutWriteBarrier(T* value)
Modified: trunk/Source/_javascript_Core/heap/Heap.cpp (163555 => 163556)
--- trunk/Source/_javascript_Core/heap/Heap.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/heap/Heap.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1087,7 +1087,8 @@
ASSERT_GC_OBJECT_LOOKS_VALID(const_cast<JSCell*>(from));
if (!from || !isMarked(from))
return;
- addToRememberedSet(from);
+ Heap* heap = Heap::heap(from);
+ heap->addToRememberedSet(from);
#else
UNUSED_PARAM(from);
#endif
Modified: trunk/Source/_javascript_Core/heap/Heap.h (163555 => 163556)
--- trunk/Source/_javascript_Core/heap/Heap.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/heap/Heap.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -102,9 +102,9 @@
return MarkedBlock::blockFor(cell)->isRemembered(cell);
}
static bool isWriteBarrierEnabled();
- JS_EXPORT_PRIVATE void writeBarrier(const JSCell*);
- void writeBarrier(const JSCell*, JSValue);
- void writeBarrier(const JSCell*, JSCell*);
+ JS_EXPORT_PRIVATE static void writeBarrier(const JSCell*);
+ static void writeBarrier(const JSCell*, JSValue);
+ static void writeBarrier(const JSCell*, JSCell*);
WriteBarrierBuffer& writeBarrierBuffer() { return m_writeBarrierBuffer; }
void flushWriteBarrierBuffer(JSCell*);
@@ -401,7 +401,7 @@
return;
if (!to || isMarked(to))
return;
- addToRememberedSet(from);
+ Heap::heap(from)->addToRememberedSet(from);
}
inline void Heap::writeBarrier(const JSCell* from, JSValue to)
Modified: trunk/Source/_javascript_Core/jit/JITOperations.cpp (163555 => 163556)
--- trunk/Source/_javascript_Core/jit/JITOperations.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/jit/JITOperations.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1740,7 +1740,7 @@
{
VM* vm = &exec->vm();
NativeCallFrameTracer tracer(vm, exec);
- vm->heap.writeBarrier(cell);
+ exec->heap()->writeBarrier(cell);
}
// NB: We don't include the value as part of the barrier because the write barrier elision
@@ -1750,7 +1750,7 @@
{
VM* vm = &exec->vm();
NativeCallFrameTracer tracer(vm, exec);
- vm->heap.writeBarrier(cell);
+ Heap::writeBarrier(cell);
}
void JIT_OPERATION operationInitGlobalConst(ExecState* exec, Instruction* pc)
Modified: trunk/Source/_javascript_Core/jit/JITWriteBarrier.h (163555 => 163556)
--- trunk/Source/_javascript_Core/jit/JITWriteBarrier.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/jit/JITWriteBarrier.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -77,9 +77,9 @@
{
}
- void set(VM& vm, CodeLocationDataLabelPtr location, JSCell* owner, JSCell* value)
+ void set(VM&, CodeLocationDataLabelPtr location, JSCell* owner, JSCell* value)
{
- vm.heap.writeBarrier(owner, value);
+ Heap::writeBarrier(owner, value);
m_location = location;
ASSERT(((!!m_location) && m_location.executableAddress() != JITWriteBarrierFlag) || (location.executableAddress() == m_location.executableAddress()));
MacroAssembler::repatchPointer(m_location, value);
Modified: trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp (163555 => 163556)
--- trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1436,10 +1436,9 @@
}
#endif
-extern "C" void llint_write_barrier_slow(ExecState* exec, JSCell* cell)
+extern "C" void llint_write_barrier_slow(ExecState*, JSCell* cell)
{
- VM& vm = exec->vm();
- vm.heap.writeBarrier(cell);
+ Heap::writeBarrier(cell);
}
} } // namespace JSC::LLInt
Modified: trunk/Source/_javascript_Core/runtime/Arguments.h (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/Arguments.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/Arguments.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -31,7 +31,6 @@
#include "JSGlobalObject.h"
#include "Interpreter.h"
#include "ObjectConstructor.h"
-#include "WriteBarrierInlines.h"
#include <wtf/StdLibExtras.h>
namespace JSC {
Modified: trunk/Source/_javascript_Core/runtime/JSWeakMap.cpp (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/JSWeakMap.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/JSWeakMap.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -29,7 +29,6 @@
#include "JSCJSValueInlines.h"
#include "SlotVisitorInlines.h"
#include "WeakMapData.h"
-#include "WriteBarrierInlines.h"
namespace JSC {
Modified: trunk/Source/_javascript_Core/runtime/MapData.cpp (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/MapData.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/MapData.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -208,7 +208,7 @@
replaceAndPackBackingStore(newEntries, requiredSize);
else
replaceBackingStore(newEntries, requiredSize);
- callFrame->heap()->writeBarrier(this);
+ Heap::writeBarrier(this);
return true;
}
Modified: trunk/Source/_javascript_Core/runtime/PropertyTable.cpp (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/PropertyTable.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/PropertyTable.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -84,7 +84,7 @@
iterator end = this->end();
for (iterator iter = begin(); iter != end; ++iter) {
iter->key->ref();
- vm.heap.writeBarrier(owner, iter->specificValue.get());
+ Heap::writeBarrier(owner, iter->specificValue.get());
}
// Copy the m_deletedOffsets vector.
@@ -109,7 +109,7 @@
ASSERT(canInsert());
reinsert(*iter);
iter->key->ref();
- vm.heap.writeBarrier(owner, iter->specificValue.get());
+ Heap::writeBarrier(owner, iter->specificValue.get());
}
// Copy the m_deletedOffsets vector.
Modified: trunk/Source/_javascript_Core/runtime/Structure.h (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/Structure.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/Structure.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -42,7 +42,6 @@
#include "JSTypeInfo.h"
#include "Watchpoint.h"
#include "Weak.h"
-#include "WriteBarrierInlines.h"
#include <wtf/CompilationThread.h>
#include <wtf/PassRefPtr.h>
#include <wtf/PrintStream.h>
Modified: trunk/Source/_javascript_Core/runtime/WriteBarrier.h (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/WriteBarrier.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/WriteBarrier.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -71,7 +71,13 @@
// We have a separate base class with no constructors for use in Unions.
template <typename T> class WriteBarrierBase {
public:
- void set(VM&, const JSCell* owner, T* value);
+ void set(VM& vm, const JSCell* owner, T* value)
+ {
+ ASSERT(value);
+ ASSERT(!Options::enableConcurrentJIT() || !isCompilationThread());
+ validateCell(value);
+ setEarlyValue(vm, owner, value);
+ }
// This is meant to be used like operator=, but is called copyFrom instead, in
// order to kindly inform the C++ compiler that its advice is not appreciated.
@@ -80,11 +86,20 @@
m_cell = other.m_cell;
}
- void setMayBeNull(VM&, const JSCell* owner, T* value);
+ void setMayBeNull(VM& vm, const JSCell* owner, T* value)
+ {
+ if (value)
+ validateCell(value);
+ setEarlyValue(vm, owner, value);
+ }
// Should only be used by JSCell during early initialisation
// when some basic types aren't yet completely instantiated
- void setEarlyValue(VM&, const JSCell* owner, T* value);
+ void setEarlyValue(VM&, const JSCell* owner, T* value)
+ {
+ this->m_cell = reinterpret_cast<JSCell*>(value);
+ Heap::writeBarrier(owner, this->m_cell);
+ }
T* get() const
{
@@ -136,7 +151,13 @@
template <> class WriteBarrierBase<Unknown> {
public:
- void set(VM&, const JSCell* owner, JSValue);
+ void set(VM&, const JSCell* owner, JSValue value)
+ {
+ ASSERT(!Options::enableConcurrentJIT() || !isCompilationThread());
+ m_value = JSValue::encode(value);
+ Heap::writeBarrier(owner, value);
+ }
+
void setWithoutWriteBarrier(JSValue value)
{
m_value = JSValue::encode(value);
Deleted: trunk/Source/_javascript_Core/runtime/WriteBarrierInlines.h (163555 => 163556)
--- trunk/Source/_javascript_Core/runtime/WriteBarrierInlines.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/_javascript_Core/runtime/WriteBarrierInlines.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1,67 +0,0 @@
-/*
- * Copyright (C) 2014 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef WriteBarrierInlines_h
-#define WriteBarrierInlines_h
-
-#include "VM.h"
-#include "WriteBarrier.h"
-
-namespace JSC {
-
-template <typename T>
-inline void WriteBarrierBase<T>::set(VM& vm, const JSCell* owner, T* value)
-{
- ASSERT(value);
- ASSERT(!Options::enableConcurrentJIT() || !isCompilationThread());
- validateCell(value);
- setEarlyValue(vm, owner, value);
-}
-
-template <typename T>
-inline void WriteBarrierBase<T>::setMayBeNull(VM& vm, const JSCell* owner, T* value)
-{
- if (value)
- validateCell(value);
- setEarlyValue(vm, owner, value);
-}
-
-template <typename T>
-inline void WriteBarrierBase<T>::setEarlyValue(VM& vm, const JSCell* owner, T* value)
-{
- this->m_cell = reinterpret_cast<JSCell*>(value);
- vm.heap.writeBarrier(owner, this->m_cell);
-}
-
-inline void WriteBarrierBase<Unknown>::set(VM& vm, const JSCell* owner, JSValue value)
-{
- ASSERT(!Options::enableConcurrentJIT() || !isCompilationThread());
- m_value = JSValue::encode(value);
- vm.heap.writeBarrier(owner, value);
-}
-
-} // namespace JSC
-
-#endif // WriteBarrierInlines_h
Modified: trunk/Source/WebCore/ChangeLog (163555 => 163556)
--- trunk/Source/WebCore/ChangeLog 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/WebCore/ChangeLog 2014-02-06 20:22:43 UTC (rev 163556)
@@ -1,3 +1,16 @@
+2014-02-06 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r163542.
+ http://trac.webkit.org/changeset/163542
+ https://bugs.webkit.org/show_bug.cgi?id=128324
+
+ Caused many assertion failures (Requested by ap on #webkit).
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSEventListener::JSEventListener):
+ * bindings/js/JSEventListener.h:
+ (WebCore::JSEventListener::jsFunction):
+
2014-02-06 Frédéric Wang <[email protected]>
Do not draw multi-characters <mi> in italic.
Modified: trunk/Source/WebCore/bindings/js/JSEventListener.cpp (163555 => 163556)
--- trunk/Source/WebCore/bindings/js/JSEventListener.cpp 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/WebCore/bindings/js/JSEventListener.cpp 2014-02-06 20:22:43 UTC (rev 163556)
@@ -47,7 +47,7 @@
, m_isolatedWorld(&isolatedWorld)
{
if (wrapper) {
- JSC::Heap::heap(wrapper)->writeBarrier(wrapper, function);
+ JSC::Heap::writeBarrier(wrapper, function);
m_jsFunction = JSC::Weak<JSC::JSObject>(function);
} else
ASSERT(!function);
Modified: trunk/Source/WebCore/bindings/js/JSEventListener.h (163555 => 163556)
--- trunk/Source/WebCore/bindings/js/JSEventListener.h 2014-02-06 20:17:39 UTC (rev 163555)
+++ trunk/Source/WebCore/bindings/js/JSEventListener.h 2014-02-06 20:22:43 UTC (rev 163556)
@@ -84,7 +84,7 @@
if (!m_jsFunction) {
JSC::JSObject* function = initializeJSFunction(scriptExecutionContext);
- JSC::Heap::heap(m_wrapper.get())->writeBarrier(m_wrapper.get(), function);
+ JSC::Heap::writeBarrier(m_wrapper.get(), function);
m_jsFunction = JSC::Weak<JSC::JSObject>(function);
}