Changeset 101295 in webkit


Ignore:
Timestamp:
Nov 28, 2011 3:40:08 PM (12 years ago)
Author:
oliver@apple.com
Message:

Move typed array implementations into wtf
https://bugs.webkit.org/show_bug.cgi?id=73248

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Move typed array implementation files from WebCore to wtf. Inline the
.cpp files for each of the array views to cut down on unnecessary exports
and function call overhead for trivial operations.

Added files to all the project files.

(WTF::ArrayBuffer::transfer):
(WTF::ArrayBuffer::addView):
(WTF::ArrayBuffer::removeView):

  • wtf/ArrayBuffer.h: Renamed from Source/WebCore/html/canvas/ArrayBuffer.cpp.

(WTF::ArrayBufferContents::ArrayBufferContents):
(WTF::ArrayBufferContents::data):
(WTF::ArrayBufferContents::sizeInBytes):
(WTF::ArrayBufferContents::transfer):
(WTF::ArrayBuffer::~ArrayBuffer):
(WTF::ArrayBuffer::clampValue):
(WTF::ArrayBuffer::create):
(WTF::ArrayBuffer::ArrayBuffer):
(WTF::ArrayBuffer::data):
(WTF::ArrayBuffer::byteLength):
(WTF::ArrayBuffer::slice):
(WTF::ArrayBuffer::sliceImpl):
(WTF::ArrayBuffer::clampIndex):
(WTF::ArrayBufferContents::tryAllocate):
(WTF::ArrayBufferContents::~ArrayBufferContents):

  • wtf/ArrayBufferView.cpp: Copied from Source/WebCore/bindings/js/JSArrayBufferCustom.cpp.

(WTF::ArrayBufferView::ArrayBufferView):
(WTF::ArrayBufferView::~ArrayBufferView):
(WTF::ArrayBufferView::neuter):

  • wtf/ArrayBufferView.h: Renamed from Source/WebCore/html/canvas/ArrayBufferView.h.

(WTF::ArrayBufferView::isByteArray):
(WTF::ArrayBufferView::isUnsignedByteArray):
(WTF::ArrayBufferView::isShortArray):
(WTF::ArrayBufferView::isUnsignedShortArray):
(WTF::ArrayBufferView::isIntArray):
(WTF::ArrayBufferView::isUnsignedIntArray):
(WTF::ArrayBufferView::isFloatArray):
(WTF::ArrayBufferView::isDoubleArray):
(WTF::ArrayBufferView::isDataView):
(WTF::ArrayBufferView::buffer):
(WTF::ArrayBufferView::baseAddress):
(WTF::ArrayBufferView::byteOffset):
(WTF::ArrayBufferView::verifySubRange):
(WTF::ArrayBufferView::clampOffsetAndNumElements):
(WTF::ArrayBufferView::setImpl):
(WTF::ArrayBufferView::setRangeImpl):
(WTF::ArrayBufferView::zeroRangeImpl):
(WTF::ArrayBufferView::calculateOffsetAndLength):

  • wtf/CMakeLists.txt:
  • wtf/Float32Array.h: Renamed from Source/WebCore/html/canvas/Float32Array.h.

(WTF::Float32Array::set):
(WTF::Float32Array::item):
(WTF::Float32Array::isFloatArray):
(WTF::Float32Array::create):
(WTF::Float32Array::Float32Array):
(WTF::Float32Array::subarray):

  • wtf/Float64Array.h: Renamed from Source/WebCore/html/canvas/Float64Array.h.

(WTF::Float64Array::set):
(WTF::Float64Array::item):
(WTF::Float64Array::isDoubleArray):
(WTF::Float64Array::create):
(WTF::Float64Array::Float64Array):
(WTF::Float64Array::subarray):

  • wtf/Int16Array.h: Renamed from Source/WebCore/html/canvas/Int16Array.cpp.

(WTF::Int16Array::set):
(WTF::Int16Array::isShortArray):
(WTF::Int16Array::create):
(WTF::Int16Array::Int16Array):
(WTF::Int16Array::subarray):

  • wtf/Int32Array.h: Renamed from Source/WebCore/html/canvas/Int32Array.cpp.

(WTF::Int32Array::set):
(WTF::Int32Array::isIntArray):
(WTF::Int32Array::create):
(WTF::Int32Array::Int32Array):
(WTF::Int32Array::subarray):

  • wtf/Int8Array.h: Renamed from Source/WebCore/html/canvas/Int8Array.cpp.

(WTF::Int8Array::set):
(WTF::Int8Array::isByteArray):
(WTF::Int8Array::create):
(WTF::Int8Array::Int8Array):
(WTF::Int8Array::subarray):

  • wtf/IntegralTypedArrayBase.h: Renamed from Source/WebCore/html/canvas/IntegralTypedArrayBase.h.

(WTF::IntegralTypedArrayBase::set):
(WTF::IntegralTypedArrayBase::item):
(WTF::IntegralTypedArrayBase::IntegralTypedArrayBase):

  • wtf/TypedArrayBase.h: Renamed from Source/WebCore/html/canvas/TypedArrayBase.h.

(WTF::TypedArrayBase::data):
(WTF::TypedArrayBase::set):
(WTF::TypedArrayBase::setRange):
(WTF::TypedArrayBase::zeroRange):
(WTF::TypedArrayBase::length):
(WTF::TypedArrayBase::byteLength):
(WTF::TypedArrayBase::TypedArrayBase):
(WTF::TypedArrayBase::create):
(WTF::TypedArrayBase::subarrayImpl):

  • wtf/Uint16Array.h: Renamed from Source/WebCore/html/canvas/Uint16Array.cpp.

(WTF::Uint16Array::set):
(WTF::Uint16Array::isUnsignedShortArray):
(WTF::Uint16Array::create):
(WTF::Uint16Array::Uint16Array):
(WTF::Uint16Array::subarray):

  • wtf/Uint32Array.h: Renamed from Source/WebCore/html/canvas/Uint32Array.cpp.

(WTF::Uint32Array::set):
(WTF::Uint32Array::isUnsignedIntArray):
(WTF::Uint32Array::create):
(WTF::Uint32Array::Uint32Array):
(WTF::Uint32Array::subarray):

  • wtf/Uint8Array.h: Renamed from Source/WebCore/html/canvas/Uint8Array.h.

(WTF::Uint8Array::set):
(WTF::Uint8Array::isUnsignedByteArray):
(WTF::Uint8Array::create):
(WTF::Uint8Array::Uint8Array):
(WTF::Uint8Array::subarray):

  • wtf/wtf.pro:

Source/WebCore:

Removed the typed array implementation files from WebCore and
added forwarding headers.

  • CMakeLists.txt:
  • ForwardingHeaders/wtf/ArrayBuffer.h: Added.
  • ForwardingHeaders/wtf/ArrayBufferView.h: Added.
  • ForwardingHeaders/wtf/Float32Array.h: Added.
  • ForwardingHeaders/wtf/Float64Array.h: Added.
  • ForwardingHeaders/wtf/Int16Array.h: Added.
  • ForwardingHeaders/wtf/Int32Array.h: Added.
  • ForwardingHeaders/wtf/Int8Array.h: Added.
  • ForwardingHeaders/wtf/Uint16Array.h: Added.
  • ForwardingHeaders/wtf/Uint32Array.h: Added.
  • ForwardingHeaders/wtf/Uint8Array.h: Added.
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSArrayBufferCustom.cpp:
  • bindings/js/JSArrayBufferViewHelper.h:
  • bindings/js/JSAudioContextCustom.cpp:
  • bindings/js/JSFileReaderCustom.cpp:
  • bindings/js/JSFloat32ArrayCustom.cpp:
  • bindings/js/JSFloat64ArrayCustom.cpp:
  • bindings/js/JSInt16ArrayCustom.cpp:
  • bindings/js/JSInt32ArrayCustom.cpp:
  • bindings/js/JSInt8ArrayCustom.cpp:
  • bindings/js/JSUint16ArrayCustom.cpp:
  • bindings/js/JSUint32ArrayCustom.cpp:
  • bindings/js/JSUint8ArrayCustom.cpp:
  • bindings/js/JSWaveShaperNodeCustom.cpp:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:
  • bindings/js/JSXMLHttpRequestCustom.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:

(AddIncludesForType):
(GenerateHeader):
(NativeToJSValue):

  • bindings/scripts/test/JS/JSFloat64Array.cpp:
  • bindings/scripts/test/JS/JSFloat64Array.h:
  • dom/MessageEvent.h:
  • fileapi/FileReader.cpp:
  • fileapi/FileReaderLoader.cpp:
  • fileapi/FileReaderSync.cpp:
  • fileapi/WebKitBlobBuilder.cpp:
  • html/HTMLMediaElement.cpp:
  • html/canvas/ArrayBuffer.h: Removed.
  • html/canvas/ArrayBufferView.cpp: Removed.
  • html/canvas/DataView.h:
  • html/canvas/Float64Array.cpp: Removed.
  • html/canvas/Int16Array.h: Removed.
  • html/canvas/Int32Array.h: Removed.
  • html/canvas/Int8Array.h: Removed.
  • html/canvas/Uint16Array.h: Removed.
  • html/canvas/Uint32Array.h: Removed.
  • html/canvas/Uint8Array.cpp: Removed.
  • html/canvas/WebGLBuffer.cpp:
  • html/canvas/WebGLBuffer.h:
  • html/canvas/WebGLGetInfo.cpp:
  • html/canvas/WebGLGetInfo.h:
  • html/canvas/WebGLRenderingContext.cpp:
  • html/canvas/WebGLRenderingContext.h:
  • page/Crypto.cpp:
  • platform/graphics/GraphicsContext3D.cpp:
  • platform/graphics/mac/GraphicsContext3DMac.mm:
  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  • webaudio/AsyncAudioDecoder.cpp:
  • webaudio/AudioBuffer.h:
  • webaudio/AudioContext.cpp:
  • webaudio/AudioParam.h:
  • webaudio/AudioParamTimeline.h:
  • webaudio/JavaScriptAudioNode.cpp:
  • webaudio/RealtimeAnalyser.cpp:
  • webaudio/WaveShaperProcessor.h:
  • websockets/WebSocketChannel.cpp:
  • websockets/WorkerThreadableWebSocketChannel.cpp:
  • xml/XMLHttpRequest.cpp:
