Chromium Code Reviews| Index: Source/heap/ThreadState.h |
| diff --git a/Source/heap/ThreadState.h b/Source/heap/ThreadState.h |
| index ad4c43a7b9cdd65a7a9326a80c42a26bcb355a84..f6577f2976731c1103b33a0717cbc4b11466367a 100644 |
| --- a/Source/heap/ThreadState.h |
| +++ b/Source/heap/ThreadState.h |
| @@ -60,6 +60,14 @@ struct ThreadingTrait { |
| // have to be explicitly marked. |
| #define REQUIRE_THREADSAFE_HANDLES(Class) template<> struct ThreadingTrait<class Class> { static const ThreadAffinity Affinity = AnyThread; } |
| +#define REQUIRE_THREADSAFE_HANDLES_WITH_NAMESPACE(Namespace, Class) \ |
| + namespace Namespace { class Class; } \ |
| + namespace WebCore { \ |
| + template<> struct ThreadingTrait<Namespace::Class> { \ |
| + static const ThreadAffinity Affinity = AnyThread; \ |
| + }; \ |
| + } |
| + |
| template<typename U> class ThreadingTrait<const U> : public ThreadingTrait<U> { }; |
| class HeapObjectHeader; |
| @@ -311,60 +319,48 @@ public: |
| }; |
| // FIXME(oilpan): find a better place for this. |
| -REQUIRE_THREADSAFE_HANDLES(ScriptExecutionContext); |
| -REQUIRE_THREADSAFE_HANDLES(Document); |
| -REQUIRE_THREADSAFE_HANDLES(WorkerContext); |
| -REQUIRE_THREADSAFE_HANDLES(DedicatedWorkerContext); |
| -REQUIRE_THREADSAFE_HANDLES(SharedWorkerContext); |
| -REQUIRE_THREADSAFE_HANDLES(EventTarget); |
| -REQUIRE_THREADSAFE_HANDLES(MessagePort); |
| -REQUIRE_THREADSAFE_HANDLES(FileReader); |
| -REQUIRE_THREADSAFE_HANDLES(FileReaderSync); |
| -REQUIRE_THREADSAFE_HANDLES(ProgressEvent); |
| -REQUIRE_THREADSAFE_HANDLES(Event); |
| -REQUIRE_THREADSAFE_HANDLES(FileError); |
| -REQUIRE_THREADSAFE_HANDLES(FileException); |
| -REQUIRE_THREADSAFE_HANDLES(Int8Array); |
| -REQUIRE_THREADSAFE_HANDLES(Uint8ClampedArray); |
| -REQUIRE_THREADSAFE_HANDLES(Uint8Array); |
| -REQUIRE_THREADSAFE_HANDLES(Int16Array); |
| -REQUIRE_THREADSAFE_HANDLES(Uint16Array); |
| -REQUIRE_THREADSAFE_HANDLES(Int32Array); |
| -REQUIRE_THREADSAFE_HANDLES(Uint32Array); |
| -REQUIRE_THREADSAFE_HANDLES(Float32Array); |
| -REQUIRE_THREADSAFE_HANDLES(Float64Array); |
| REQUIRE_THREADSAFE_HANDLES(ArrayBuffer); |
| REQUIRE_THREADSAFE_HANDLES(ArrayBufferView); |
| -REQUIRE_THREADSAFE_HANDLES(DataView); |
| -REQUIRE_THREADSAFE_HANDLES(DOMCoreException); |
| -REQUIRE_THREADSAFE_HANDLES(DOMURL); |
| -REQUIRE_THREADSAFE_HANDLES(XMLHttpRequest); |
| -REQUIRE_THREADSAFE_HANDLES(XMLHttpRequestException); |
| REQUIRE_THREADSAFE_HANDLES(Blob); |
| +REQUIRE_THREADSAFE_HANDLES(DOMCoreException); |
| REQUIRE_THREADSAFE_HANDLES(DOMFileSystem); |
| -REQUIRE_THREADSAFE_HANDLES(Entry); |
| -REQUIRE_THREADSAFE_HANDLES(FileEntry); |
| -REQUIRE_THREADSAFE_HANDLES(DirectoryEntry); |
| -REQUIRE_THREADSAFE_HANDLES(DirectoryReder); |
| REQUIRE_THREADSAFE_HANDLES(DOMFileSystemSync); |
| -REQUIRE_THREADSAFE_HANDLES(EntrySync); |
| -REQUIRE_THREADSAFE_HANDLES(FileEntrySync); |
| +REQUIRE_THREADSAFE_HANDLES(DOMURL); |
| +REQUIRE_THREADSAFE_HANDLES(DataView); |
| +REQUIRE_THREADSAFE_HANDLES(DedicatedWorkerContext); |
| +REQUIRE_THREADSAFE_HANDLES(DirectoryEntry); |
| REQUIRE_THREADSAFE_HANDLES(DirectoryEntrySync); |
| +REQUIRE_THREADSAFE_HANDLES(DirectoryReder); |
| REQUIRE_THREADSAFE_HANDLES(DirectoryRederSync); |
| +REQUIRE_THREADSAFE_HANDLES(Document); |
| +REQUIRE_THREADSAFE_HANDLES(Entry); |
| REQUIRE_THREADSAFE_HANDLES(EntryArray); |
| REQUIRE_THREADSAFE_HANDLES(EntryArraySync); |
| -REQUIRE_THREADSAFE_HANDLES(FileWriterBase); |
| +REQUIRE_THREADSAFE_HANDLES(EntrySync); |
| +REQUIRE_THREADSAFE_HANDLES(Event); |
| +REQUIRE_THREADSAFE_HANDLES(EventSource); |
| +REQUIRE_THREADSAFE_HANDLES(EventTarget); |
| +REQUIRE_THREADSAFE_HANDLES(File); |
| +REQUIRE_THREADSAFE_HANDLES(FileEntry); |
| +REQUIRE_THREADSAFE_HANDLES(FileEntrySync); |
| +REQUIRE_THREADSAFE_HANDLES(FileError); |
| +REQUIRE_THREADSAFE_HANDLES(FileException); |
| +REQUIRE_THREADSAFE_HANDLES(FileReader); |
| +REQUIRE_THREADSAFE_HANDLES(FileReaderSync); |
| REQUIRE_THREADSAFE_HANDLES(FileWriter); |
| +REQUIRE_THREADSAFE_HANDLES(FileWriterBase); |
| REQUIRE_THREADSAFE_HANDLES(FileWriterSync); |
| -REQUIRE_THREADSAFE_HANDLES(File); |
| -REQUIRE_THREADSAFE_HANDLES(WebSocket); |
| -REQUIRE_THREADSAFE_HANDLES(EventSource); |
| - |
| +REQUIRE_THREADSAFE_HANDLES(Float32Array); |
| +REQUIRE_THREADSAFE_HANDLES(Float64Array); |
| REQUIRE_THREADSAFE_HANDLES(IDBAny); |
| REQUIRE_THREADSAFE_HANDLES(IDBCallbacks); |
| REQUIRE_THREADSAFE_HANDLES(IDBCursor); |
| REQUIRE_THREADSAFE_HANDLES(IDBCursorWithValue); |
| REQUIRE_THREADSAFE_HANDLES(IDBDatabase); |
| +REQUIRE_THREADSAFE_HANDLES(IDBDatabaseBackendImpl); |
| +REQUIRE_THREADSAFE_HANDLES(IDBDatabaseBackendInterface); |
| +REQUIRE_THREADSAFE_HANDLES(IDBDatabaseCallbacks); |
| +REQUIRE_THREADSAFE_HANDLES(IDBDatabaseCallbacksImpl); |
| REQUIRE_THREADSAFE_HANDLES(IDBFactory); |
| REQUIRE_THREADSAFE_HANDLES(IDBFactoryBackendImpl); |
| REQUIRE_THREADSAFE_HANDLES(IDBFactoryBackendInterface); |
| @@ -372,10 +368,30 @@ REQUIRE_THREADSAFE_HANDLES(IDBIndex); |
| REQUIRE_THREADSAFE_HANDLES(IDBKeyRange); |
| REQUIRE_THREADSAFE_HANDLES(IDBObjectStore); |
| REQUIRE_THREADSAFE_HANDLES(IDBOpenDBRequest); |
| +REQUIRE_THREADSAFE_HANDLES(IDBRequest); |
| REQUIRE_THREADSAFE_HANDLES(IDBTransaction); |
| REQUIRE_THREADSAFE_HANDLES(IDBVersionChangeEvent); |
| -REQUIRE_THREADSAFE_HANDLES(IDBRequest); |
| +REQUIRE_THREADSAFE_HANDLES(Int16Array); |
| +REQUIRE_THREADSAFE_HANDLES(Int32Array); |
| +REQUIRE_THREADSAFE_HANDLES(Int8Array); |
| +REQUIRE_THREADSAFE_HANDLES(MessagePort); |
| +REQUIRE_THREADSAFE_HANDLES(ProgressEvent); |
| +REQUIRE_THREADSAFE_HANDLES(ScriptExecutionContext); |
| +REQUIRE_THREADSAFE_HANDLES(SharedWorkerContext); |
| +REQUIRE_THREADSAFE_HANDLES(Uint16Array); |
| +REQUIRE_THREADSAFE_HANDLES(Uint32Array); |
| +REQUIRE_THREADSAFE_HANDLES(Uint8Array); |
| +REQUIRE_THREADSAFE_HANDLES(Uint8ClampedArray); |
| +REQUIRE_THREADSAFE_HANDLES(WebSocket); |
| +REQUIRE_THREADSAFE_HANDLES(WorkerContext); |
| +REQUIRE_THREADSAFE_HANDLES(XMLHttpRequest); |
| +REQUIRE_THREADSAFE_HANDLES(XMLHttpRequestException); |
| } |
| +REQUIRE_THREADSAFE_HANDLES_WITH_NAMESPACE(WebKit, IDBCallbacksProxy); |
|
Mads Ager (chromium)
2013/11/28 10:24:46
Everything above is just sorting, right?
haraken
2013/12/02 09:13:27
Yes.
|
| +REQUIRE_THREADSAFE_HANDLES_WITH_NAMESPACE(WebKit, IDBDatabaseBackendProxy); |
| +REQUIRE_THREADSAFE_HANDLES_WITH_NAMESPACE(WebKit, IDBDatabaseCallbacksProxy); |
| +REQUIRE_THREADSAFE_HANDLES_WITH_NAMESPACE(WebKit, IDBFactoryBackendProxy); |
| + |
| #endif |