2011-05-10  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Darin Adler.

        Fixed up some #include dependencies so the WriteBarrier class can actually call Heap::writeBarrier
        https://bugs.webkit.org/show_bug.cgi?id=60532

        * GNUmakefile.list.am:
        * JavaScriptCore.gypi:
        * JavaScriptCore.xcodeproj/project.pbxproj: Build!

        * heap/Handle.h: Moved HandleTypes to its own header because that's the
        WebKit style, and it was necessary to resolve a circular dependency
        between Handle.h and WriteBarrier.h.

        * heap/Heap.h:
        (JSC::Heap::writeBarrier): Added an inline no-op writeBarrier(), to
        verify that all the code is in the right place.

        * heap/MarkStack.h: Moved WriteBarrier operations to WriteBarrier.h to
        resolve a circular dependency.

        * runtime/ArgList.h:
        * runtime/JSCell.h: #include WriteBarrier.h since we don't get it for
        free anymore.

        * runtime/PropertyMapHashTable.h:
        (JSC::PropertyTable::PropertyTable): Call the real writeBarrier()
        function, now that it exists.

        * runtime/SmallStrings.h: Removed a stray #include to resolve a circular
        dependency.

        * runtime/WriteBarrier.h:
        (JSC::WriteBarrierBase::set):
        (JSC::MarkStack::append):
        (JSC::MarkStack::appendValues): Updated to match the changes above.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@86209 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/JavaScriptCore/runtime/JSCell.h b/Source/JavaScriptCore/runtime/JSCell.h
index 1662163..08aab62 100644
--- a/Source/JavaScriptCore/runtime/JSCell.h
+++ b/Source/JavaScriptCore/runtime/JSCell.h
@@ -30,6 +30,7 @@
 #include "JSLock.h"
 #include "JSValueInlineMethods.h"
 #include "MarkStack.h"
+#include "WriteBarrier.h"
 #include <wtf/Noncopyable.h>
 
 namespace JSC {