Location:
trunk/Source
Files:
10 added
9 deleted
71 edited
1 copied
13 moved

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r101291 r101295  
     12011-11-28  Oliver Hunt  <oliver@apple.com>
     2
     3        Move typed array implementations into wtf
     4        https://bugs.webkit.org/show_bug.cgi?id=73248
     5
     6        Reviewed by Sam Weinig.
     7
     8        Move typed array implementation files from WebCore to wtf.  Inline the
     9        .cpp files for each of the array views to cut down on unnecessary exports
     10        and function call overhead for trivial operations.
     11
     12        Added files to all the project files.
     13
     14        * GNUmakefile.list.am:
     15        * JavaScriptCore.exp:
     16        * JavaScriptCore.vcproj/WTF/WTF.vcproj:
     17        * JavaScriptCore.xcodeproj/project.pbxproj:
     18        * wtf/ArrayBuffer.cpp: Renamed from Source/WebCore/html/canvas/Float32Array.cpp.
     19        (WTF::ArrayBuffer::transfer):
     20        (WTF::ArrayBuffer::addView):
     21        (WTF::ArrayBuffer::removeView):
     22        * wtf/ArrayBuffer.h: Renamed from Source/WebCore/html/canvas/ArrayBuffer.cpp.
     23        (WTF::ArrayBufferContents::ArrayBufferContents):
     24        (WTF::ArrayBufferContents::data):
     25        (WTF::ArrayBufferContents::sizeInBytes):
     26        (WTF::ArrayBufferContents::transfer):
     27        (WTF::ArrayBuffer::~ArrayBuffer):
     28        (WTF::ArrayBuffer::clampValue):
     29        (WTF::ArrayBuffer::create):
     30        (WTF::ArrayBuffer::ArrayBuffer):
     31        (WTF::ArrayBuffer::data):
     32        (WTF::ArrayBuffer::byteLength):
     33        (WTF::ArrayBuffer::slice):
     34        (WTF::ArrayBuffer::sliceImpl):
     35        (WTF::ArrayBuffer::clampIndex):
     36        (WTF::ArrayBufferContents::tryAllocate):
     37        (WTF::ArrayBufferContents::~ArrayBufferContents):
     38        * wtf/ArrayBufferView.cpp: Copied from Source/WebCore/bindings/js/JSArrayBufferCustom.cpp.
     39        (WTF::ArrayBufferView::ArrayBufferView):
     40        (WTF::ArrayBufferView::~ArrayBufferView):
     41        (WTF::ArrayBufferView::neuter):
     42        * wtf/ArrayBufferView.h: Renamed from Source/WebCore/html/canvas/ArrayBufferView.h.
     43        (WTF::ArrayBufferView::isByteArray):
     44        (WTF::ArrayBufferView::isUnsignedByteArray):
     45        (WTF::ArrayBufferView::isShortArray):
     46        (WTF::ArrayBufferView::isUnsignedShortArray):
     47        (WTF::ArrayBufferView::isIntArray):
     48        (WTF::ArrayBufferView::isUnsignedIntArray):
     49        (WTF::ArrayBufferView::isFloatArray):
     50        (WTF::ArrayBufferView::isDoubleArray):
     51        (WTF::ArrayBufferView::isDataView):
     52        (WTF::ArrayBufferView::buffer):
     53        (WTF::ArrayBufferView::baseAddress):
     54        (WTF::ArrayBufferView::byteOffset):
     55        (WTF::ArrayBufferView::verifySubRange):
     56        (WTF::ArrayBufferView::clampOffsetAndNumElements):
     57        (WTF::ArrayBufferView::setImpl):
     58        (WTF::ArrayBufferView::setRangeImpl):
     59        (WTF::ArrayBufferView::zeroRangeImpl):
     60        (WTF::ArrayBufferView::calculateOffsetAndLength):
     61        * wtf/CMakeLists.txt:
     62        * wtf/Float32Array.h: Renamed from Source/WebCore/html/canvas/Float32Array.h.
     63        (WTF::Float32Array::set):
     64        (WTF::Float32Array::item):
     65        (WTF::Float32Array::isFloatArray):
     66        (WTF::Float32Array::create):
     67        (WTF::Float32Array::Float32Array):
     68        (WTF::Float32Array::subarray):
     69        * wtf/Float64Array.h: Renamed from Source/WebCore/html/canvas/Float64Array.h.
     70        (WTF::Float64Array::set):
     71        (WTF::Float64Array::item):
     72        (WTF::Float64Array::isDoubleArray):
     73        (WTF::Float64Array::create):
     74        (WTF::Float64Array::Float64Array):
     75        (WTF::Float64Array::subarray):
     76        * wtf/Int16Array.h: Renamed from Source/WebCore/html/canvas/Int16Array.cpp.
     77        (WTF::Int16Array::set):
     78        (WTF::Int16Array::isShortArray):
     79        (WTF::Int16Array::create):
     80        (WTF::Int16Array::Int16Array):
     81        (WTF::Int16Array::subarray):
     82        * wtf/Int32Array.h: Renamed from Source/WebCore/html/canvas/Int32Array.cpp.
     83        (WTF::Int32Array::set):
     84        (WTF::Int32Array::isIntArray):
     85        (WTF::Int32Array::create):
     86        (WTF::Int32Array::Int32Array):
     87        (WTF::Int32Array::subarray):
     88        * wtf/Int8Array.h: Renamed from Source/WebCore/html/canvas/Int8Array.cpp.
     89        (WTF::Int8Array::set):
     90        (WTF::Int8Array::isByteArray):
     91        (WTF::Int8Array::create):
     92        (WTF::Int8Array::Int8Array):
     93        (WTF::Int8Array::subarray):
     94        * wtf/IntegralTypedArrayBase.h: Renamed from Source/WebCore/html/canvas/IntegralTypedArrayBase.h.
     95        (WTF::IntegralTypedArrayBase::set):
     96        (WTF::IntegralTypedArrayBase::item):
     97        (WTF::IntegralTypedArrayBase::IntegralTypedArrayBase):
     98        * wtf/TypedArrayBase.h: Renamed from Source/WebCore/html/canvas/TypedArrayBase.h.
     99        (WTF::TypedArrayBase::data):
     100        (WTF::TypedArrayBase::set):
     101        (WTF::TypedArrayBase::setRange):
     102        (WTF::TypedArrayBase::zeroRange):
     103        (WTF::TypedArrayBase::length):
     104        (WTF::TypedArrayBase::byteLength):
     105        (WTF::TypedArrayBase::TypedArrayBase):
     106        (WTF::TypedArrayBase::create):
     107        (WTF::TypedArrayBase::subarrayImpl):
     108        * wtf/Uint16Array.h: Renamed from Source/WebCore/html/canvas/Uint16Array.cpp.
     109        (WTF::Uint16Array::set):
     110        (WTF::Uint16Array::isUnsignedShortArray):
     111        (WTF::Uint16Array::create):
     112        (WTF::Uint16Array::Uint16Array):
     113        (WTF::Uint16Array::subarray):
     114        * wtf/Uint32Array.h: Renamed from Source/WebCore/html/canvas/Uint32Array.cpp.
     115        (WTF::Uint32Array::set):
     116        (WTF::Uint32Array::isUnsignedIntArray):
     117        (WTF::Uint32Array::create):
     118        (WTF::Uint32Array::Uint32Array):
     119        (WTF::Uint32Array::subarray):
     120        * wtf/Uint8Array.h: Renamed from Source/WebCore/html/canvas/Uint8Array.h.
     121        (WTF::Uint8Array::set):
     122        (WTF::Uint8Array::isUnsignedByteArray):
     123        (WTF::Uint8Array::create):
     124        (WTF::Uint8Array::Uint8Array):
     125        (WTF::Uint8Array::subarray):
     126        * wtf/wtf.pro:
     127
    11282011-11-27  Filip Pizlo  <fpizlo@apple.com>
    2129
  • trunk/Source/JavaScriptCore/GNUmakefile.list.am

    r101242 r101295  
    497497        Source/JavaScriptCore/wtf/Alignment.h \
    498498        Source/JavaScriptCore/wtf/AlwaysInline.h \
     499        Source/JavaScriptCore/wtf/ArrayBuffer.cpp \
     500        Source/JavaScriptCore/wtf/ArrayBuffer.h \
     501        Source/JavaScriptCore/wtf/ArrayBufferView.cpp \
     502        Source/JavaScriptCore/wtf/ArrayBufferView.h \
    499503        Source/JavaScriptCore/wtf/ASCIICType.h \
    500504        Source/JavaScriptCore/wtf/Assertions.cpp \
     
    502506        Source/JavaScriptCore/wtf/Atomics.h \
    503507        Source/JavaScriptCore/wtf/AVLTree.h \
     508        Source/JavaScriptCore/wtf/Bitmap.h \
    504509        Source/JavaScriptCore/wtf/BitVector.cpp \
    505510        Source/JavaScriptCore/wtf/BitVector.h \
    506         Source/JavaScriptCore/wtf/Bitmap.h \
    507511        Source/JavaScriptCore/wtf/BlockStack.h \
    508512        Source/JavaScriptCore/wtf/BloomFilter.h \
     
    521525        Source/JavaScriptCore/wtf/DecimalNumber.cpp \
    522526        Source/JavaScriptCore/wtf/DecimalNumber.h \
    523         Source/JavaScriptCore/wtf/dtoa/bignum-dtoa.cc \
    524         Source/JavaScriptCore/wtf/dtoa/bignum.cc \
    525         Source/JavaScriptCore/wtf/dtoa/cached-powers.cc \
    526         Source/JavaScriptCore/wtf/dtoa/diy-fp.cc \
    527         Source/JavaScriptCore/wtf/dtoa/double-conversion.cc \
    528         Source/JavaScriptCore/wtf/dtoa/fast-dtoa.cc \
    529         Source/JavaScriptCore/wtf/dtoa/fixed-dtoa.cc \
    530         Source/JavaScriptCore/wtf/dtoa/strtod.cc \
    531         Source/JavaScriptCore/wtf/dtoa/bignum-dtoa.h \
    532         Source/JavaScriptCore/wtf/dtoa/bignum.h \
    533         Source/JavaScriptCore/wtf/dtoa/cached-powers.h \
    534         Source/JavaScriptCore/wtf/dtoa/diy-fp.h \
    535         Source/JavaScriptCore/wtf/dtoa/double-conversion.h \
    536         Source/JavaScriptCore/wtf/dtoa/double.h \
    537         Source/JavaScriptCore/wtf/dtoa/fast-dtoa.h \
    538         Source/JavaScriptCore/wtf/dtoa/fixed-dtoa.h \
    539         Source/JavaScriptCore/wtf/dtoa/strtod.h \
    540         Source/JavaScriptCore/wtf/dtoa/utils.h \
    541527        Source/JavaScriptCore/wtf/Decoder.h \
    542528        Source/JavaScriptCore/wtf/Deque.h \
     
    545531        Source/JavaScriptCore/wtf/dtoa.cpp \
    546532        Source/JavaScriptCore/wtf/dtoa.h \
     533        Source/JavaScriptCore/wtf/dtoa/bignum-dtoa.cc \
     534        Source/JavaScriptCore/wtf/dtoa/bignum-dtoa.h \
     535        Source/JavaScriptCore/wtf/dtoa/bignum.cc \
     536        Source/JavaScriptCore/wtf/dtoa/bignum.h \
     537        Source/JavaScriptCore/wtf/dtoa/cached-powers.cc \
     538        Source/JavaScriptCore/wtf/dtoa/cached-powers.h \
     539        Source/JavaScriptCore/wtf/dtoa/diy-fp.cc \
     540        Source/JavaScriptCore/wtf/dtoa/diy-fp.h \
     541        Source/JavaScriptCore/wtf/dtoa/double-conversion.cc \
     542        Source/JavaScriptCore/wtf/dtoa/double-conversion.h \
     543        Source/JavaScriptCore/wtf/dtoa/double.h \
     544        Source/JavaScriptCore/wtf/dtoa/fast-dtoa.cc \
     545        Source/JavaScriptCore/wtf/dtoa/fast-dtoa.h \
     546        Source/JavaScriptCore/wtf/dtoa/fixed-dtoa.cc \
     547        Source/JavaScriptCore/wtf/dtoa/fixed-dtoa.h \
     548        Source/JavaScriptCore/wtf/dtoa/strtod.cc \
     549        Source/JavaScriptCore/wtf/dtoa/strtod.h \
     550        Source/JavaScriptCore/wtf/dtoa/utils.h \
    547551        Source/JavaScriptCore/wtf/DynamicAnnotations.cpp \
    548552        Source/JavaScriptCore/wtf/DynamicAnnotations.h \
     
    552556        Source/JavaScriptCore/wtf/FastMalloc.h \
    553557        Source/JavaScriptCore/wtf/FixedArray.h \
     558        Source/JavaScriptCore/wtf/Float32Array.h \
     559        Source/JavaScriptCore/wtf/Float64Array.h \
    554560        Source/JavaScriptCore/wtf/Forward.h \
    555561        Source/JavaScriptCore/wtf/GetPtr.h \
     
    570576        Source/JavaScriptCore/wtf/HexNumber.h \
    571577        Source/JavaScriptCore/wtf/InlineASM.h \
     578        Source/JavaScriptCore/wtf/Int16Array.h \
     579        Source/JavaScriptCore/wtf/Int32Array.h \
     580        Source/JavaScriptCore/wtf/Int8Array.h \
     581        Source/JavaScriptCore/wtf/IntegralTypedArrayBase.h \
    572582        Source/JavaScriptCore/wtf/ListHashSet.h \
    573583        Source/JavaScriptCore/wtf/ListRefPtr.h \
     
    579589        Source/JavaScriptCore/wtf/MD5.cpp \
    580590        Source/JavaScriptCore/wtf/MD5.h \
     591        Source/JavaScriptCore/wtf/MessageQueue.h \
    581592        Source/JavaScriptCore/wtf/MetaAllocator.cpp \
    582593        Source/JavaScriptCore/wtf/MetaAllocator.h \
    583594        Source/JavaScriptCore/wtf/MetaAllocatorHandle.h \
    584         Source/JavaScriptCore/wtf/MessageQueue.h \
     595        Source/JavaScriptCore/wtf/Noncopyable.h \
    585596        Source/JavaScriptCore/wtf/NonCopyingSort.h \
    586         Source/JavaScriptCore/wtf/Noncopyable.h \
    587597        Source/JavaScriptCore/wtf/NotFound.h \
    588598        Source/JavaScriptCore/wtf/NullPtr.h \
     
    592602        Source/JavaScriptCore/wtf/OwnArrayPtr.h \
    593603        Source/JavaScriptCore/wtf/OwnFastMallocPtr.h \
     604        Source/JavaScriptCore/wtf/OwnPtr.h \
    594605        Source/JavaScriptCore/wtf/OwnPtrCommon.h \
    595         Source/JavaScriptCore/wtf/OwnPtr.h \
    596606        Source/JavaScriptCore/wtf/PackedIntVector.h \
    597607        Source/JavaScriptCore/wtf/PageAllocation.h \
    598608        Source/JavaScriptCore/wtf/PageAllocationAligned.cpp \
    599609        Source/JavaScriptCore/wtf/PageAllocationAligned.h \
    600         Source/JavaScriptCore/wtf/PageReservation.h \
    601610        Source/JavaScriptCore/wtf/PageBlock.cpp \
    602611        Source/JavaScriptCore/wtf/PageBlock.h \
    603         Source/JavaScriptCore/wtf/PassOwnArrayPtr.h \
    604         Source/JavaScriptCore/wtf/PassOwnPtr.h \
    605         Source/JavaScriptCore/wtf/PassRefPtr.h \
    606         Source/JavaScriptCore/wtf/PassTraits.h \
     612        Source/JavaScriptCore/wtf/PageReservation.h \
    607613        Source/JavaScriptCore/wtf/ParallelJobs.h \
    608614        Source/JavaScriptCore/wtf/ParallelJobsGeneric.cpp \
     
    610616        Source/JavaScriptCore/wtf/ParallelJobsLibdispatch.h \
    611617        Source/JavaScriptCore/wtf/ParallelJobsOpenMP.h \
     618        Source/JavaScriptCore/wtf/PassOwnArrayPtr.h \
     619        Source/JavaScriptCore/wtf/PassOwnPtr.h \
     620        Source/JavaScriptCore/wtf/PassRefPtr.h \
     621        Source/JavaScriptCore/wtf/PassTraits.h \
    612622        Source/JavaScriptCore/wtf/Platform.h \
    613623        Source/JavaScriptCore/wtf/PossiblyNull.h \
     
    657667        Source/JavaScriptCore/wtf/text/WTFString.cpp \
    658668        Source/JavaScriptCore/wtf/text/WTFString.h \
    659         Source/JavaScriptCore/wtf/threads/BinarySemaphore.cpp \
    660         Source/JavaScriptCore/wtf/threads/BinarySemaphore.h \
    661669        Source/JavaScriptCore/wtf/ThreadIdentifierDataPthreads.cpp \
    662670        Source/JavaScriptCore/wtf/ThreadIdentifierDataPthreads.h \
    663         Source/JavaScriptCore/wtf/ThreadRestrictionVerifier.h \
    664671        Source/JavaScriptCore/wtf/Threading.cpp \
    665672        Source/JavaScriptCore/wtf/Threading.h \
    666673        Source/JavaScriptCore/wtf/ThreadingPrimitives.h \
    667674        Source/JavaScriptCore/wtf/ThreadingPthreads.cpp \
     675        Source/JavaScriptCore/wtf/ThreadRestrictionVerifier.h \
     676        Source/JavaScriptCore/wtf/threads/BinarySemaphore.cpp \
     677        Source/JavaScriptCore/wtf/threads/BinarySemaphore.h \
    668678        Source/JavaScriptCore/wtf/ThreadSafeRefCounted.h \
    669679        Source/JavaScriptCore/wtf/ThreadSpecific.h \
     680        Source/JavaScriptCore/wtf/TypedArrayBase.h \
    670681        Source/JavaScriptCore/wtf/TypeTraits.cpp \
    671682        Source/JavaScriptCore/wtf/TypeTraits.h \
    672         Source/JavaScriptCore/wtf/UnionFind.h \
     683        Source/JavaScriptCore/wtf/Uint16Array.h \
     684        Source/JavaScriptCore/wtf/Uint32Array.h \
     685        Source/JavaScriptCore/wtf/Uint8Array.h \
    673686        Source/JavaScriptCore/wtf/unicode/CharacterNames.h \
     687        Source/JavaScriptCore/wtf/unicode/Collator.h \
    674688        Source/JavaScriptCore/wtf/unicode/CollatorDefault.cpp \
    675         Source/JavaScriptCore/wtf/unicode/Collator.h \
    676689        Source/JavaScriptCore/wtf/unicode/Unicode.h \
    677690        Source/JavaScriptCore/wtf/unicode/UTF8.cpp \
    678691        Source/JavaScriptCore/wtf/unicode/UTF8.h \
     692        Source/JavaScriptCore/wtf/UnionFind.h \
    679693        Source/JavaScriptCore/wtf/UnusedParam.h \
    680694        Source/JavaScriptCore/wtf/ValueCheck.h \
  • trunk/Source/JavaScriptCore/JavaScriptCore.exp

    r101056 r101295  
    424424__ZN3WTF14numberToStringEdPc
    425425__ZN3WTF14tryFastReallocEPvm
     426__ZN3WTF15ArrayBufferView6neuterEv
     427__ZN3WTF15ArrayBufferViewC2ENS_10PassRefPtrINS_11ArrayBufferEEEj
     428__ZN3WTF15ArrayBufferViewD2Ev
    426429__ZN3WTF15ThreadCondition4waitERNS_5MutexE
    427430__ZN3WTF15ThreadCondition6signalEv
  • trunk/Source/JavaScriptCore/JavaScriptCore.gypi

    r100989 r101295  
    546546            'runtime/UString.cpp',
    547547            'runtime/UStringConcatenate.h',
     548            'wtf/ArrayBuffer.cpp',
     549            'wtf/ArrayBuffer.h',
     550            'wtf/ArrayBufferView.cpp',
     551            'wtf/ArrayBufferView.h',
    548552            'wtf/Assertions.cpp',
    549553            'wtf/ByteArray.cpp',
     
    555559            'wtf/DynamicAnnotations.h',
    556560            'wtf/FastMalloc.cpp',
     561            'wtf/Float32Array.h',
     562            'wtf/Float64Array.h',
    557563            'wtf/HashTable.cpp',
     564            'wtf/Int16Array.h',
     565            'wtf/Int32Array.h',
     566            'wtf/Int8Array.h',
     567            'wtf/IntegralTypedArrayBase.h',
    558568            'wtf/MD5.cpp',
    559569            'wtf/MainThread.cpp',
     
    588598            'wtf/ThreadingWin.cpp',
    589599            'wtf/TypeTraits.cpp',
    590             'wtf/WTFThreadData.cpp',
     600            'wtf/TypedArrayBase.h',
     601            'wtf/WTFThreadData.cpp'
     602            'wtf/Uint16Array.h',
     603            'wtf/Uint32Array.h',
     604            'wtf/Uint8Array.h',
    591605            'wtf/chromium/ChromiumThreading.h',
    592606            'wtf/chromium/MainThreadChromium.cpp',
  • trunk/Source/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTF.vcproj

    r98316 r101295  
    614614                </File>
    615615                <File
     616                        RelativePath="..\..\wtf\ArrayBuffer.cpp"
     617                        >
     618                </File>
     619                <File
     620                        RelativePath="..\..\wtf\ArrayBuffer.h"
     621                        >
     622                </File>
     623                <File
     624                        RelativePath="..\..\wtf\ArrayBufferView.cpp"
     625                        >
     626                </File>
     627                <File
     628                        RelativePath="..\..\wtf\ArrayBufferView.h"
     629                        >
     630                </File>
     631                <File
    616632                        RelativePath="..\..\wtf\ASCIICType.h"
    617633                        >
     
    727743                <File
    728744                        RelativePath="..\..\wtf\DynamicAnnotations.h"
     745                        >
     746                </File>
     747                <File
     748                        RelativePath="..\..\wtf\Float32Array.h"
     749                        >
     750                </File>
     751                <File
     752                        RelativePath="..\..\wtf\Float64Array.h"
    729753                        >
    730754                </File>
     
    834858                </File>
    835859                <File
     860                        RelativePath="..\..\wtf\Int16Array.h"
     861                        >
     862                </File>
     863                <File
     864                        RelativePath="..\..\wtf\Int32Array.h"
     865                        >
     866                </File>
     867                <File
     868                        RelativePath="..\..\wtf\Int8Array.h"
     869                        >
     870                </File>
     871                <File
    836872                        RelativePath="..\..\wtf\ListHashSet.h"
    837873                        >
     
    11551191                <File
    11561192                        RelativePath="..\..\wtf\TypeTraits.h"
     1193                        >
     1194                </File>
     1195                <File
     1196                        RelativePath="..\..\wtf\UInt16Array.h"
     1197                        >
     1198                </File>
     1199                <File
     1200                        RelativePath="..\..\wtf\UInt32Array.h"
     1201                        >
     1202                </File>
     1203                <File
     1204                        RelativePath="..\..\wtf\UInt8Array.h"
    11571205                        >
    11581206                </File>
  • trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj

    r100556 r101295  
    458458                A7386555118697B400540279 /* ThunkGenerators.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7386552118697B400540279 /* ThunkGenerators.cpp */; };
    459459                A7386556118697B400540279 /* ThunkGenerators.h in Headers */ = {isa = PBXBuildFile; fileRef = A7386553118697B400540279 /* ThunkGenerators.h */; settings = {ATTRIBUTES = (Private, ); }; };
     460                A73BE168148420520091204B /* ArrayBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A73BE154148420520091204B /* ArrayBuffer.cpp */; };
     461                A73BE169148420520091204B /* ArrayBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE155148420520091204B /* ArrayBuffer.h */; settings = {ATTRIBUTES = (Private, ); }; };
     462                A73BE16A148420520091204B /* ArrayBufferView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A73BE156148420520091204B /* ArrayBufferView.cpp */; };
     463                A73BE16B148420520091204B /* ArrayBufferView.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE157148420520091204B /* ArrayBufferView.h */; settings = {ATTRIBUTES = (Private, ); }; };
     464                A73BE16D148420520091204B /* Float32Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE159148420520091204B /* Float32Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     465                A73BE16F148420520091204B /* Float64Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE15B148420520091204B /* Float64Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     466                A73BE171148420520091204B /* Int8Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE15D148420520091204B /* Int8Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     467                A73BE173148420520091204B /* Int16Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE15F148420520091204B /* Int16Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     468                A73BE175148420520091204B /* Int32Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE161148420520091204B /* Int32Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     469                A73BE177148420520091204B /* Uint8Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE163148420520091204B /* Uint8Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     470                A73BE179148420520091204B /* Uint16Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE165148420520091204B /* Uint16Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     471                A73BE17B148420520091204B /* Uint32Array.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE167148420520091204B /* Uint32Array.h */; settings = {ATTRIBUTES = (Private, ); }; };
     472                A73BE17E148420840091204B /* TypedArrayBase.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE17D148420840091204B /* TypedArrayBase.h */; settings = {ATTRIBUTES = (Private, ); }; };
     473                A73BE180148420A80091204B /* IntegralTypedArrayBase.h in Headers */ = {isa = PBXBuildFile; fileRef = A73BE17F148420A80091204B /* IntegralTypedArrayBase.h */; settings = {ATTRIBUTES = (Private, ); }; };
    460474                A7482B9311671147003B0712 /* JSWeakObjectMapRefPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = A7482B791166CDEA003B0712 /* JSWeakObjectMapRefPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
    461475                A7482B9411671147003B0712 /* JSWeakObjectMapRefPrivate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7482B7A1166CDEA003B0712 /* JSWeakObjectMapRefPrivate.cpp */; };
     
    12661280                A7386552118697B400540279 /* ThunkGenerators.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ThunkGenerators.cpp; sourceTree = "<group>"; };
    12671281                A7386553118697B400540279 /* ThunkGenerators.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ThunkGenerators.h; sourceTree = "<group>"; };
     1282                A73BE154148420520091204B /* ArrayBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ArrayBuffer.cpp; sourceTree = "<group>"; };
     1283                A73BE155148420520091204B /* ArrayBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ArrayBuffer.h; sourceTree = "<group>"; };
     1284                A73BE156148420520091204B /* ArrayBufferView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ArrayBufferView.cpp; sourceTree = "<group>"; };
     1285                A73BE157148420520091204B /* ArrayBufferView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ArrayBufferView.h; sourceTree = "<group>"; };
     1286                A73BE159148420520091204B /* Float32Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Float32Array.h; sourceTree = "<group>"; };
     1287                A73BE15B148420520091204B /* Float64Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Float64Array.h; sourceTree = "<group>"; };
     1288                A73BE15D148420520091204B /* Int8Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Int8Array.h; sourceTree = "<group>"; };
     1289                A73BE15F148420520091204B /* Int16Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Int16Array.h; sourceTree = "<group>"; };
     1290                A73BE161148420520091204B /* Int32Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Int32Array.h; sourceTree = "<group>"; };
     1291                A73BE163148420520091204B /* Uint8Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Uint8Array.h; sourceTree = "<group>"; };
     1292                A73BE165148420520091204B /* Uint16Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Uint16Array.h; sourceTree = "<group>"; };
     1293                A73BE167148420520091204B /* Uint32Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Uint32Array.h; sourceTree = "<group>"; };
     1294                A73BE17D148420840091204B /* TypedArrayBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypedArrayBase.h; sourceTree = "<group>"; };
     1295                A73BE17F148420A80091204B /* IntegralTypedArrayBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IntegralTypedArrayBase.h; sourceTree = "<group>"; };
    12681296                A7482B791166CDEA003B0712 /* JSWeakObjectMapRefPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWeakObjectMapRefPrivate.h; sourceTree = "<group>"; };
    12691297                A7482B7A1166CDEA003B0712 /* JSWeakObjectMapRefPrivate.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSWeakObjectMapRefPrivate.cpp; sourceTree = "<group>"; };
     
    18631891                        isa = PBXGroup;
    18641892                        children = (
    1865                                 C22C524813FAF6EF00B7DC0D /* dtoa */,
    1866                                 06D358A00DAAD9C4003B174E /* mac */,
    1867                                 8656573E115BE35200291F40 /* text */,
    1868                                 1A082776142168D60090CCAC /* threads */,
    1869                                 E195678D09E7CF1200B89D13 /* unicode */,
    18701893                                A1D764511354448B00C5C7C0 /* Alignment.h */,
    18711894                                93AA4F770957251F0084B3A7 /* AlwaysInline.h */,
     1895                                A73BE154148420520091204B /* ArrayBuffer.cpp */,
     1896                                A73BE155148420520091204B /* ArrayBuffer.h */,
     1897                                A73BE156148420520091204B /* ArrayBufferView.cpp */,
     1898                                A73BE157148420520091204B /* ArrayBufferView.h */,
    18721899                                938C4F690CA06BC700D9310A /* ASCIICType.h */,
    18731900                                65E217B808E7EECC0023E5F6 /* Assertions.cpp */,
     
    18751902                                BC5F7BBB11823B590052C02C /* Atomics.h */,
    18761903                                E1A596370DE3E1C300C17E37 /* AVLTree.h */,
     1904                                DD377CBB12072C18006A2517 /* Bitmap.h */,
    18771905                                0F16D724142C39A200CF784A /* BitVector.cpp */,
    18781906                                0FD82F491428069200179C94 /* BitVector.h */,
    1879                                 DD377CBB12072C18006A2517 /* Bitmap.h */,
    18801907                                A7C40C07130B057D00D002A1 /* BlockStack.h */,
    18811908                                E4D8CE9B12FC42E100BC9F5A /* BloomFilter.h */,
     
    18991926                                938C4F6B0CA06BCE00D9310A /* DisallowCType.h */,
    19001927                                14456A311314657800212CA3 /* DoublyLinkedList.h */,
     1928                                C22C524813FAF6EF00B7DC0D /* dtoa */,
    19011929                                651F6412039D5B5F0078395C /* dtoa.cpp */,
    19021930                                651F6413039D5B5F0078395C /* dtoa.h */,
     
    19081936                                65E217BA08E7EECC0023E5F6 /* FastMalloc.h */,
    19091937                                A7F19ECD11DD490900931E70 /* FixedArray.h */,
     1938                                A73BE159148420520091204B /* Float32Array.h */,
     1939                                A73BE15B148420520091204B /* Float64Array.h */,
    19101940                                935AF46909E9D9DB00ACD1D8 /* Forward.h */,
    19111941                                93B6A0DE0AA64DA40076DE27 /* GetPtr.h */,
     
    19201950                                7186A6E813100B57004479E1 /* HexNumber.h */,
    19211951                                8699AA60146A0E2B00E23A73 /* InlineASM.h */,
     1952                                A73BE15F148420520091204B /* Int16Array.h */,
     1953                                A73BE161148420520091204B /* Int32Array.h */,
     1954                                A73BE15D148420520091204B /* Int8Array.h */,
     1955                                A73BE17F148420A80091204B /* IntegralTypedArrayBase.h */,
    19221956                                657EB7450B708F540063461B /* ListHashSet.h */,
    19231957                                148A1626095D16BB00666D0D /* ListRefPtr.h */,
    19241958                                E1EE79270D6C964500FEA3BA /* Locker.h */,
     1959                                06D358A00DAAD9C4003B174E /* mac */,
    19251960                                06D358A20DAAD9C4003B174E /* MainThread.cpp */,
    19261961                                06D358A30DAAD9C4003B174E /* MainThread.h */,
     
    19922027                                6541BD7008E80A17002CBEE7 /* TCSystemAlloc.cpp */,
    19932028                                6541BD7108E80A17002CBEE7 /* TCSystemAlloc.h */,
     2029                                8656573E115BE35200291F40 /* text */,
    19942030                                18BAB52710DADFCD000D945B /* ThreadIdentifierDataPthreads.cpp */,
    19952031                                18BAB52810DADFCD000D945B /* ThreadIdentifierDataPthreads.h */,
     
    19992035                                E1EE793C0D6C9B9200FEA3BA /* ThreadingPthreads.cpp */,
    20002036                                0BAC949E1338728400CF135B /* ThreadRestrictionVerifier.h */,
     2037                                1A082776142168D60090CCAC /* threads */,
    20012038                                BC5F7BBD11823B590052C02C /* ThreadSafeRefCounted.h */,
    20022039                                E1B7C8BD0DA3A3360074B0DC /* ThreadSpecific.h */,
     2040                                A73BE17D148420840091204B /* TypedArrayBase.h */,
    20032041                                0B330C260F38C62300692DE3 /* TypeTraits.cpp */,
    20042042                                0B4D7E620F319AC800AD7E58 /* TypeTraits.h */,
     2043                                A73BE165148420520091204B /* Uint16Array.h */,
     2044                                A73BE167148420520091204B /* Uint32Array.h */,
     2045                                A73BE163148420520091204B /* Uint8Array.h */,
     2046                                E195678D09E7CF1200B89D13 /* unicode */,
    20052047                                0FD52AAC1430359D0026DC9F /* UnionFind.h */,
    20062048                                935AF46B09E9D9DB00ACD1D8 /* UnusedParam.h */,
     
    29242966                                978801411471AD920041B016 /* JSDateMath.h in Headers */,
    29252967                                0F2C556F14738F3100121E4F /* DFGCodeBlocks.h in Headers */,
     2968                                A73BE169148420520091204B /* ArrayBuffer.h in Headers */,
     2969                                A73BE16B148420520091204B /* ArrayBufferView.h in Headers */,
     2970                                A73BE16D148420520091204B /* Float32Array.h in Headers */,
     2971                                A73BE16F148420520091204B /* Float64Array.h in Headers */,
     2972                                A73BE171148420520091204B /* Int8Array.h in Headers */,
     2973                                A73BE173148420520091204B /* Int16Array.h in Headers */,
     2974                                A73BE175148420520091204B /* Int32Array.h in Headers */,
     2975                                A73BE177148420520091204B /* Uint8Array.h in Headers */,
     2976                                A73BE179148420520091204B /* Uint16Array.h in Headers */,
     2977                                A73BE17B148420520091204B /* Uint32Array.h in Headers */,
     2978                                A73BE17E148420840091204B /* TypedArrayBase.h in Headers */,
     2979                                A73BE180148420A80091204B /* IntegralTypedArrayBase.h in Headers */,
    29262980                        );
    29272981                        runOnlyForDeploymentPostprocessing = 0;
     
    34593513                                978801401471AD920041B016 /* JSDateMath.cpp in Sources */,
    34603514                                0F2C557014738F3500121E4F /* DFGCodeBlocks.cpp in Sources */,
     3515                                A73BE168148420520091204B /* ArrayBuffer.cpp in Sources */,
     3516                                A73BE16A148420520091204B /* ArrayBufferView.cpp in Sources */,
    34613517                        );
    34623518                        runOnlyForDeploymentPostprocessing = 0;
  • trunk/Source/JavaScriptCore/wtf/ArrayBuffer.cpp

    r101294 r101295  
    11/*
    22 * Copyright (C) 2009 Apple Inc. All rights reserved.
    3  * Copyright (C) 2009 Google Inc. All rights reserved.
    43 *
    54 * Redistribution and use in source and binary forms, with or without
     
    2625
    2726#include "config.h"
    28 #include "Float32Array.h"
     27#include "ArrayBuffer.h"
     28
     29#include "ArrayBufferView.h"
     30
     31#include <wtf/RefPtr.h>
     32#include <wtf/Vector.h>
    2933
    3034namespace WTF {
    3135
    32 PassRefPtr<Float32Array> Float32Array::create(unsigned length)
     36bool ArrayBuffer::transfer(ArrayBufferContents& result, Vector<ArrayBufferView*>& neuteredViews)
    3337{
    34     return TypedArrayBase<float>::create<Float32Array>(length);
     38    RefPtr<ArrayBuffer> keepAlive(this);
     39
     40    if (!m_contents.m_data) {
     41        result.m_data = 0;
     42        return false;
     43    }
     44
     45    m_contents.transfer(result);
     46
     47    while (m_firstView) {
     48        ArrayBufferView* current = m_firstView;
     49        removeView(current);
     50        current->neuter();
     51        neuteredViews.append(current);
     52    }
     53    return true;
    3554}
    3655
    37 PassRefPtr<Float32Array> Float32Array::create(const float* array, unsigned length)
     56void ArrayBuffer::addView(ArrayBufferView* view)
    3857{
    39     return TypedArrayBase<float>::create<Float32Array>(array, length);
     58    view->m_buffer = this;
     59    view->m_prevView = 0;
     60    view->m_nextView = m_firstView;
     61    if (m_firstView)
     62        m_firstView->m_prevView = view;
     63    m_firstView = view;
    4064}
    4165
    42 PassRefPtr<Float32Array> Float32Array::create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     66void ArrayBuffer::removeView(ArrayBufferView* view)
    4367{
    44     return TypedArrayBase<float>::create<Float32Array>(buffer, byteOffset, length);
    45 }
    46 
    47 Float32Array::Float32Array(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
    48     : TypedArrayBase<float>(buffer, byteOffset, length)
    49 {
    50 }
    51 
    52 PassRefPtr<Float32Array> Float32Array::subarray(int start) const
    53 {
    54     return subarray(start, length());
    55 }
    56 
    57 PassRefPtr<Float32Array> Float32Array::subarray(int start, int end) const
    58 {
    59     return subarrayImpl<Float32Array>(start, end);
     68    ASSERT(this == view->m_buffer);
     69    if (view->m_nextView)
     70        view->m_nextView->m_prevView = view->m_prevView;
     71    if (view->m_prevView)
     72        view->m_prevView->m_nextView = view->m_nextView;
     73    if (m_firstView == view)
     74        m_firstView = view->m_nextView;
     75    view->m_prevView = view->m_nextView = 0;
    6076}
    6177
  • trunk/Source/JavaScriptCore/wtf/ArrayBuffer.h

    r101294 r101295  
    2424 */
    2525
    26 #include "config.h"
    27 #include "ArrayBuffer.h"
    28 #include "ArrayBufferView.h"
    29 
    30 #include <wtf/RefPtr.h>
     26#ifndef ArrayBuffer_h
     27#define ArrayBuffer_h
     28
     29#include <wtf/HashSet.h>
     30#include <wtf/PassRefPtr.h>
     31#include <wtf/RefCounted.h>
    3132#include <wtf/Vector.h>
    3233
    3334namespace WTF {
    3435
    35 static int clampValue(int x, int left, int right)
     36class ArrayBuffer;
     37class ArrayBufferView;
     38
     39class ArrayBufferContents {
     40    WTF_MAKE_NONCOPYABLE(ArrayBufferContents);
     41public:
     42    ArrayBufferContents()
     43        : m_data(0)
     44        , m_sizeInBytes(0)
     45    { }
     46
     47    inline ~ArrayBufferContents();
     48
     49    void* data() { return m_data; }
     50    unsigned sizeInBytes() { return m_sizeInBytes; }
     51
     52private:
     53    ArrayBufferContents(void* data, unsigned sizeInBytes)
     54        : m_data(data)
     55        , m_sizeInBytes(sizeInBytes)
     56    { }
     57
     58    friend class ArrayBuffer;
     59
     60    static inline void tryAllocate(unsigned numElements, unsigned elementByteSize, ArrayBufferContents&);
     61    void transfer(ArrayBufferContents& other)
     62    {
     63        ASSERT(!other.m_data);
     64        other.m_data = m_data;
     65        other.m_sizeInBytes = m_sizeInBytes;
     66        m_data = 0;
     67        m_sizeInBytes = 0;
     68    }
     69
     70    void* m_data;
     71    unsigned m_sizeInBytes;
     72};
     73
     74class ArrayBuffer : public RefCounted<ArrayBuffer> {
     75public:
     76    static inline PassRefPtr<ArrayBuffer> create(unsigned numElements, unsigned elementByteSize);
     77    static inline PassRefPtr<ArrayBuffer> create(ArrayBuffer*);
     78    static inline PassRefPtr<ArrayBuffer> create(const void* source, unsigned byteLength);
     79    static inline PassRefPtr<ArrayBuffer> create(ArrayBufferContents&);
     80
     81    inline void* data();
     82    inline const void* data() const;
     83    inline unsigned byteLength() const;
     84
     85    inline PassRefPtr<ArrayBuffer> slice(int begin, int end) const;
     86    inline PassRefPtr<ArrayBuffer> slice(int begin) const;
     87
     88    void addView(ArrayBufferView*);
     89    void removeView(ArrayBufferView*);
     90
     91    bool transfer(ArrayBufferContents&, Vector<ArrayBufferView*>& neuteredViews);
     92
     93    ~ArrayBuffer() { }
     94
     95private:
     96    inline ArrayBuffer(ArrayBufferContents&);
     97    inline PassRefPtr<ArrayBuffer> sliceImpl(unsigned begin, unsigned end) const;
     98    inline unsigned clampIndex(int index) const;
     99    static inline int clampValue(int x, int left, int right);
     100
     101    ArrayBufferContents m_contents;
     102    ArrayBufferView* m_firstView;
     103};
     104
     105int ArrayBuffer::clampValue(int x, int left, int right)
    36106{
    37107    ASSERT(left <= right);
     
    116186        index = currentLength + index;
    117187    return clampValue(index, 0, currentLength);
    118 }
    119 
    120 bool ArrayBuffer::transfer(ArrayBufferContents& result, Vector<ArrayBufferView*>& neuteredViews)
    121 {
    122     RefPtr<ArrayBuffer> keepAlive(this);
    123 
    124     if (!m_contents.m_data) {
    125         result.m_data = 0;
    126         return false;
    127     }
    128 
    129     m_contents.transfer(result);
    130 
    131     while (m_firstView) {
    132         ArrayBufferView* current = m_firstView;
    133         removeView(current);
    134         current->neuter();
    135         neuteredViews.append(current);
    136     }
    137     return true;
    138 }
    139 
    140 ArrayBufferContents::~ArrayBufferContents()
    141 {
    142     WTF::fastFree(m_data);
    143188}
    144189
     
    163208}
    164209
    165 void ArrayBuffer::addView(ArrayBufferView* view)
    166 {
    167     view->m_buffer = this;
    168     view->m_prevView = 0;
    169     view->m_nextView = m_firstView;
    170     if (m_firstView)
    171         m_firstView->m_prevView = view;
    172     m_firstView = view;
    173 }
    174 
    175 void ArrayBuffer::removeView(ArrayBufferView* view)
    176 {
    177     ASSERT(this == view->m_buffer);
    178     if (view->m_nextView)
    179         view->m_nextView->m_prevView = view->m_prevView;
    180     if (view->m_prevView)
    181         view->m_prevView->m_nextView = view->m_nextView;
    182     if (m_firstView == view)
    183         m_firstView = view->m_nextView;
    184     view->m_prevView = view->m_nextView = 0;
    185 }
    186 
    187 }
     210ArrayBufferContents::~ArrayBufferContents()
     211{
     212    WTF::fastFree(m_data);
     213}
     214
     215} // namespace WTF
     216
     217using WTF::ArrayBuffer;
     218
     219#endif // ArrayBuffer_h
  • trunk/Source/JavaScriptCore/wtf/ArrayBufferView.cpp

    r101294 r101295  
    11/*
    2  * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
    3  * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
     2 * Copyright (C) 2009 Apple Inc. All rights reserved.
    43 *
    54 * Redistribution and use in source and binary forms, with or without
     
    2524 */
    2625
    27 #import <WebCore/DOMArrayBufferView.h>
     26#include "config.h"
     27#include "ArrayBufferView.h"
    2828
    29 #if WEBKIT_VERSION_MAX_ALLOWED >= WEBKIT_VERSION_LATEST
     29#include "ArrayBuffer.h"
    3030
    31 @interface DOMFloat64Array : DOMArrayBufferView
    32 @end
     31namespace WTF {
    3332
    34 #endif
     33ArrayBufferView::ArrayBufferView(PassRefPtr<ArrayBuffer> buffer,
     34                       unsigned byteOffset)
     35        : m_byteOffset(byteOffset)
     36        , m_buffer(buffer)
     37{
     38    m_baseAddress = m_buffer ? (static_cast<char*>(m_buffer->data()) + m_byteOffset) : 0;
     39    if (m_buffer)
     40        m_buffer->addView(this);
     41}
     42
     43ArrayBufferView::~ArrayBufferView()
     44{
     45    if (m_buffer)
     46        m_buffer->removeView(this);
     47}
     48
     49void ArrayBufferView::neuter()
     50{
     51    m_buffer = 0;
     52    m_byteOffset = 0;
     53}
     54
     55}
  • trunk/Source/JavaScriptCore/wtf/ArrayBufferView.h

    r101294 r101295  
    6969
    7070  protected:
    71     ArrayBufferView(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset);
     71    ArrayBufferView(PassRefPtr<ArrayBuffer>, unsigned byteOffset);
    7272
    73     bool setImpl(ArrayBufferView*, unsigned byteOffset);
     73    inline bool setImpl(ArrayBufferView*, unsigned byteOffset);
    7474
    75     bool setRangeImpl(const char* data, size_t dataByteLength, unsigned byteOffset);
     75    inline bool setRangeImpl(const char* data, size_t dataByteLength, unsigned byteOffset);
    7676
    77     bool zeroRangeImpl(unsigned byteOffset, size_t rangeByteLength);
     77    inline bool zeroRangeImpl(unsigned byteOffset, size_t rangeByteLength);
    7878
    79     static void calculateOffsetAndLength(int start, int end, unsigned arraySize,
     79    static inline void calculateOffsetAndLength(int start, int end, unsigned arraySize,
    8080                                         unsigned* offset, unsigned* length);
    8181
     
    133133};
    134134
     135bool ArrayBufferView::setImpl(ArrayBufferView* array, unsigned byteOffset)
     136{
     137    if (byteOffset > byteLength()
     138        || byteOffset + array->byteLength() > byteLength()
     139        || byteOffset + array->byteLength() < byteOffset) {
     140        // Out of range offset or overflow
     141        return false;
     142    }
     143   
     144    char* base = static_cast<char*>(baseAddress());
     145    memmove(base + byteOffset, array->baseAddress(), array->byteLength());
     146    return true;
     147}
     148
     149bool ArrayBufferView::setRangeImpl(const char* data, size_t dataByteLength, unsigned byteOffset)
     150{
     151    if (byteOffset > byteLength()
     152        || byteOffset + dataByteLength > byteLength()
     153        || byteOffset + dataByteLength < byteOffset) {
     154        // Out of range offset or overflow
     155        return false;
     156    }
     157   
     158    char* base = static_cast<char*>(baseAddress());
     159    memmove(base + byteOffset, data, dataByteLength);
     160    return true;
     161}
     162
     163bool ArrayBufferView::zeroRangeImpl(unsigned byteOffset, size_t rangeByteLength)
     164{
     165    if (byteOffset > byteLength()
     166        || byteOffset + rangeByteLength > byteLength()
     167        || byteOffset + rangeByteLength < byteOffset) {
     168        // Out of range offset or overflow
     169        return false;
     170    }
     171   
     172    char* base = static_cast<char*>(baseAddress());
     173    memset(base + byteOffset, 0, rangeByteLength);
     174    return true;
     175}
     176
     177void ArrayBufferView::calculateOffsetAndLength(int start, int end, unsigned arraySize,
     178                                               unsigned* offset, unsigned* length)
     179{
     180    if (start < 0)
     181        start += arraySize;
     182    if (start < 0)
     183        start = 0;
     184    if (end < 0)
     185        end += arraySize;
     186    if (end < 0)
     187        end = 0;
     188    if (end < start)
     189        end = start;
     190    *offset = static_cast<unsigned>(start);
     191    *length = static_cast<unsigned>(end - start);
     192}
     193
    135194} // namespace WTF
    136195
  • trunk/Source/JavaScriptCore/wtf/CMakeLists.txt

    r101052 r101295  
    44    Alignment.h
    55    AlwaysInline.h
     6    ArrayBuffer.cpp
     7    ArrayBufferView.cpp
    68    Assertions.h
    79    Atomics.h
  • trunk/Source/JavaScriptCore/wtf/Float32Array.h

    r101294 r101295  
    3535class Float32Array : public TypedArrayBase<float> {
    3636public:
    37     static PassRefPtr<Float32Array> create(unsigned length);
    38     static PassRefPtr<Float32Array> create(const float* array, unsigned length);
    39     static PassRefPtr<Float32Array> create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length);
     37    static inline PassRefPtr<Float32Array> create(unsigned length);
     38    static inline PassRefPtr<Float32Array> create(const float* array, unsigned length);
     39    static inline PassRefPtr<Float32Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
    4040
    4141    // Can’t use "using" here due to a bug in the RVCT compiler.
     
    5858    }
    5959
    60     PassRefPtr<Float32Array> subarray(int start) const;
    61     PassRefPtr<Float32Array> subarray(int start, int end) const;
     60    inline PassRefPtr<Float32Array> subarray(int start) const;
     61    inline PassRefPtr<Float32Array> subarray(int start, int end) const;
    6262
    6363private:
    64     Float32Array(PassRefPtr<ArrayBuffer> buffer,
     64    inline Float32Array(PassRefPtr<ArrayBuffer>,
    6565                    unsigned byteOffset,
    6666                    unsigned length);
     
    7272};
    7373
     74PassRefPtr<Float32Array> Float32Array::create(unsigned length)
     75{
     76    return TypedArrayBase<float>::create<Float32Array>(length);
     77}
     78
     79PassRefPtr<Float32Array> Float32Array::create(const float* array, unsigned length)
     80{
     81    return TypedArrayBase<float>::create<Float32Array>(array, length);
     82}
     83
     84PassRefPtr<Float32Array> Float32Array::create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     85{
     86    return TypedArrayBase<float>::create<Float32Array>(buffer, byteOffset, length);
     87}
     88
     89Float32Array::Float32Array(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     90    : TypedArrayBase<float>(buffer, byteOffset, length)
     91{
     92}
     93
     94PassRefPtr<Float32Array> Float32Array::subarray(int start) const
     95{
     96    return subarray(start, length());
     97}
     98
     99PassRefPtr<Float32Array> Float32Array::subarray(int start, int end) const
     100{
     101    return subarrayImpl<Float32Array>(start, end);
     102}
     103
    74104} // namespace WTF
    75105
  • trunk/Source/JavaScriptCore/wtf/Float64Array.h

    r101294 r101295  
    3535class Float64Array : public TypedArrayBase<double> {
    3636public:
    37     static PassRefPtr<Float64Array> create(unsigned length);
    38     static PassRefPtr<Float64Array> create(const double* array, unsigned length);
    39     static PassRefPtr<Float64Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
     37    static inline PassRefPtr<Float64Array> create(unsigned length);
     38    static inline PassRefPtr<Float64Array> create(const double* array, unsigned length);
     39    static inline PassRefPtr<Float64Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
    4040
    4141    // Can’t use "using" here due to a bug in the RVCT compiler.
     
    5858    }
    5959
    60     PassRefPtr<Float64Array> subarray(int start) const;
    61     PassRefPtr<Float64Array> subarray(int start, int end) const;
     60    inline PassRefPtr<Float64Array> subarray(int start) const;
     61    inline PassRefPtr<Float64Array> subarray(int start, int end) const;
    6262
    6363private:
    64     Float64Array(PassRefPtr<ArrayBuffer>,
     64    inline Float64Array(PassRefPtr<ArrayBuffer>,
    6565                 unsigned byteOffset,
    6666                 unsigned length);
     
    7272};
    7373
     74PassRefPtr<Float64Array> Float64Array::create(unsigned length)
     75{
     76    return TypedArrayBase<double>::create<Float64Array>(length);
     77}
     78
     79PassRefPtr<Float64Array> Float64Array::create(const double* array, unsigned length)
     80{
     81    return TypedArrayBase<double>::create<Float64Array>(array, length);
     82}
     83
     84PassRefPtr<Float64Array> Float64Array::create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     85{
     86    return TypedArrayBase<double>::create<Float64Array>(buffer, byteOffset, length);
     87}
     88
     89Float64Array::Float64Array(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     90    : TypedArrayBase<double>(buffer, byteOffset, length)
     91{
     92}
     93
     94PassRefPtr<Float64Array> Float64Array::subarray(int start) const
     95{
     96    return subarray(start, length());
     97}
     98
     99PassRefPtr<Float64Array> Float64Array::subarray(int start, int end) const
     100{
     101    return subarrayImpl<Float64Array>(start, end);
     102}
     103
    74104} // namespace WTF
    75105
  • trunk/Source/JavaScriptCore/wtf/Int16Array.h

    r101294 r101295  
    2424 */
    2525
    26 #include "config.h"
    27 #include "Int16Array.h"
     26#ifndef Int16Array_h
     27#define Int16Array_h
     28
     29#include "IntegralTypedArrayBase.h"
    2830
    2931namespace WTF {
     32
     33class ArrayBuffer;
     34
     35class Int16Array : public IntegralTypedArrayBase<short> {
     36public:
     37    static inline PassRefPtr<Int16Array> create(unsigned length);
     38    static inline PassRefPtr<Int16Array> create(short* array, unsigned length);
     39    static inline PassRefPtr<Int16Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
     40
     41    // Can’t use "using" here due to a bug in the RVCT compiler.
     42    bool set(TypedArrayBase<short>* array, unsigned offset) { return TypedArrayBase<short>::set(array, offset); }
     43    void set(unsigned index, double value) { IntegralTypedArrayBase<short>::set(index, value); }
     44
     45    inline PassRefPtr<Int16Array> subarray(int start) const;
     46    inline PassRefPtr<Int16Array> subarray(int start, int end) const;
     47
     48private:
     49    inline Int16Array(PassRefPtr<ArrayBuffer>,
     50                    unsigned byteOffset,
     51                    unsigned length);
     52    // Make constructor visible to superclass.
     53    friend class TypedArrayBase<short>;
     54
     55    // Overridden from ArrayBufferView.
     56    virtual bool isShortArray() const { return true; }
     57};
    3058
    3159PassRefPtr<Int16Array> Int16Array::create(unsigned length)
     
    5987}
    6088
    61 }
     89} // namespace WTF
     90
     91using WTF::Int16Array;
     92
     93#endif // Int16Array_h
  • trunk/Source/JavaScriptCore/wtf/Int32Array.h

    r101294 r101295  
    2525 */
    2626
    27 #include "config.h"
    28 #include "Int32Array.h"
     27#ifndef Int32Array_h
     28#define Int32Array_h
     29
     30#include "IntegralTypedArrayBase.h"
    2931
    3032namespace WTF {
     33
     34class Int32Array : public IntegralTypedArrayBase<int> {
     35public:
     36    static inline PassRefPtr<Int32Array> create(unsigned length);
     37    static inline PassRefPtr<Int32Array> create(int* array, unsigned length);
     38    static inline PassRefPtr<Int32Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
     39
     40    // Can’t use "using" here due to a bug in the RVCT compiler.
     41    bool set(TypedArrayBase<int>* array, unsigned offset) { return TypedArrayBase<int>::set(array, offset); }
     42    void set(unsigned index, double value) { IntegralTypedArrayBase<int>::set(index, value); }
     43
     44    inline PassRefPtr<Int32Array> subarray(int start) const;
     45    inline PassRefPtr<Int32Array> subarray(int start, int end) const;
     46
     47private:
     48    inline Int32Array(PassRefPtr<ArrayBuffer>,
     49                  unsigned byteOffset,
     50                  unsigned length);
     51    // Make constructor visible to superclass.
     52    friend class TypedArrayBase<int>;
     53
     54    // Overridden from ArrayBufferView.
     55    virtual bool isIntArray() const { return true; }
     56};
    3157
    3258PassRefPtr<Int32Array> Int32Array::create(unsigned length)
     
    6086}
    6187
    62 }
     88} // namespace WTF
     89
     90using WTF::Int32Array;
     91
     92#endif // Int32Array_h
  • trunk/Source/JavaScriptCore/wtf/Int8Array.h

    r101294 r101295  
    2525 */
    2626
    27 #include "config.h"
    28 #include "Int8Array.h"
     27#ifndef Int8Array_h
     28#define Int8Array_h
     29
     30#include "IntegralTypedArrayBase.h"
    2931
    3032namespace WTF {
     33
     34class ArrayBuffer;
     35
     36class Int8Array : public IntegralTypedArrayBase<signed char> {
     37public:
     38    static inline PassRefPtr<Int8Array> create(unsigned length);
     39    static inline PassRefPtr<Int8Array> create(signed char* array, unsigned length);
     40    static inline PassRefPtr<Int8Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
     41
     42    // Can’t use "using" here due to a bug in the RVCT compiler.
     43    bool set(TypedArrayBase<signed char>* array, unsigned offset) { return TypedArrayBase<signed char>::set(array, offset); }
     44    void set(unsigned index, double value) { IntegralTypedArrayBase<signed char>::set(index, value); }
     45
     46    inline PassRefPtr<Int8Array> subarray(int start) const;
     47    inline PassRefPtr<Int8Array> subarray(int start, int end) const;
     48
     49private:
     50    inline Int8Array(PassRefPtr<ArrayBuffer>,
     51                   unsigned byteOffset,
     52                   unsigned length);
     53    // Make constructor visible to superclass.
     54    friend class TypedArrayBase<signed char>;
     55
     56    // Overridden from ArrayBufferView.
     57    virtual bool isByteArray() const { return true; }
     58};
    3159
    3260PassRefPtr<Int8Array> Int8Array::create(unsigned length)
     
    6088}
    6189
    62 }
     90} // namespace WTF
     91
     92using WTF::Int8Array;
     93
     94#endif // Int8Array_h
  • trunk/Source/JavaScriptCore/wtf/Uint16Array.h

    r101294 r101295  
    2525 */
    2626
    27 #include "config.h"
    28 #include "Uint16Array.h"
     27#ifndef Uint16Array_h
     28#define Uint16Array_h
     29
     30#include "IntegralTypedArrayBase.h"
    2931
    3032namespace WTF {
     33
     34class ArrayBuffer;
     35
     36class Uint16Array : public IntegralTypedArrayBase<unsigned short> {
     37public:
     38    static inline PassRefPtr<Uint16Array> create(unsigned length);
     39    static inline PassRefPtr<Uint16Array> create(unsigned short* array, unsigned length);
     40    static inline PassRefPtr<Uint16Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
     41
     42    // Can’t use "using" here due to a bug in the RVCT compiler.
     43    bool set(TypedArrayBase<unsigned short>* array, unsigned offset) { return TypedArrayBase<unsigned short>::set(array, offset); }
     44    void set(unsigned index, double value) { IntegralTypedArrayBase<unsigned short>::set(index, value); }
     45
     46    inline PassRefPtr<Uint16Array> subarray(int start) const;
     47    inline PassRefPtr<Uint16Array> subarray(int start, int end) const;
     48
     49private:
     50    inline Uint16Array(PassRefPtr<ArrayBuffer>,
     51                            unsigned byteOffset,
     52                            unsigned length);
     53    // Make constructor visible to superclass.
     54    friend class TypedArrayBase<unsigned short>;
     55
     56    // Overridden from ArrayBufferView.
     57    virtual bool isUnsignedShortArray() const { return true; }
     58};
    3159
    3260PassRefPtr<Uint16Array> Uint16Array::create(unsigned length)
     
    6088}
    6189
    62 }
     90} // namespace WTF
     91
     92using WTF::Uint16Array;
     93
     94#endif // Uint16Array_h
  • trunk/Source/JavaScriptCore/wtf/Uint32Array.h

    r101294 r101295  
    2525 */
    2626
    27 #include "config.h"
    28 #include "Uint32Array.h"
     27#ifndef Uint32Array_h
     28#define Uint32Array_h
     29
     30#include "IntegralTypedArrayBase.h"
    2931
    3032namespace WTF {
     33
     34class ArrayBuffer;
     35
     36class Uint32Array : public IntegralTypedArrayBase<unsigned int> {
     37public:
     38    static inline PassRefPtr<Uint32Array> create(unsigned length);
     39    static inline PassRefPtr<Uint32Array> create(unsigned int* array, unsigned length);
     40    static inline PassRefPtr<Uint32Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
     41
     42    // Can’t use "using" here due to a bug in the RVCT compiler.
     43    bool set(TypedArrayBase<unsigned int>* array, unsigned offset) { return TypedArrayBase<unsigned int>::set(array, offset); }
     44    void set(unsigned index, double value) { IntegralTypedArrayBase<unsigned int>::set(index, value); }
     45
     46    inline PassRefPtr<Uint32Array> subarray(int start) const;
     47    inline PassRefPtr<Uint32Array> subarray(int start, int end) const;
     48
     49private:
     50    inline Uint32Array(PassRefPtr<ArrayBuffer>,
     51                          unsigned byteOffset,
     52                          unsigned length);
     53    // Make constructor visible to superclass.
     54    friend class TypedArrayBase<unsigned int>;
     55
     56    // Overridden from ArrayBufferView.
     57    virtual bool isUnsignedIntArray() const { return true; }
     58};
    3159
    3260PassRefPtr<Uint32Array> Uint32Array::create(unsigned length)
     
    6088}
    6189
    62 }
     90} // namespace WTF
     91
     92using WTF::Uint32Array;
     93
     94#endif // Uint32Array_h
  • trunk/Source/JavaScriptCore/wtf/Uint8Array.h

    r101294 r101295  
    3636class Uint8Array : public IntegralTypedArrayBase<unsigned char> {
    3737public:
    38     static PassRefPtr<Uint8Array> create(unsigned length);
    39     static PassRefPtr<Uint8Array> create(unsigned char* array, unsigned length);
    40     static PassRefPtr<Uint8Array> create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length);
     38    static inline PassRefPtr<Uint8Array> create(unsigned length);
     39    static inline PassRefPtr<Uint8Array> create(unsigned char* array, unsigned length);
     40    static inline PassRefPtr<Uint8Array> create(PassRefPtr<ArrayBuffer>, unsigned byteOffset, unsigned length);
    4141
    4242    // Can’t use "using" here due to a bug in the RVCT compiler.
     
    4444    void set(unsigned index, double value) { IntegralTypedArrayBase<unsigned char>::set(index, value); }
    4545
    46     PassRefPtr<Uint8Array> subarray(int start) const;
    47     PassRefPtr<Uint8Array> subarray(int start, int end) const;
     46    inline PassRefPtr<Uint8Array> subarray(int start) const;
     47    inline PassRefPtr<Uint8Array> subarray(int start, int end) const;
    4848
    4949private:
    50     Uint8Array(PassRefPtr<ArrayBuffer> buffer,
     50    inline Uint8Array(PassRefPtr<ArrayBuffer>,
    5151                           unsigned byteOffset,
    5252                           unsigned length);
     
    5858};
    5959
     60PassRefPtr<Uint8Array> Uint8Array::create(unsigned length)
     61{
     62    return TypedArrayBase<unsigned char>::create<Uint8Array>(length);
     63}
     64
     65PassRefPtr<Uint8Array> Uint8Array::create(unsigned char* array, unsigned length)
     66{
     67    return TypedArrayBase<unsigned char>::create<Uint8Array>(array, length);
     68}
     69
     70PassRefPtr<Uint8Array> Uint8Array::create(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     71{
     72    return TypedArrayBase<unsigned char>::create<Uint8Array>(buffer, byteOffset, length);
     73}
     74
     75Uint8Array::Uint8Array(PassRefPtr<ArrayBuffer> buffer, unsigned byteOffset, unsigned length)
     76: IntegralTypedArrayBase<unsigned char>(buffer, byteOffset, length)
     77{
     78}
     79
     80PassRefPtr<Uint8Array> Uint8Array::subarray(int start) const
     81{
     82    return subarray(start, length());
     83}
     84
     85PassRefPtr<Uint8Array> Uint8Array::subarray(int start, int end) const
     86{
     87    return subarrayImpl<Uint8Array>(start, end);
     88}
     89
    6090} // namespace WTF
    6191
  • trunk/Source/JavaScriptCore/wtf/wtf.pro

    r101247 r101295  
    2626    Alignment.h \
    2727    AlwaysInline.h \
     28    ArrayBuffer.h \
     29    ArrayBufferView.h \
    2830    ASCIICType.h \
    2931    Assertions.h \
     
    4547    Deque.h \
    4648    DisallowCType.h \
     49    dtoa.h \
    4750    dtoa/bignum-dtoa.h \
    4851    dtoa/bignum.h \
     
    5356    dtoa/fast-dtoa.h \
    5457    dtoa/fixed-dtoa.h \
    55     dtoa.h \
    5658    dtoa/strtod.h \
    5759    dtoa/utils.h \
     
    6163    FastMalloc.h \
    6264    FixedArray.h \
     65    Float32Array.h \
     66    Float64Array.h \
    6367    Forward.h \
    6468    GetPtr.h \
     
    7175    HashTraits.h \
    7276    HexNumber.h \
     77    Int16Array.h \
     78    Int32Array.h \
     79    Int8Array.h \
    7380    ListHashSet.h \
    7481    ListRefPtr.h \
     
    8996    OwnArrayPtr.h \
    9097    OwnFastMallocPtr.h \
     98    OwnPtr.h \
    9199    OwnPtrCommon.h \
    92     OwnPtr.h \
    93100    PackedIntVector.h \
     101    PageAllocation.h \
    94102    PageAllocationAligned.h \
    95     PageAllocation.h \
    96103    PageBlock.h \
    97104    PageReservation.h \
     105    ParallelJobs.h \
    98106    ParallelJobsGeneric.h \
    99     ParallelJobs.h \
    100107    ParallelJobsLibdispatch.h \
    101108    ParallelJobsOpenMP.h \
     
    143150    ThreadSpecific.h \
    144151    TypeTraits.h \
     152    Uint16Array.h \
     153    Uint32Array.h \
     154    Uint8Array.h \
    145155    unicode/CharacterNames.h \
    146156    unicode/Collator.h \
     
    158168    WTFThreadData.h
    159169
     170
    160171SOURCES += \
     172    ArrayBuffer.cpp \
     173    ArrayBufferView.cpp \
    161174    Assertions.cpp \
    162175    BitVector.cpp \
  • trunk/Source/WebCore/CMakeLists.txt

    r101288 r101295  
    824824    html/WeekInputType.cpp
    825825
    826     html/canvas/ArrayBuffer.cpp
    827     html/canvas/ArrayBufferView.cpp
    828826    html/canvas/CanvasContextAttributes.cpp
    829827    html/canvas/CanvasGradient.cpp
     
    834832    html/canvas/CanvasStyle.cpp
    835833    html/canvas/DataView.cpp
    836     html/canvas/Float32Array.cpp
    837     html/canvas/Float64Array.cpp
    838     html/canvas/Int16Array.cpp
    839     html/canvas/Int32Array.cpp
    840     html/canvas/Int8Array.cpp
    841     html/canvas/Uint16Array.cpp
    842     html/canvas/Uint32Array.cpp
    843     html/canvas/Uint8Array.cpp
    844834
    845835    html/parser/CSSPreloadScanner.cpp
  • trunk/Source/WebCore/ChangeLog

    r101292 r101295  
     12011-11-28  Oliver Hunt  <oliver@apple.com>
     2
     3        Move typed array implementations into wtf
     4        https://bugs.webkit.org/show_bug.cgi?id=73248
     5
     6        Reviewed by Sam Weinig.
     7
     8        Removed the typed array implementation files from WebCore and
     9        added forwarding headers.
     10
     11        * CMakeLists.txt:
     12        * ForwardingHeaders/wtf/ArrayBuffer.h: Added.
     13        * ForwardingHeaders/wtf/ArrayBufferView.h: Added.
     14        * ForwardingHeaders/wtf/Float32Array.h: Added.
     15        * ForwardingHeaders/wtf/Float64Array.h: Added.
     16        * ForwardingHeaders/wtf/Int16Array.h: Added.
     17        * ForwardingHeaders/wtf/Int32Array.h: Added.
     18        * ForwardingHeaders/wtf/Int8Array.h: Added.
     19        * ForwardingHeaders/wtf/Uint16Array.h: Added.
     20        * ForwardingHeaders/wtf/Uint32Array.h: Added.
     21        * ForwardingHeaders/wtf/Uint8Array.h: Added.
     22        * GNUmakefile.list.am:
     23        * Target.pri:
     24        * WebCore.vcproj/WebCore.vcproj:
     25        * WebCore.xcodeproj/project.pbxproj:
     26        * bindings/js/JSArrayBufferCustom.cpp:
     27        * bindings/js/JSArrayBufferViewHelper.h:
     28        * bindings/js/JSAudioContextCustom.cpp:
     29        * bindings/js/JSFileReaderCustom.cpp:
     30        * bindings/js/JSFloat32ArrayCustom.cpp:
     31        * bindings/js/JSFloat64ArrayCustom.cpp:
     32        * bindings/js/JSInt16ArrayCustom.cpp:
     33        * bindings/js/JSInt32ArrayCustom.cpp:
     34        * bindings/js/JSInt8ArrayCustom.cpp:
     35        * bindings/js/JSUint16ArrayCustom.cpp:
     36        * bindings/js/JSUint32ArrayCustom.cpp:
     37        * bindings/js/JSUint8ArrayCustom.cpp:
     38        * bindings/js/JSWaveShaperNodeCustom.cpp:
     39        * bindings/js/JSWebGLRenderingContextCustom.cpp:
     40        * bindings/js/JSXMLHttpRequestCustom.cpp:
     41        * bindings/scripts/CodeGeneratorJS.pm:
     42        (AddIncludesForType):
     43        (GenerateHeader):
     44        (NativeToJSValue):
     45        * bindings/scripts/test/JS/JSFloat64Array.cpp:
     46        * bindings/scripts/test/JS/JSFloat64Array.h:
     47        * dom/MessageEvent.h:
     48        * fileapi/FileReader.cpp:
     49        * fileapi/FileReaderLoader.cpp:
     50        * fileapi/FileReaderSync.cpp:
     51        * fileapi/WebKitBlobBuilder.cpp:
     52        * html/HTMLMediaElement.cpp:
     53        * html/canvas/ArrayBuffer.h: Removed.
     54        * html/canvas/ArrayBufferView.cpp: Removed.
     55        * html/canvas/DataView.h:
     56        * html/canvas/Float64Array.cpp: Removed.
     57        * html/canvas/Int16Array.h: Removed.
     58        * html/canvas/Int32Array.h: Removed.
     59        * html/canvas/Int8Array.h: Removed.
     60        * html/canvas/Uint16Array.h: Removed.
     61        * html/canvas/Uint32Array.h: Removed.
     62        * html/canvas/Uint8Array.cpp: Removed.
     63        * html/canvas/WebGLBuffer.cpp:
     64        * html/canvas/WebGLBuffer.h:
     65        * html/canvas/WebGLGetInfo.cpp:
     66        * html/canvas/WebGLGetInfo.h:
     67        * html/canvas/WebGLRenderingContext.cpp:
     68        * html/canvas/WebGLRenderingContext.h:
     69        * page/Crypto.cpp:
     70        * platform/graphics/GraphicsContext3D.cpp:
     71        * platform/graphics/mac/GraphicsContext3DMac.mm:
     72        * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
     73        * webaudio/AsyncAudioDecoder.cpp:
     74        * webaudio/AudioBuffer.h:
     75        * webaudio/AudioContext.cpp:
     76        * webaudio/AudioParam.h:
     77        * webaudio/AudioParamTimeline.h:
     78        * webaudio/JavaScriptAudioNode.cpp:
     79        * webaudio/RealtimeAnalyser.cpp:
     80        * webaudio/WaveShaperProcessor.h:
     81        * websockets/WebSocketChannel.cpp:
     82        * websockets/WorkerThreadableWebSocketChannel.cpp:
     83        * xml/XMLHttpRequest.cpp:
     84
    1852011-11-28  Robert Hogan  <robert@webkit.org>
    286
  • trunk/Source/WebCore/GNUmakefile.list.am

    r101288 r101295  
    16201620        Source/WebCore/html/ButtonInputType.cpp \
    16211621        Source/WebCore/html/ButtonInputType.h \
    1622         Source/WebCore/html/canvas/ArrayBuffer.cpp \
    1623         Source/WebCore/html/canvas/ArrayBuffer.h \
    1624         Source/WebCore/html/canvas/ArrayBufferView.cpp \
    1625         Source/WebCore/html/canvas/ArrayBufferView.h \
    16261622        Source/WebCore/html/canvas/CanvasContextAttributes.cpp \
    16271623        Source/WebCore/html/canvas/CanvasContextAttributes.h \
     
    16411637        Source/WebCore/html/canvas/DataView.cpp \
    16421638        Source/WebCore/html/canvas/DataView.h \
    1643         Source/WebCore/html/canvas/Float32Array.cpp \
    1644         Source/WebCore/html/canvas/Float32Array.h \
    1645         Source/WebCore/html/canvas/Float64Array.cpp \
    1646         Source/WebCore/html/canvas/Float64Array.h \
    1647         Source/WebCore/html/canvas/Int16Array.cpp \
    1648         Source/WebCore/html/canvas/Int16Array.h \
    1649         Source/WebCore/html/canvas/Int32Array.cpp \
    1650         Source/WebCore/html/canvas/Int32Array.h \
    1651         Source/WebCore/html/canvas/Int8Array.cpp \
    1652         Source/WebCore/html/canvas/Int8Array.h \
    1653         Source/WebCore/html/canvas/IntegralTypedArrayBase.h \
    1654         Source/WebCore/html/canvas/TypedArrayBase.h \
    1655         Source/WebCore/html/canvas/Uint16Array.cpp \
    1656         Source/WebCore/html/canvas/Uint16Array.h \
    1657         Source/WebCore/html/canvas/Uint32Array.cpp \
    1658         Source/WebCore/html/canvas/Uint32Array.h \
    1659         Source/WebCore/html/canvas/Uint8Array.cpp \
    1660         Source/WebCore/html/canvas/Uint8Array.h \
    16611639        Source/WebCore/html/DOMSettableTokenList.cpp \
    16621640        Source/WebCore/html/DOMSettableTokenList.h \
  • trunk/Source/WebCore/Target.pri

    r101288 r101295  
    810810    html/ValidityState.cpp \
    811811    html/WeekInputType.cpp \
    812     html/canvas/ArrayBuffer.cpp \
    813     html/canvas/ArrayBufferView.cpp \
    814812    html/canvas/CanvasGradient.cpp \
    815813    html/canvas/CanvasPattern.cpp \
     
    819817    html/canvas/CanvasStyle.cpp \
    820818    html/canvas/DataView.cpp \
    821     html/canvas/Float32Array.cpp \
    822     html/canvas/Float64Array.cpp \
    823     html/canvas/Int16Array.cpp \
    824     html/canvas/Int32Array.cpp \
    825     html/canvas/Int8Array.cpp \
    826     html/canvas/Uint16Array.cpp \
    827     html/canvas/Uint32Array.cpp \
    828     html/canvas/Uint8Array.cpp \
    829819    html/parser/CSSPreloadScanner.cpp \
    830820    html/parser/HTMLConstructionSite.cpp \
     
    17521742    history/HistoryItem.h \
    17531743    history/PageCache.h \
    1754     html/canvas/ArrayBuffer.h \
    1755     html/canvas/ArrayBufferView.h \
    17561744    html/canvas/CanvasGradient.h \
    17571745    html/canvas/CanvasPattern.h \
     
    17611749    html/canvas/CanvasStyle.h \
    17621750    html/canvas/DataView.h \
    1763     html/canvas/Float32Array.h \
    1764     html/canvas/Float64Array.h \
    1765     html/canvas/Int16Array.h \
    1766     html/canvas/Int32Array.h \
    1767     html/canvas/Int8Array.h \
    1768     html/canvas/Uint16Array.h \
    1769     html/canvas/Uint32Array.h \
    1770     html/canvas/Uint8Array.h \
    17711751    html/ClassList.h \
    17721752    html/CollectionCache.h \
  • trunk/Source/WebCore/WebCore.gypi

    r101288 r101295  
    56835683            'html/WeekInputType.cpp',
    56845684            'html/WeekInputType.h',
    5685             'html/canvas/ArrayBuffer.cpp',
    5686             'html/canvas/ArrayBuffer.h',
    5687             'html/canvas/ArrayBufferView.cpp',
    5688             'html/canvas/ArrayBufferView.h',
    56895685            'html/canvas/CanvasContextAttributes.cpp',
    56905686            'html/canvas/CanvasContextAttributes.h',
     
    57045700            'html/canvas/DataView.cpp',
    57055701            'html/canvas/DataView.h',
    5706             'html/canvas/Float32Array.cpp',
    5707             'html/canvas/Float32Array.h',
    5708             'html/canvas/Float64Array.cpp',
    5709             'html/canvas/Float64Array.h',
    5710             'html/canvas/Int16Array.cpp',
    5711             'html/canvas/Int16Array.h',
    5712             'html/canvas/Int32Array.cpp',
    5713             'html/canvas/Int32Array.h',
    5714             'html/canvas/Int8Array.cpp',
    5715             'html/canvas/Int8Array.h',
    5716             'html/canvas/IntegralTypedArrayBase.h',
    57175702            'html/canvas/OESStandardDerivatives.cpp',
    57185703            'html/canvas/OESStandardDerivatives.h',
     
    57215706            'html/canvas/OESVertexArrayObject.cpp',
    57225707            'html/canvas/OESVertexArrayObject.h',
    5723             'html/canvas/TypedArrayBase.h',
    5724             'html/canvas/Uint16Array.cpp',
    5725             'html/canvas/Uint16Array.h',
    5726             'html/canvas/Uint32Array.cpp',
    5727             'html/canvas/Uint32Array.h',
    5728             'html/canvas/Uint8Array.cpp',
    5729             'html/canvas/Uint8Array.h',
    57305708            'html/canvas/WebGLActiveInfo.h',
    57315709            'html/canvas/WebGLBuffer.cpp',
  • trunk/Source/WebCore/WebCore.vcproj/WebCore.vcproj

    r101288 r101295  
    5295952959                        >
    5296052960                        <File
    52961                                 RelativePath="..\html\canvas\ArrayBuffer.cpp"
    52962                                 >
    52963                         </File>
    52964                         <File
    52965                                 RelativePath="..\html\canvas\ArrayBuffer.h"
    52966                                 >
    52967                         </File>
    52968                         <File
    52969                                 RelativePath="..\html\canvas\ArrayBufferView.cpp"
    52970                                 >
    52971                         </File>
    52972                         <File
    52973                                 RelativePath="..\html\canvas\ArrayBufferView.h"
    52974                                 >
    52975                         </File>
    52976                         <File
    5297752961                                RelativePath="..\fileapi\AsyncFileWriter.h"
    5297852962                                >
     
    5346753451                        </File>
    5346853452                        <File
    53469                                 RelativePath="..\html\canvas\Float32Array.cpp"
    53470                                 >
    53471                         </File>
    53472                         <File
    53473                                 RelativePath="..\html\canvas\Float32Array.h"
    53474                                 >
    53475                         </File>
    53476                         <File
    53477                                 RelativePath="..\html\canvas\Float64Array.cpp"
    53478                                 >
    53479                         </File>
    53480                         <File
    53481                                 RelativePath="..\html\canvas\Float64Array.h"
    53482                                 >
    53483                         </File>
    53484                         <File
    5348553453                                RelativePath="..\html\FormAssociatedElement.cpp"
    5348653454                                >
     
    5779557763                        </File>
    5779657764                        <File
    57797                                 RelativePath="..\html\canvas\Int16Array.cpp"
    57798                                 >
    57799                         </File>
    57800                         <File
    57801                                 RelativePath="..\html\canvas\Int16Array.h"
    57802                                 >
    57803                         </File>
    57804                         <File
    57805                                 RelativePath="..\html\canvas\Int32Array.cpp"
    57806                                 >
    57807                         </File>
    57808                         <File
    57809                                 RelativePath="..\html\canvas\Int32Array.h"
    57810                                 >
    57811                         </File>
    57812                         <File
    57813                                 RelativePath="..\html\canvas\Int8Array.cpp"
    57814                                 >
    57815                         </File>
    57816                         <File
    57817                                 RelativePath="..\html\canvas\Int8Array.h"
    57818                                 >
    57819                         </File>
    57820                         <File
    5782157765                                RelativePath="..\html\IsIndexInputType.cpp"
    5782257766                                >
     
    5802057964                        <File
    5802157965                                RelativePath="..\html\TimeRanges.h"
    58022                                 >
    58023                         </File>
    58024                         <File
    58025                                 RelativePath="..\html\canvas\UInt16Array.cpp"
    58026                                 >
    58027                         </File>
    58028                         <File
    58029                                 RelativePath="..\html\canvas\UInt16Array.h"
    58030                                 >
    58031                         </File>
    58032                         <File
    58033                                 RelativePath="..\html\canvas\UInt32Array.cpp"
    58034                                 >
    58035                         </File>
    58036                         <File
    58037                                 RelativePath="..\html\canvas\UInt32Array.h"
    58038                                 >
    58039                         </File>
    58040                         <File
    58041                                 RelativePath="..\html\canvas\UInt8Array.cpp"
    58042                                 >
    58043                         </File>
    58044                         <File
    58045                                 RelativePath="..\html\canvas\UInt8Array.h"
    5804657966                                >
    5804757967                        </File>
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r101288 r101295  
    12211221                49C7B9C81042D32F0009D447 /* WebGLBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C7B9A81042D32E0009D447 /* WebGLBuffer.cpp */; };
    12221222                49C7B9C91042D32F0009D447 /* WebGLBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 49C7B9A91042D32E0009D447 /* WebGLBuffer.h */; };
    1223                 49C7B9CB1042D32F0009D447 /* Int8Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C7B9AB1042D32E0009D447 /* Int8Array.cpp */; };
    1224                 49C7B9CC1042D32F0009D447 /* Int8Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49C7B9AC1042D32E0009D447 /* Int8Array.h */; };
    12251223                49C7B9CE1042D32F0009D447 /* WebGLFramebuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49C7B9AE1042D32E0009D447 /* WebGLFramebuffer.cpp */; };
    12261224                49C7B9CF1042D32F0009D447 /* WebGLFramebuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 49C7B9AF1042D32E0009D447 /* WebGLFramebuffer.h */; };
     
    12671265                49E912AD0EFAC906009D0CAF /* AnimationList.h in Headers */ = {isa = PBXBuildFile; fileRef = 49E912A80EFAC906009D0CAF /* AnimationList.h */; settings = {ATTRIBUTES = (Private, ); }; };
    12681266                49E912AE0EFAC906009D0CAF /* TimingFunction.h in Headers */ = {isa = PBXBuildFile; fileRef = 49E912A90EFAC906009D0CAF /* TimingFunction.h */; settings = {ATTRIBUTES = (Private, ); }; };
    1269                 49EECDDF10503C2400099FAB /* ArrayBufferView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDC710503C2300099FAB /* ArrayBufferView.cpp */; };
    1270                 49EECDE010503C2400099FAB /* ArrayBufferView.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDC810503C2300099FAB /* ArrayBufferView.h */; };
    1271                 49EECDE210503C2400099FAB /* ArrayBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDCA10503C2300099FAB /* ArrayBuffer.cpp */; };
    1272                 49EECDE310503C2400099FAB /* ArrayBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDCB10503C2300099FAB /* ArrayBuffer.h */; };
    1273                 49EECDE510503C2400099FAB /* Float32Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDCD10503C2300099FAB /* Float32Array.cpp */; };
    1274                 49EECDE610503C2400099FAB /* Float32Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDCE10503C2300099FAB /* Float32Array.h */; };
    1275                 49EECDE810503C2400099FAB /* Int32Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDD010503C2300099FAB /* Int32Array.cpp */; };
    1276                 49EECDE910503C2400099FAB /* Int32Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDD110503C2300099FAB /* Int32Array.h */; };
    1277                 49EECDEB10503C2400099FAB /* Int16Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDD310503C2300099FAB /* Int16Array.cpp */; };
    1278                 49EECDEC10503C2400099FAB /* Int16Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDD410503C2300099FAB /* Int16Array.h */; };
    1279                 49EECDEE10503C2400099FAB /* Uint8Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDD610503C2300099FAB /* Uint8Array.cpp */; };
    1280                 49EECDEF10503C2400099FAB /* Uint8Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDD710503C2300099FAB /* Uint8Array.h */; };
    1281                 49EECDF110503C2400099FAB /* Uint32Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDD910503C2300099FAB /* Uint32Array.cpp */; };
    1282                 49EECDF210503C2400099FAB /* Uint32Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDDA10503C2300099FAB /* Uint32Array.h */; };
    1283                 49EECDF410503C2400099FAB /* Uint16Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECDDC10503C2300099FAB /* Uint16Array.cpp */; };
    1284                 49EECDF510503C2400099FAB /* Uint16Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECDDD10503C2400099FAB /* Uint16Array.h */; };
    12851267                49EECF00105070C400099FAB /* JSArrayBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49EECEF2105070C400099FAB /* JSArrayBuffer.cpp */; };
    12861268                49EECF01105070C400099FAB /* JSArrayBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 49EECEF3105070C400099FAB /* JSArrayBuffer.h */; };
     
    13871369                508CCA4F13CF106B003151F3 /* RenderFlowThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 508CCA4D13CF106B003151F3 /* RenderFlowThread.h */; };
    13881370                508CCA5013CF106B003151F3 /* RenderFlowThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 508CCA4E13CF106B003151F3 /* RenderFlowThread.cpp */; };
    1389                 50B42158146976960087E604 /* WebKitCSSShaderValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 50B42157146976960087E604 /* WebKitCSSShaderValue.h */; };
    13901371                50E566D6139E38C500214433 /* CSSWrapShapes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 501BAAB11395114B00F7ACEB /* CSSWrapShapes.cpp */; };
    13911372                510184690B08602A004A825F /* CachedPage.h in Headers */ = {isa = PBXBuildFile; fileRef = 510184670B08602A004A825F /* CachedPage.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    17301711                6E67D2A71280E8A4008758F7 /* Extensions3DOpenGL.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E67D2A51280E8A4008758F7 /* Extensions3DOpenGL.h */; };
    17311712                6E67D2A91280E8BD008758F7 /* Extensions3D.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E67D2A81280E8BD008758F7 /* Extensions3D.h */; };
    1732                 6E96BB1C11986EE2007D94CD /* IntegralTypedArrayBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E96BB1A11986EE1007D94CD /* IntegralTypedArrayBase.h */; };
    1733                 6E96BB1D11986EE2007D94CD /* TypedArrayBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E96BB1B11986EE1007D94CD /* TypedArrayBase.h */; };
    1734                 6EBC5D81138B4C4E00A0CF8A /* Float64Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6EBC5D7E138B4C4E00A0CF8A /* Float64Array.cpp */; };
    1735                 6EBC5D82138B4C4E00A0CF8A /* Float64Array.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EBC5D7F138B4C4E00A0CF8A /* Float64Array.h */; };
    17361713                6EBC5D85138B4CE000A0CF8A /* JSFloat64ArrayCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6EBC5D84138B4CE000A0CF8A /* JSFloat64ArrayCustom.cpp */; };
    17371714                6EBC5EAF138B50F200A0CF8A /* JSFloat64Array.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6EBC5EAD138B50F200A0CF8A /* JSFloat64Array.cpp */; };
     
    84238400                49C7B9A91042D32E0009D447 /* WebGLBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebGLBuffer.h; path = canvas/WebGLBuffer.h; sourceTree = "<group>"; };
    84248401                49C7B9AA1042D32E0009D447 /* WebGLBuffer.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = WebGLBuffer.idl; path = canvas/WebGLBuffer.idl; sourceTree = "<group>"; };
    8425                 49C7B9AB1042D32E0009D447 /* Int8Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Int8Array.cpp; path = canvas/Int8Array.cpp; sourceTree = "<group>"; };
    8426                 49C7B9AC1042D32E0009D447 /* Int8Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Int8Array.h; path = canvas/Int8Array.h; sourceTree = "<group>"; };
    84278402                49C7B9AD1042D32E0009D447 /* Int8Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Int8Array.idl; path = canvas/Int8Array.idl; sourceTree = "<group>"; };
    84288403                49C7B9AE1042D32E0009D447 /* WebGLFramebuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = WebGLFramebuffer.cpp; path = canvas/WebGLFramebuffer.cpp; sourceTree = "<group>"; };
     
    84778452                49E912A80EFAC906009D0CAF /* AnimationList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AnimationList.h; path = animation/AnimationList.h; sourceTree = "<group>"; };
    84788453                49E912A90EFAC906009D0CAF /* TimingFunction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TimingFunction.h; path = animation/TimingFunction.h; sourceTree = "<group>"; };
    8479                 49EECDC710503C2300099FAB /* ArrayBufferView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ArrayBufferView.cpp; path = canvas/ArrayBufferView.cpp; sourceTree = "<group>"; };
    8480                 49EECDC810503C2300099FAB /* ArrayBufferView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ArrayBufferView.h; path = canvas/ArrayBufferView.h; sourceTree = "<group>"; };
    84818454                49EECDC910503C2300099FAB /* ArrayBufferView.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = ArrayBufferView.idl; path = canvas/ArrayBufferView.idl; sourceTree = "<group>"; };
    8482                 49EECDCA10503C2300099FAB /* ArrayBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ArrayBuffer.cpp; path = canvas/ArrayBuffer.cpp; sourceTree = "<group>"; };
    8483                 49EECDCB10503C2300099FAB /* ArrayBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ArrayBuffer.h; path = canvas/ArrayBuffer.h; sourceTree = "<group>"; };
    84848455                49EECDCC10503C2300099FAB /* ArrayBuffer.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = ArrayBuffer.idl; path = canvas/ArrayBuffer.idl; sourceTree = "<group>"; };
    8485                 49EECDCD10503C2300099FAB /* Float32Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Float32Array.cpp; path = canvas/Float32Array.cpp; sourceTree = "<group>"; };
    8486                 49EECDCE10503C2300099FAB /* Float32Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Float32Array.h; path = canvas/Float32Array.h; sourceTree = "<group>"; };
    84878456                49EECDCF10503C2300099FAB /* Float32Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Float32Array.idl; path = canvas/Float32Array.idl; sourceTree = "<group>"; };
    8488                 49EECDD010503C2300099FAB /* Int32Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Int32Array.cpp; path = canvas/Int32Array.cpp; sourceTree = "<group>"; };
    8489                 49EECDD110503C2300099FAB /* Int32Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Int32Array.h; path = canvas/Int32Array.h; sourceTree = "<group>"; };
    84908457                49EECDD210503C2300099FAB /* Int32Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Int32Array.idl; path = canvas/Int32Array.idl; sourceTree = "<group>"; };
    8491                 49EECDD310503C2300099FAB /* Int16Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Int16Array.cpp; path = canvas/Int16Array.cpp; sourceTree = "<group>"; };
    8492                 49EECDD410503C2300099FAB /* Int16Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Int16Array.h; path = canvas/Int16Array.h; sourceTree = "<group>"; };
    84938458                49EECDD510503C2300099FAB /* Int16Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Int16Array.idl; path = canvas/Int16Array.idl; sourceTree = "<group>"; };
    8494                 49EECDD610503C2300099FAB /* Uint8Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Uint8Array.cpp; path = canvas/Uint8Array.cpp; sourceTree = "<group>"; };
    8495                 49EECDD710503C2300099FAB /* Uint8Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Uint8Array.h; path = canvas/Uint8Array.h; sourceTree = "<group>"; };
    84968459                49EECDD810503C2300099FAB /* Uint8Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Uint8Array.idl; path = canvas/Uint8Array.idl; sourceTree = "<group>"; };
    8497                 49EECDD910503C2300099FAB /* Uint32Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Uint32Array.cpp; path = canvas/Uint32Array.cpp; sourceTree = "<group>"; };
    8498                 49EECDDA10503C2300099FAB /* Uint32Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Uint32Array.h; path = canvas/Uint32Array.h; sourceTree = "<group>"; };
    84998460                49EECDDB10503C2300099FAB /* Uint32Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Uint32Array.idl; path = canvas/Uint32Array.idl; sourceTree = "<group>"; };
    8500                 49EECDDC10503C2300099FAB /* Uint16Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Uint16Array.cpp; path = canvas/Uint16Array.cpp; sourceTree = "<group>"; };
    8501                 49EECDDD10503C2400099FAB /* Uint16Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Uint16Array.h; path = canvas/Uint16Array.h; sourceTree = "<group>"; };
    85028461                49EECDDE10503C2400099FAB /* Uint16Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Uint16Array.idl; path = canvas/Uint16Array.idl; sourceTree = "<group>"; };
    85038462                49EECEF2105070C400099FAB /* JSArrayBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSArrayBuffer.cpp; sourceTree = "<group>"; };
     
    89778936                6E67D2A51280E8A4008758F7 /* Extensions3DOpenGL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Extensions3DOpenGL.h; sourceTree = "<group>"; };
    89788937                6E67D2A81280E8BD008758F7 /* Extensions3D.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Extensions3D.h; sourceTree = "<group>"; };
    8979                 6E96BB1A11986EE1007D94CD /* IntegralTypedArrayBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IntegralTypedArrayBase.h; path = canvas/IntegralTypedArrayBase.h; sourceTree = "<group>"; };
    8980                 6E96BB1B11986EE1007D94CD /* TypedArrayBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TypedArrayBase.h; path = canvas/TypedArrayBase.h; sourceTree = "<group>"; };
    8981                 6EBC5D7E138B4C4E00A0CF8A /* Float64Array.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Float64Array.cpp; path = canvas/Float64Array.cpp; sourceTree = "<group>"; };
    8982                 6EBC5D7F138B4C4E00A0CF8A /* Float64Array.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Float64Array.h; path = canvas/Float64Array.h; sourceTree = "<group>"; };
    89838938                6EBC5D80138B4C4E00A0CF8A /* Float64Array.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = Float64Array.idl; path = canvas/Float64Array.idl; sourceTree = "<group>"; };
    89848939                6EBC5D84138B4CE000A0CF8A /* JSFloat64ArrayCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSFloat64ArrayCustom.cpp; sourceTree = "<group>"; };
     
    1492414879                                A0EE0DF0144F824300F80B0D /* WebGLDebugRendererInfo.idl */,
    1492514880                                A0EE0DEF144F823200F80B0D /* WebGLDebugShaders.idl */,
    14926                                 49EECDCA10503C2300099FAB /* ArrayBuffer.cpp */,
    14927                                 49EECDCB10503C2300099FAB /* ArrayBuffer.h */,
    1492814881                                49EECDCC10503C2300099FAB /* ArrayBuffer.idl */,
    14929                                 49EECDC710503C2300099FAB /* ArrayBufferView.cpp */,
    14930                                 49EECDC810503C2300099FAB /* ArrayBufferView.h */,
    1493114882                                49EECDC910503C2300099FAB /* ArrayBufferView.idl */,
    1493214883                                6E4E91A710F7FB3100A2779C /* CanvasContextAttributes.cpp */,
     
    1495314904                                2E97CCE812939CB800C5C8FF /* DataView.h */,
    1495414905                                2E97CCE912939CB800C5C8FF /* DataView.idl */,
    14955                                 49EECDCD10503C2300099FAB /* Float32Array.cpp */,
    14956                                 49EECDCE10503C2300099FAB /* Float32Array.h */,
    1495714906                                49EECDCF10503C2300099FAB /* Float32Array.idl */,
    14958                                 6EBC5D7E138B4C4E00A0CF8A /* Float64Array.cpp */,
    14959                                 6EBC5D7F138B4C4E00A0CF8A /* Float64Array.h */,
    1496014907                                6EBC5D80138B4C4E00A0CF8A /* Float64Array.idl */,
    14961                                 49EECDD310503C2300099FAB /* Int16Array.cpp */,
    14962                                 49EECDD410503C2300099FAB /* Int16Array.h */,
    1496314908                                49EECDD510503C2300099FAB /* Int16Array.idl */,
    14964                                 49EECDD010503C2300099FAB /* Int32Array.cpp */,
    14965                                 49EECDD110503C2300099FAB /* Int32Array.h */,
    1496614909                                49EECDD210503C2300099FAB /* Int32Array.idl */,
    14967                                 49C7B9AB1042D32E0009D447 /* Int8Array.cpp */,
    14968                                 49C7B9AC1042D32E0009D447 /* Int8Array.h */,
    1496914910                                49C7B9AD1042D32E0009D447 /* Int8Array.idl */,
    14970                                 6E96BB1A11986EE1007D94CD /* IntegralTypedArrayBase.h */,
    1497114911                                9001773D12E0347800648462 /* OESStandardDerivatives.cpp */,
    1497214912                                9001773E12E0347800648462 /* OESStandardDerivatives.h */,
     
    1497814918                                77A17A6F12F28182004E02F6 /* OESVertexArrayObject.h */,
    1497914919                                77A17A7012F28182004E02F6 /* OESVertexArrayObject.idl */,
    14980                                 6E96BB1B11986EE1007D94CD /* TypedArrayBase.h */,
    14981                                 49EECDDC10503C2300099FAB /* Uint16Array.cpp */,
    14982                                 49EECDDD10503C2400099FAB /* Uint16Array.h */,
    1498314920                                49EECDDE10503C2400099FAB /* Uint16Array.idl */,
    14984                                 49EECDD910503C2300099FAB /* Uint32Array.cpp */,
    14985                                 49EECDDA10503C2300099FAB /* Uint32Array.h */,
    1498614921                                49EECDDB10503C2300099FAB /* Uint32Array.idl */,
    14987                                 49EECDD610503C2300099FAB /* Uint8Array.cpp */,
    14988                                 49EECDD710503C2300099FAB /* Uint8Array.h */,
    1498914922                                49EECDD810503C2300099FAB /* Uint8Array.idl */,
    1499014923                                A7D20F6B107F438B00A80392 /* WebGLActiveInfo.h */,
     
    2179121724                                512DD8F80D91E6AF000F89EE /* ArchiveResourceCollection.h in Headers */,
    2179221725                                BCFB2F77097A2E1A00BA703D /* Arena.h in Headers */,
    21793                                 49EECDE310503C2400099FAB /* ArrayBuffer.h in Headers */,
    21794                                 49EECDE010503C2400099FAB /* ArrayBufferView.h in Headers */,
    2179521726                                FD5686CA13AC180200B69C68 /* AsyncAudioDecoder.h in Headers */,
    2179621727                                2EF1BFF7121CB0BD00C27627 /* AsyncFileStream.h in Headers */,
     
    2282122752                                372C00D9129619F8005C9575 /* FindOptions.h in Headers */,
    2282222753                                A8CFF04F0A154F09000A4234 /* FixedTableLayout.h in Headers */,
    22823                                 49EECDE610503C2400099FAB /* Float32Array.h in Headers */,
    22824                                 6EBC5D82138B4C4E00A0CF8A /* Float64Array.h in Headers */,
    2282522754                                BC073BAA0C399B1F000F5979 /* FloatConversion.h in Headers */,
    2282622755                                B27535690B053814002CE64F /* FloatPoint.h in Headers */,
     
    2313423063                                F375CC071150D300008DDB81 /* InspectorWorkerResource.h in Headers */,
    2313523064                                F3ABFE0C130E9DA000E7F7D1 /* InstrumentingAgents.h in Headers */,
    23136                                 49EECDEC10503C2400099FAB /* Int16Array.h in Headers */,
    23137                                 49EECDE910503C2400099FAB /* Int32Array.h in Headers */,
    23138                                 49C7B9CC1042D32F0009D447 /* Int8Array.h in Headers */,
    23139                                 6E96BB1C11986EE2007D94CD /* IntegralTypedArrayBase.h in Headers */,
    2314023065                                B27535720B053814002CE64F /* IntPoint.h in Headers */,
    2314123066                                E462A4A1113E71BE004A4220 /* IntPointHash.h in Headers */,
     
    2455024475                                1419D2C50CEA6F6100FF507A /* TreeShared.h in Headers */,
    2455124476                                854FE7390A2297BE0058D7AD /* TreeWalker.h in Headers */,
    24552                                 6E96BB1D11986EE2007D94CD /* TypedArrayBase.h in Headers */,
    2455324477                                37C28A6810F659CC008C7813 /* TypesettingFeatures.h in Headers */,
    2455424478                                93309E1A099E64920056E581 /* TypingCommand.h in Headers */,
    2455524479                                85031B4E0A44EFC700F992E0 /* UIEvent.h in Headers */,
    2455624480                                85031B4F0A44EFC700F992E0 /* UIEventWithKeyState.h in Headers */,
    24557                                 49EECDF510503C2400099FAB /* Uint16Array.h in Headers */,
    24558                                 49EECDF210503C2400099FAB /* Uint32Array.h in Headers */,
    24559                                 49EECDEF10503C2400099FAB /* Uint8Array.h in Headers */,
    2456024481                                A863E2011343412000274926 /* UnicodeBidi.h in Headers */,
    2456124482                                B2C3DA4D0D006C1D00EF6F26 /* UnicodeRange.h in Headers */,
     
    2518825109                                512DD8F70D91E6AF000F89EE /* ArchiveResourceCollection.cpp in Sources */,
    2518925110                                BCFB2F76097A2E1A00BA703D /* Arena.cpp in Sources */,
    25190                                 49EECDE210503C2400099FAB /* ArrayBuffer.cpp in Sources */,
    25191                                 49EECDDF10503C2400099FAB /* ArrayBufferView.cpp in Sources */,
    2519225111                                FD5686C913AC180200B69C68 /* AsyncAudioDecoder.cpp in Sources */,
    2519325112                                89D08D9F12228451001241DF /* AsyncFileSystem.cpp in Sources */,
     
    2583925758                                08C925190FCC7C4A00480DEC /* FilterEffect.cpp in Sources */,
    2584025759                                A8CFF04D0A154F09000A4234 /* FixedTableLayout.cpp in Sources */,
    25841                                 49EECDE510503C2400099FAB /* Float32Array.cpp in Sources */,
    25842                                 6EBC5D81138B4C4E00A0CF8A /* Float64Array.cpp in Sources */,
    2584325760                                B27535680B053814002CE64F /* FloatPoint.cpp in Sources */,
    2584425761                                B2E27C9F0B0F2B0900F17C7B /* FloatPoint3D.cpp in Sources */,
     
    2611626033                                F3810C1B1365A49600ED6E33 /* InspectorWorkerAgent.cpp in Sources */,
    2611726034                                F350B73513F1377D00880C43 /* InstrumentingAgents.cpp in Sources */,
    26118                                 49EECDEB10503C2400099FAB /* Int16Array.cpp in Sources */,
    26119                                 49EECDE810503C2400099FAB /* Int32Array.cpp in Sources */,
    26120                                 49C7B9CB1042D32F0009D447 /* Int8Array.cpp in Sources */,
    2612126035                                B27535600B053814002CE64F /* IntPointCG.cpp in Sources */,
    2612226036                                B275357C0B053814002CE64F /* IntPointMac.mm in Sources */,
     
    2746727381                                85031B4D0A44EFC700F992E0 /* UIEvent.cpp in Sources */,
    2746827382                                93354A3C0B24F8C9003F6DEA /* UIEventWithKeyState.cpp in Sources */,
    27469                                 49EECDF410503C2400099FAB /* Uint16Array.cpp in Sources */,
    27470                                 49EECDF110503C2400099FAB /* Uint32Array.cpp in Sources */,
    27471                                 49EECDEE10503C2400099FAB /* Uint8Array.cpp in Sources */,
    2747227383                                B2C3DA4C0D006C1D00EF6F26 /* UnicodeRange.cpp in Sources */,
    2747327384                                D086FE9909D53AAB005BC74D /* UnlinkCommand.cpp in Sources */,
  • trunk/Source/WebCore/bindings/js/JSArrayBufferCustom.cpp

    r78407 r101295  
    2727#include "JSArrayBuffer.h"
    2828
    29 #include "ArrayBuffer.h"
    3029#include "ExceptionCode.h"
    3130#include <runtime/Error.h>
     31#include <wtf/ArrayBuffer.h>
    3232
    3333namespace WebCore {
  • trunk/Source/WebCore/bindings/js/JSArrayBufferViewHelper.h

    r100227 r101295  
    2828#define JSArrayBufferViewHelper_h
    2929
    30 #include "ArrayBufferView.h"
    3130#include "ExceptionCode.h"
    3231#include "JSArrayBuffer.h"
     
    3736#include <runtime/JSObject.h>
    3837#include <runtime/JSValue.h>
     38#include <wtf/ArrayBufferView.h>
    3939
    4040namespace WebCore {
  • trunk/Source/WebCore/bindings/js/JSAudioContextCustom.cpp

    r100006 r101295  
    2929#include "AudioContext.h"
    3030
    31 #include "ArrayBuffer.h"
    3231#include "AudioBuffer.h"
    3332#include "JSArrayBuffer.h"
     
    3534#include "JSAudioContext.h"
    3635#include <runtime/Error.h>
     36#include <wtf/ArrayBuffer.h>
    3737
    3838using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSFileReaderCustom.cpp

    r95901 r101295  
    3535#include "JSFileReader.h"
    3636
    37 #include "ArrayBuffer.h"
    3837#include "FileReader.h"
    3938#include "JSArrayBuffer.h"
     39#include <wtf/ArrayBuffer.h>
    4040
    4141using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSFloat32ArrayCustom.cpp

    r78407 r101295  
    2727#include "JSFloat32Array.h"
    2828
    29 #include "Float32Array.h"
    3029#include "JSArrayBufferViewHelper.h"
     30#include <wtf/Float32Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSFloat64ArrayCustom.cpp

    r95901 r101295  
    2727#include "JSFloat64Array.h"
    2828
    29 #include "Float64Array.h"
    3029#include "JSArrayBufferViewHelper.h"
     30#include <wtf/Float64Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSInt16ArrayCustom.cpp

    r78407 r101295  
    2727#include "JSInt16Array.h"
    2828
    29 #include "Int16Array.h"
    3029#include "JSArrayBufferViewHelper.h"
     30#include <wtf/Int16Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSInt32ArrayCustom.cpp

    r78407 r101295  
    2727#include "JSInt32Array.h"
    2828
    29 #include "Int32Array.h"
    3029#include "JSArrayBufferViewHelper.h"
     30#include <wtf/Int32Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSInt8ArrayCustom.cpp

    r78407 r101295  
    2727#include "JSInt8Array.h"
    2828
    29 #include "Int8Array.h"
    3029#include "JSArrayBufferViewHelper.h"
    3130#include <runtime/Error.h>
     31#include <wtf/Int8Array.h>
    3232
    3333using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSUint16ArrayCustom.cpp

    r78407 r101295  
    2828
    2929#include "JSArrayBufferViewHelper.h"
    30 #include "Uint16Array.h"
     30#include <wtf/Uint16Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSUint32ArrayCustom.cpp

    r78407 r101295  
    2828
    2929#include "JSArrayBufferViewHelper.h"
    30 #include "Uint32Array.h"
     30#include <wtf/Uint32Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSUint8ArrayCustom.cpp

    r78407 r101295  
    2828
    2929#include "JSArrayBufferViewHelper.h"
    30 #include "Uint8Array.h"
     30#include <wtf/Uint8Array.h>
    3131
    3232using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSWaveShaperNodeCustom.cpp

    r95901 r101295  
    2929#include "WaveShaperNode.h"
    3030
    31 #include "Float32Array.h"
    3231#include "JSFloat32Array.h"
    3332#include "JSWaveShaperNode.h"
     33#include <wtf/Float32Array.h>
    3434
    3535using namespace JSC;
  • trunk/Source/WebCore/bindings/js/JSWebGLRenderingContextCustom.cpp

    r100191 r101295  
    3131
    3232#include "ExceptionCode.h"
    33 #include "Float32Array.h"
    3433#include "HTMLCanvasElement.h"
    3534#include "HTMLImageElement.h"
    36 #include "Int32Array.h"
    3735#include "JSFloat32Array.h"
    3836#include "JSHTMLCanvasElement.h"
     
    7169#include <runtime/JSArray.h>
    7270#include <wtf/FastMalloc.h>
     71#include <wtf/Float32Array.h>
     72#include <wtf/Int32Array.h>
    7373#include <wtf/OwnFastMallocPtr.h>
    7474
  • trunk/Source/WebCore/bindings/js/JSXMLHttpRequestCustom.cpp

    r100006 r101295  
    3030#include "JSXMLHttpRequest.h"
    3131
    32 #include "ArrayBuffer.h"
    3332#include "Blob.h"
    3433#include "DOMFormData.h"
     
    5049#include <runtime/Error.h>
    5150#include <interpreter/Interpreter.h>
     51#include <wtf/ArrayBuffer.h>
    5252
    5353using namespace JSC;
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm

    r101102 r101295  
    297297    } elsif ($isCallback) {
    298298        $includesRef->{"JS${type}.h"} = 1;
     299    } elsif (IsTypedArrayType($type)) {
     300        $includesRef->{"<wtf/${type}.h>"} = 1;
    299301    } else {
    300302        # default, include the same named file
     
    692694
    693695    if ($hasParent && $dataNode->extendedAttributes->{"GenerateNativeConverter"}) {
    694         $headerIncludes{"$implClassName.h"} = 1;
     696        if (IsTypedArrayType($implClassName)) {
     697            $headerIncludes{"<wtf/$implClassName.h>"} = 1;
     698        } else {
     699            $headerIncludes{"$implClassName.h"} = 1;
     700        }
    695701    }
    696702   
     
    28852891        # Default, include header with same name.
    28862892        AddToImplIncludes("JS$type.h", $conditional);
    2887         AddToImplIncludes("$type.h", $conditional) if not $codeGenerator->AvoidInclusionOfType($type);
     2893        if (IsTypedArrayType($type)) {
     2894            AddToImplIncludes("<wtf/$type.h>", $conditional) if not $codeGenerator->AvoidInclusionOfType($type);
     2895        } else {
     2896            AddToImplIncludes("$type.h", $conditional) if not $codeGenerator->AvoidInclusionOfType($type);
     2897        }
    28882898    }
    28892899
  • trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm

    r101184 r101295  
    155155    # When we're finished with the one-file-per-class
    156156    # reorganization, we won't need these special cases.
     157    if (IsTypedArrayType($type)) {
     158        AddToImplIncludes("wtf/${type}.h");
     159        return;
     160    }
    157161    if (!$codeGenerator->IsPrimitiveType($type) and !$codeGenerator->IsStringType($type) and !$codeGenerator->AvoidInclusionOfType($type) and $type ne "Date") {
    158162        # default, include the same named file
     
    538542        $className =~ s/Abs|Rel//;
    539543    }
     544    return "wtf/${className}.h" if IsTypedArrayType($className);
    540545    return "" if ($codeGenerator->AvoidInclusionOfType($className));
    541546    return "${className}.h";
  • trunk/Source/WebCore/bindings/scripts/test/CPP/WebDOMFloat64Array.cpp

    r100882 r101295  
    2222#include "WebDOMFloat64Array.h"
    2323
     24#include "Float32Array.h"
    2425#include "Float64Array.h"
     26#include "WebDOMFloat32Array.h"
    2527#include "WebExceptionHandler.h"
    2628#include <wtf/GetPtr.h>
     
    4244}
    4345
     46void WebDOMFloat64Array::foo(const WebDOMFloat32Array& array)
     47{
     48    if (!impl())
     49        return;
     50
     51    impl()->foo(toWebCore(array));
     52}
     53
    4454WTF::Float64Array* toWebCore(const WebDOMFloat64Array& wrapper)
    4555{
  • trunk/Source/WebCore/bindings/scripts/test/CPP/WebDOMFloat64Array.h

    r100882 r101295  
    3131};
    3232
     33class WebDOMFloat32Array;
    3334
    3435class WebDOMFloat64Array : public WebDOMArrayBufferView {
     
    3839    virtual ~WebDOMFloat64Array() { }
    3940
     41    void foo(const WebDOMFloat32Array& array);
    4042
    4143    WTF::Float64Array* impl() const;
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp

    r100227 r101295  
    3030#include "WebKitDOMBinding.h"
    3131#include "gobject/ConvertToUTF8String.h"
     32#include "webkit/WebKitDOMFloat32Array.h"
     33#include "webkit/WebKitDOMFloat32ArrayPrivate.h"
    3234#include "webkit/WebKitDOMFloat64Array.h"
    3335#include "webkit/WebKitDOMFloat64ArrayPrivate.h"
     
    4951   
    5052} // namespace WebKit //
     53
     54void
     55webkit_dom_float64array_foo(WebKitDOMFloat64Array* self, WebKitDOMFloat32Array* array)
     56{
     57    g_return_if_fail(self);
     58    WebCore::JSMainThreadNullState state;
     59    WebCore::Float64Array * item = WebKit::core(self);
     60    g_return_if_fail(array);
     61    WebCore::Float32Array * converted_array = NULL;
     62    if (array != NULL) {
     63        converted_array = WebKit::core(array);
     64        g_return_if_fail(converted_array);
     65    }
     66    item->foo(converted_array);
     67}
    5168
    5269
  • trunk/Source/WebCore/bindings/scripts/test/GObject/WebKitDOMFloat64Array.h

    r100227 r101295  
    4747webkit_dom_float64array_get_type (void);
    4848
     49/**
     50 * webkit_dom_float64array_foo:
     51 * @self: A #WebKitDOMFloat64Array
     52 * @array: A #WebKitDOMFloat32Array
     53 *
     54 * Returns:
     55 *
     56**/
     57WEBKIT_API void
     58webkit_dom_float64array_foo(WebKitDOMFloat64Array* self, WebKitDOMFloat32Array* array);
     59
    4960G_END_DECLS
    5061
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSFloat64Array.cpp

    r101099 r101295  
    2222#include "JSFloat64Array.h"
    2323
    24 #include "Float64Array.h"
     24#include "ExceptionCode.h"
     25#include "JSDOMBinding.h"
     26#include "JSFloat32Array.h"
     27#include <runtime/Error.h>
    2528#include <runtime/PropertyNameArray.h>
     29#include <wtf/Float64Array.h>
    2630#include <wtf/GetPtr.h>
    2731
     
    115119static const HashTableValue JSFloat64ArrayPrototypeTableValues[] =
    116120{
     121    { "foo", DontDelete | Function, (intptr_t)static_cast<NativeFunction>(jsFloat64ArrayPrototypeFunctionFoo), (intptr_t)1 THUNK_GENERATOR(0) INTRINSIC(DFG::NoIntrinsic) },
    117122    { 0, 0, 0, 0 THUNK_GENERATOR(0) INTRINSIC(DFG::NoIntrinsic) }
    118123};
    119124
    120125#undef THUNK_GENERATOR
    121 static const HashTable JSFloat64ArrayPrototypeTable = { 1, 0, JSFloat64ArrayPrototypeTableValues, 0 };
     126static const HashTable JSFloat64ArrayPrototypeTable = { 2, 1, JSFloat64ArrayPrototypeTableValues, 0 };
    122127static const HashTable* getJSFloat64ArrayPrototypeTable(ExecState* exec)
    123128{
     
    130135{
    131136    return getDOMPrototype<JSFloat64Array>(exec, globalObject);
     137}
     138
     139bool JSFloat64ArrayPrototype::getOwnPropertySlot(JSCell* cell, ExecState* exec, const Identifier& propertyName, PropertySlot& slot)
     140{
     141    JSFloat64ArrayPrototype* thisObject = jsCast<JSFloat64ArrayPrototype*>(cell);
     142    return getStaticFunctionSlot<JSObject>(exec, getJSFloat64ArrayPrototypeTable(exec), thisObject, propertyName, slot);
     143}
     144
     145bool JSFloat64ArrayPrototype::getOwnPropertyDescriptor(JSObject* object, ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor)
     146{
     147    JSFloat64ArrayPrototype* thisObject = jsCast<JSFloat64ArrayPrototype*>(object);
     148    return getStaticFunctionDescriptor<JSObject>(exec, getJSFloat64ArrayPrototypeTable(exec), thisObject, propertyName, descriptor);
    132149}
    133150
     
    233250}
    234251
     252EncodedJSValue JSC_HOST_CALL jsFloat64ArrayPrototypeFunctionFoo(ExecState* exec)
     253{
     254    JSValue thisValue = exec->hostThisValue();
     255    if (!thisValue.inherits(&JSFloat64Array::s_info))
     256        return throwVMTypeError(exec);
     257    JSFloat64Array* castedThis = static_cast<JSFloat64Array*>(asObject(thisValue));
     258    ASSERT_GC_OBJECT_INHERITS(castedThis, &JSFloat64Array::s_info);
     259    Float64Array* imp = static_cast<Float64Array*>(castedThis->impl());
     260    if (exec->argumentCount() < 1)
     261        return throwVMError(exec, createTypeError(exec, "Not enough arguments"));
     262    Float32Array* array(toFloat32Array(MAYBE_MISSING_PARAMETER(exec, 0, MissingIsUndefined)));
     263    if (exec->hadException())
     264        return JSValue::encode(jsUndefined());
     265    imp->foo(array);
     266    return JSValue::encode(jsUndefined());
     267}
     268
    235269
    236270JSValue JSFloat64Array::getByIndex(ExecState*, unsigned index)
  • trunk/Source/WebCore/bindings/scripts/test/JS/JSFloat64Array.h

    r100227 r101295  
    2222#define JSFloat64Array_h
    2323
    24 #include "Float64Array.h"
    2524#include "JSArrayBufferView.h"
    2625#include "JSDOMBinding.h"
    2726#include <runtime/JSObject.h>
     27#include <wtf/Float64Array.h>
    2828
    2929namespace WebCore {
     
    8181
    8282    static const JSC::ClassInfo s_info;
     83    static bool getOwnPropertySlot(JSC::JSCell*, JSC::ExecState*, const JSC::Identifier&, JSC::PropertySlot&);
     84    static bool getOwnPropertyDescriptor(JSC::JSObject*, JSC::ExecState*, const JSC::Identifier&, JSC::PropertyDescriptor&);
    8385    static JSC::Structure* createStructure(JSC::JSGlobalData& globalData, JSC::JSGlobalObject* globalObject, JSC::JSValue prototype)
    8486    {
     
    8991    JSFloat64ArrayPrototype(JSC::JSGlobalData& globalData, JSC::JSGlobalObject*, JSC::Structure* structure) : JSC::JSNonFinalObject(globalData, structure) { }
    9092protected:
    91     static const unsigned StructureFlags = Base::StructureFlags;
     93    static const unsigned StructureFlags = JSC::OverridesGetOwnPropertySlot | Base::StructureFlags;
    9294};
    9395
     
    119121};
    120122
     123// Functions
     124
     125JSC::EncodedJSValue JSC_HOST_CALL jsFloat64ArrayPrototypeFunctionFoo(JSC::ExecState*);
    121126// Attributes
    122127
  • trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMFloat64Array.h

    r100227 r101295  
    2929#if WEBKIT_VERSION_MAX_ALLOWED >= WEBKIT_VERSION_LATEST
    3030
     31@class DOMFloat32Array;
     32
    3133@interface DOMFloat64Array : DOMArrayBufferView
     34- (void)foo:(DOMFloat32Array *)array;
    3235@end
    3336
  • trunk/Source/WebCore/bindings/scripts/test/ObjC/DOMFloat64Array.mm

    r100227 r101295  
    3434#import "DOMCSSValueInternal.h"
    3535#import "DOMEventInternal.h"
     36#import "DOMFloat32ArrayInternal.h"
    3637#import "DOMFloat64ArrayInternal.h"
    3738#import "DOMNodeInternal.h"
    3839#import "DOMStyleSheetInternal.h"
    3940#import "ExceptionHandlers.h"
     41#import "Float32Array.h"
    4042#import "Float64Array.h"
    4143#import "JSMainThreadExecState.h"
     
    4749
    4850@implementation DOMFloat64Array
     51
     52- (void)foo:(DOMFloat32Array *)array
     53{
     54    WebCore::JSMainThreadNullState state;
     55    IMPL->foo(core(array));
     56}
    4957
    5058@end
  • trunk/Source/WebCore/bindings/scripts/test/TestTypedArray.idl

    r100227 r101295  
    3535        DontCheckEnums
    3636    ] Float64Array : ArrayBufferView {
     37        void foo(in Float32Array array);
    3738    };
    3839}
  • trunk/Source/WebCore/bindings/scripts/test/V8/V8Float64Array.cpp

    r101099 r101295  
    2222#include "V8Float64Array.h"
    2323
     24#include "ExceptionCode.h"
    2425#include "RuntimeEnabledFeatures.h"
    2526#include "V8ArrayBufferView.h"
    2627#include "V8Binding.h"
     28#include "V8BindingMacros.h"
    2729#include "V8BindingState.h"
    2830#include "V8DOMWrapper.h"
     31#include "V8Float32Array.h"
    2932#include "V8IsolatedContext.h"
    3033#include "V8Proxy.h"
     34#include <wtf/Float32Array.h>
     35#include <wtf/Float64Array.h>
    3136#include <wtf/UnusedParam.h>
    3237
     
    3843
    3944template <typename T> void V8_USE(T) { }
     45
     46static v8::Handle<v8::Value> fooCallback(const v8::Arguments& args)
     47{
     48    INC_STATS("DOM.Float64Array.foo");
     49    if (args.Length() < 1)
     50        return throwError("Not enough arguments", V8Proxy::TypeError);
     51    Float64Array* imp = V8Float64Array::toNative(args.Holder());
     52    EXCEPTION_BLOCK(Float32Array*, array, V8Float32Array::HasInstance(MAYBE_MISSING_PARAMETER(args, 0, MissingIsUndefined)) ? V8Float32Array::toNative(v8::Handle<v8::Object>::Cast(MAYBE_MISSING_PARAMETER(args, 0, MissingIsUndefined))) : 0);
     53    imp->foo(array);
     54    return v8::Handle<v8::Value>();
     55}
    4056
    4157} // namespace Float64ArrayInternal
     
    5167    UNUSED_PARAM(defaultSignature); // In some cases, it will not be used.
    5268    desc->SetCallHandler(V8Float64Array::constructorCallback);
     69    v8::Local<v8::ObjectTemplate> instance = desc->InstanceTemplate();
     70    v8::Local<v8::ObjectTemplate> proto = desc->PrototypeTemplate();
     71    UNUSED_PARAM(instance); // In some cases, it will not be used.
     72    UNUSED_PARAM(proto); // In some cases, it will not be used.
    5373   
     74
     75    // Custom Signature 'foo'
     76    const int fooArgc = 1;
     77    v8::Handle<v8::FunctionTemplate> fooArgv[fooArgc] = { V8Float32Array::GetRawTemplate() };
     78    v8::Handle<v8::Signature> fooSignature = v8::Signature::New(desc, fooArgc, fooArgv);
     79    proto->Set(v8::String::New("foo"), v8::FunctionTemplate::New(Float64ArrayInternal::fooCallback, v8::Handle<v8::Value>(), fooSignature));
    5480
    5581    // Custom toString template
  • trunk/Source/WebCore/bindings/scripts/test/V8/V8Float64Array.h

    r100227 r101295  
    2222#define V8Float64Array_h
    2323
    24 #include "Float64Array.h"
    2524#include "V8ArrayBufferView.h"
    2625#include "V8DOMWrapper.h"
    2726#include "WrapperTypeInfo.h"
    2827#include <v8.h>
     28#include <wtf/Float64Array.h>
    2929#include <wtf/HashMap.h>
    3030#include <wtf/text/StringHash.h>
  • trunk/Source/WebCore/dom/MessageEvent.h

    r98146 r101295  
    2929#define MessageEvent_h
    3030
    31 #include "ArrayBuffer.h"
    3231#include "Blob.h"
    3332#include "DOMWindow.h"
     
    3635#include "ScriptValue.h"
    3736#include "SerializedScriptValue.h"
     37#include <wtf/ArrayBuffer.h>
    3838
    3939namespace WebCore {
  • trunk/Source/WebCore/fileapi/FileReader.cpp

    r98388 r101295  
    3535#include "FileReader.h"
    3636
    37 #include "ArrayBuffer.h"
    3837#include "CrossThreadTask.h"
    3938#include "File.h"
     
    4241#include "ProgressEvent.h"
    4342#include "ScriptExecutionContext.h"
     43#include <wtf/ArrayBuffer.h>
    4444#include <wtf/CurrentTime.h>
    4545#include <wtf/text/CString.h>
  • trunk/Source/WebCore/fileapi/FileReaderLoader.cpp

    r95901 r101295  
    3535#include "FileReaderLoader.h"
    3636
    37 #include "ArrayBuffer.h"
    3837#include "Base64.h"
    3938#include "Blob.h"
     
    4645#include "ThreadableBlobRegistry.h"
    4746#include "ThreadableLoader.h"
     47#include <wtf/ArrayBuffer.h>
    4848#include <wtf/PassRefPtr.h>
    4949#include <wtf/RefPtr.h>
  • trunk/Source/WebCore/fileapi/FileReaderSync.cpp

    r95901 r101295  
    3535#include "FileReaderSync.h"
    3636
    37 #include "ArrayBuffer.h"
    3837#include "Blob.h"
    3938#include "BlobURL.h"
    4039#include "FileException.h"
    4140#include "FileReaderLoader.h"
     41#include <wtf/ArrayBuffer.h>
    4242#include <wtf/PassRefPtr.h>
    4343
  • trunk/Source/WebCore/fileapi/WebKitBlobBuilder.cpp

    r95901 r101295  
    3333#include "WebKitBlobBuilder.h"
    3434
    35 #include "ArrayBuffer.h"
    3635#include "Blob.h"
    3736#include "ExceptionCode.h"
     
    3938#include "LineEnding.h"
    4039#include "TextEncoding.h"
     40#include <wtf/ArrayBuffer.h>
    4141#include <wtf/PassRefPtr.h>
    4242#include <wtf/Vector.h>
  • trunk/Source/WebCore/html/HTMLMediaElement.cpp

    r100453 r101295  
    7272#include "TimeRanges.h"
    7373#include "UUID.h"
    74 #include "Uint8Array.h"
    7574#include <limits>
    7675#include <wtf/CurrentTime.h>
    7776#include <wtf/MathExtras.h>
     77#include <wtf/Uint8Array.h>
    7878#include <wtf/text/CString.h>
    7979
  • trunk/Source/WebCore/html/canvas/DataView.h

    r101064 r101295  
    2727#define DataView_h
    2828
    29 #include "ArrayBufferView.h"
     29#include <wtf/ArrayBufferView.h>
    3030#include <wtf/PassRefPtr.h>
    3131
  • trunk/Source/WebCore/html/canvas/WebGLBuffer.cpp

    r95901 r101295  
    3030#include "WebGLBuffer.h"
    3131
    32 #include "ArrayBufferView.h"
    3332#include "CheckedInt.h"
    3433#include "WebGLRenderingContext.h"
     34#include <wtf/ArrayBufferView.h>
    3535
    3636namespace WebCore {
  • trunk/Source/WebCore/html/canvas/WebGLBuffer.h

    r100227 r101295  
    2727#define WebGLBuffer_h
    2828
    29 #include "ArrayBuffer.h"
    3029#include "WebGLObject.h"
    3130
     31#include <wtf/ArrayBuffer.h>
    3232#include <wtf/Forward.h>
    3333#include <wtf/PassRefPtr.h>
  • trunk/Source/WebCore/html/canvas/WebGLGetInfo.cpp

    r95901 r101295  
    3131#include "WebGLGetInfo.h"
    3232
    33 #include "Float32Array.h"
    34 #include "Int32Array.h"
    35 #include "Uint8Array.h"
    3633#include "WebGLBuffer.h"
    3734#include "WebGLFramebuffer.h"
     
    4037#include "WebGLTexture.h"
    4138#include "WebGLVertexArrayObjectOES.h"
     39#include <wtf/Float32Array.h>
     40#include <wtf/Int32Array.h>
     41#include <wtf/Uint8Array.h>
    4242
    4343namespace WebCore {
  • trunk/Source/WebCore/html/canvas/WebGLGetInfo.h

    r96726 r101295  
    2828#define WebGLGetInfo_h
    2929
    30 #include "Float32Array.h"
    31 #include "Int32Array.h"
    3230#include "PlatformString.h"
    33 #include "Uint8Array.h"
    3431#include "WebGLBuffer.h"
    3532#include "WebGLFramebuffer.h"
     
    3936#include "WebGLVertexArrayObjectOES.h"
    4037
     38#include <wtf/Float32Array.h>
     39#include <wtf/Int32Array.h>
    4140#include <wtf/PassRefPtr.h>
    4241#include <wtf/RefPtr.h>
     42#include <wtf/Uint8Array.h>
    4343
    4444namespace WebCore {
  • trunk/Source/WebCore/html/canvas/WebGLRenderingContext.cpp

    r101120 r101295  
    5353#include "RenderLayer.h"
    5454#include "Settings.h"
    55 #include "Uint16Array.h"
    5655#include "WebGLActiveInfo.h"
    5756#include "WebGLBuffer.h"
     
    7170#include <wtf/OwnArrayPtr.h>
    7271#include <wtf/PassOwnArrayPtr.h>
     72#include <wtf/Uint16Array.h>
    7373#include <wtf/text/StringBuilder.h>
    7474
  • trunk/Source/WebCore/html/canvas/WebGLRenderingContext.h

    r100191 r101295  
    2929#include "CanvasRenderingContext.h"
    3030#include "DrawingBuffer.h"
    31 #include "Float32Array.h"
    3231#include "GraphicsContext3D.h"
    33 #include "Int32Array.h"
    3432#include "PlatformString.h"
    3533#include "Timer.h"
    36 #include "Uint8Array.h"
    3734#include "WebGLGetInfo.h"
    3835
     36#include <wtf/Float32Array.h>
     37#include <wtf/Int32Array.h>
    3938#include <wtf/OwnArrayPtr.h>
     39#include <wtf/Uint8Array.h>
    4040
    4141namespace WebCore {
  • trunk/Source/WebCore/page/Crypto.cpp

    r95901 r101295  
    3232
    3333#include "ExceptionCode.h"
    34 #include "Uint8Array.h"
     34#include <wtf/Uint8Array.h>
    3535#include <wtf/CryptographicallyRandomNumber.h>
    3636
  • trunk/Source/WebCore/platform/graphics/GraphicsContext3D.cpp

    r100032 r101295  
    3131#include "GraphicsContext3D.h"
    3232
    33 #include "ArrayBufferView.h"
    3433#include "CheckedInt.h"
    3534#include "DrawingBuffer.h"
     
    3938#include "ImageObserver.h"
    4039
     40#include <wtf/ArrayBufferView.h>
    4141#include <wtf/OwnArrayPtr.h>
    4242#include <wtf/PassOwnArrayPtr.h>
  • trunk/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm

    r100084 r101295  
    3333
    3434#include "ANGLE/ShaderLang.h"
    35 #include "ArrayBuffer.h"
    36 #include "ArrayBufferView.h"
    3735#include "CanvasRenderingContext.h"
    3836#include <CoreGraphics/CGBitmapContext.h>
    3937#include "Extensions3DOpenGL.h"
    40 #include "Float32Array.h"
    4138#include "GraphicsContext.h"
    4239#include "HTMLCanvasElement.h"
    4340#include "ImageBuffer.h"
    44 #include "Int32Array.h"
    4541#include "NotImplemented.h"
    4642#include <OpenGL/CGLRenderers.h>
    4743#include <OpenGL/gl.h>
    48 #include "Uint8Array.h"
    4944#include "WebGLLayer.h"
    5045#include "WebGLObject.h"
     46#include <wtf/ArrayBuffer.h>
     47#include <wtf/ArrayBufferView.h>
     48#include <wtf/Int32Array.h>
     49#include <wtf/Float32Array.h>
     50#include <wtf/Uint8Array.h>
    5151#include <wtf/UnusedParam.h>
    5252#include <wtf/text/CString.h>
  • trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp

    r100191 r101295  
    3434#include "GraphicsContext3D.h"
    3535
    36 #include "ArrayBuffer.h"
    37 #include "ArrayBufferView.h"
    3836#include "WebGLObject.h"
    3937#include "CanvasRenderingContext.h"
    4038#include "Extensions3DOpenGL.h"
    41 #include "Float32Array.h"
    4239#include "GraphicsContext.h"
    4340#include "HTMLCanvasElement.h"
    4441#include "ImageBuffer.h"
    4542#include "ImageData.h"
    46 #include "Int32Array.h"
    4743#include "NotImplemented.h"
    48 #include "Uint8Array.h"
    4944#include <cstring>
     45#include <wtf/ArrayBuffer.h>
     46#include <wtf/ArrayBufferView.h>
     47#include <wtf/Float32Array.h>
     48#include <wtf/Int32Array.h>
     49#include <wtf/Uint8Array.h>
    5050#include <wtf/UnusedParam.h>
    5151#include <wtf/text/CString.h>
  • trunk/Source/WebCore/webaudio/AsyncAudioDecoder.cpp

    r96745 r101295  
    2929#include "AsyncAudioDecoder.h"
    3030
    31 #include "ArrayBuffer.h"
    3231#include "AudioBuffer.h"
    3332#include "AudioBufferCallback.h"
     33#include <wtf/ArrayBuffer.h>
    3434#include <wtf/MainThread.h>
    3535#include <wtf/OwnPtr.h>
  • trunk/Source/WebCore/webaudio/AudioBuffer.h

    r96745 r101295  
    3030#define AudioBuffer_h
    3131
    32 #include "Float32Array.h"
     32#include <wtf/Float32Array.h>
    3333#include <wtf/PassRefPtr.h>
    3434#include <wtf/RefCounted.h>
  • trunk/Source/WebCore/webaudio/AudioContext.cpp

    r101265 r101295  
    2929#include "AudioContext.h"
    3030
    31 #include "ArrayBuffer.h"
    3231#include "AsyncAudioDecoder.h"
    3332#include "AudioBuffer.h"
     
    7069#endif
    7170
     71#include <wtf/ArrayBuffer.h>
    7272#include <wtf/MainThread.h>
    7373#include <wtf/OwnPtr.h>
  • trunk/Source/WebCore/webaudio/AudioParam.h

    r95901 r101295  
    3232#include "AudioContext.h"
    3333#include "AudioParamTimeline.h"
    34 #include "Float32Array.h"
    3534#include "PlatformString.h"
    3635#include <sys/types.h>
     36#include <wtf/Float32Array.h>
    3737#include <wtf/PassRefPtr.h>
    3838#include <wtf/RefCounted.h>
  • trunk/Source/WebCore/webaudio/AudioParamTimeline.h

    r95901 r101295  
    3131
    3232#include "AudioContext.h"
    33 #include "Float32Array.h"
     33#include <wtf/Float32Array.h>
    3434#include <wtf/PassRefPtr.h>
    3535#include <wtf/RefCounted.h>
  • trunk/Source/WebCore/webaudio/JavaScriptAudioNode.cpp

    r98388 r101295  
    3636#include "AudioProcessingEvent.h"
    3737#include "Document.h"
    38 #include "Float32Array.h"
     38#include <wtf/Float32Array.h>
    3939#include <wtf/MainThread.h>
    4040
  • trunk/Source/WebCore/webaudio/RealtimeAnalyser.cpp

    r95901 r101295  
    3232#include "AudioUtilities.h"
    3333#include "FFTFrame.h"
    34 #include "Float32Array.h"
    35 #include "Uint8Array.h"
    3634
    3735#include <algorithm>
    3836#include <limits.h>
    3937#include <wtf/Complex.h>
     38#include <wtf/Float32Array.h>
    4039#include <wtf/MainThread.h>
    4140#include <wtf/MathExtras.h>
     41#include <wtf/Uint8Array.h>
    4242
    4343using namespace std;
  • trunk/Source/WebCore/webaudio/WaveShaperProcessor.h

    r96745 r101295  
    2929#include "AudioDSPKernelProcessor.h"
    3030#include "AudioNode.h"
    31 #include "Float32Array.h"
     31#include <wtf/Float32Array.h>
    3232#include <wtf/RefPtr.h>
    3333#include <wtf/Threading.h>
  • trunk/Source/WebCore/websockets/WebSocketChannel.cpp

    r100849 r101295  
    3535#include "WebSocketChannel.h"
    3636
    37 #include "ArrayBuffer.h"
    3837#include "Blob.h"
    3938#include "CookieJar.h"
     
    5352#include "WebSocketHandshake.h"
    5453
     54#include <wtf/ArrayBuffer.h>
    5555#include <wtf/CryptographicallyRandomNumber.h>
    5656#include <wtf/Deque.h>
  • trunk/Source/WebCore/websockets/WorkerThreadableWebSocketChannel.cpp

    r95901 r101295  
    3535#include "WorkerThreadableWebSocketChannel.h"
    3636
    37 #include "ArrayBuffer.h"
    3837#include "Blob.h"
    3938#include "CrossThreadTask.h"
     
    4746#include "WorkerRunLoop.h"
    4847#include "WorkerThread.h"
     48#include <wtf/ArrayBuffer.h>
    4949#include <wtf/MainThread.h>
    5050#include <wtf/PassRefPtr.h>
  • trunk/Source/WebCore/xml/XMLHttpRequest.cpp

    r99506 r101295  
    2323#include "XMLHttpRequest.h"
    2424
    25 #include "ArrayBuffer.h"
    2625#include "Blob.h"
    2726#include "ContentSecurityPolicy.h"
     
    5352#include "XMLHttpRequestUpload.h"
    5453#include "markup.h"
     54#include <wtf/ArrayBuffer.h>
    5555#include <wtf/RefCountedLeakCounter.h>
    5656#include <wtf/StdLibExtras.h>
Note: See TracChangeset for help on using the changeset viewer.