diff options
author | Moonchild <git-repo@palemoon.org> | 2020-02-20 16:50:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-20 16:50:49 +0100 |
commit | d5dea3d66cb6822f8b096d0f51e2e5398a00f745 (patch) | |
tree | 8942443c378dfbe069af0bab196fa63a212adc83 | |
parent | 702e360a4cd34888027534331478999eb1e13db3 (diff) | |
parent | 22d601d65586fd9f2764746098d95363c327b196 (diff) | |
download | uxp-d5dea3d66cb6822f8b096d0f51e2e5398a00f745.tar.gz |
Merge pull request #1458 from MoonchildProductions/316
Fix buildability of builds without devtools-server
-rw-r--r-- | dom/performance/Performance.h | 2 | ||||
-rw-r--r-- | dom/performance/PerformanceMainThread.cpp | 9 | ||||
-rw-r--r-- | dom/performance/PerformanceMainThread.h | 4 | ||||
-rw-r--r-- | dom/performance/PerformanceWorker.h | 2 | ||||
-rw-r--r-- | dom/webidl/Performance.webidl | 2 | ||||
-rw-r--r-- | dom/webidl/moz.build | 2 | ||||
-rw-r--r-- | js/public/HeapAPI.h | 2 | ||||
-rw-r--r-- | js/src/gc/GCRuntime.h | 2 | ||||
-rw-r--r-- | js/src/gc/Nursery.cpp | 3 | ||||
-rw-r--r-- | js/src/jsgc.cpp | 2 | ||||
-rw-r--r-- | js/src/jsgc.h | 2 | ||||
-rw-r--r-- | js/src/shell/js.cpp | 2 |
12 files changed, 33 insertions, 1 deletions
diff --git a/dom/performance/Performance.h b/dom/performance/Performance.h index 4debecc90f..c40dd8affa 100644 --- a/dom/performance/Performance.h +++ b/dom/performance/Performance.h @@ -96,8 +96,10 @@ public: IMPL_EVENT_HANDLER(resourcetimingbufferfull) +#ifdef MOZ_DEVTOOLS_SERVER virtual void GetMozMemory(JSContext *aCx, JS::MutableHandle<JSObject*> aObj) = 0; +#endif virtual nsDOMNavigationTiming* GetDOMTiming() const = 0; diff --git a/dom/performance/PerformanceMainThread.cpp b/dom/performance/PerformanceMainThread.cpp index 5a84f5fb11..b95a91ea67 100644 --- a/dom/performance/PerformanceMainThread.cpp +++ b/dom/performance/PerformanceMainThread.cpp @@ -11,6 +11,7 @@ namespace mozilla { namespace dom { + NS_IMPL_CYCLE_COLLECTION_CLASS(PerformanceMainThread) NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(PerformanceMainThread, @@ -18,8 +19,10 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(PerformanceMainThread, NS_IMPL_CYCLE_COLLECTION_UNLINK(mTiming, mNavigation, mDocEntry) +#ifdef MOZ_DEVTOOLS_SERVER tmp->mMozMemory = nullptr; mozilla::DropJSObjects(this); +#endif NS_IMPL_CYCLE_COLLECTION_UNLINK_END NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(PerformanceMainThread, @@ -31,7 +34,9 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(PerformanceMainThread, Performance) +#ifdef MOZ_DEVTOOLS_SERVER NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mMozMemory) +#endif NS_IMPL_CYCLE_COLLECTION_TRACE_END NS_IMPL_ADDREF_INHERITED(PerformanceMainThread, Performance) @@ -55,9 +60,12 @@ PerformanceMainThread::PerformanceMainThread(nsPIDOMWindowInner* aWindow, PerformanceMainThread::~PerformanceMainThread() { +#ifdef MOZ_DEVTOOLS_SERVER mozilla::DropJSObjects(this); +#endif } +#ifdef MOZ_DEVTOOLS_SERVER void PerformanceMainThread::GetMozMemory(JSContext *aCx, JS::MutableHandle<JSObject*> aObj) @@ -71,6 +79,7 @@ PerformanceMainThread::GetMozMemory(JSContext *aCx, aObj.set(mMozMemory); } +#endif PerformanceTiming* PerformanceMainThread::Timing() diff --git a/dom/performance/PerformanceMainThread.h b/dom/performance/PerformanceMainThread.h index 9f0e185fcf..a90a535206 100644 --- a/dom/performance/PerformanceMainThread.h +++ b/dom/performance/PerformanceMainThread.h @@ -34,8 +34,10 @@ public: DOMHighResTimeStamp CreationTime() const override; +#ifdef MOZ_DEVTOOLS_SERVER virtual void GetMozMemory(JSContext *aCx, JS::MutableHandle<JSObject*> aObj) override; +#endif virtual nsDOMNavigationTiming* GetDOMTiming() const override { @@ -79,7 +81,9 @@ protected: nsCOMPtr<nsITimedChannel> mChannel; RefPtr<PerformanceTiming> mTiming; RefPtr<PerformanceNavigation> mNavigation; +#ifdef MOZ_DEVTOOLS_SERVER JS::Heap<JSObject*> mMozMemory; +#endif }; } // namespace dom diff --git a/dom/performance/PerformanceWorker.h b/dom/performance/PerformanceWorker.h index 346bdd0260..ffe2a1998a 100644 --- a/dom/performance/PerformanceWorker.h +++ b/dom/performance/PerformanceWorker.h @@ -43,11 +43,13 @@ public: DOMHighResTimeStamp CreationTime() const override; +#ifdef MOZ_DEVTOOLS_SERVER virtual void GetMozMemory(JSContext *aCx, JS::MutableHandle<JSObject*> aObj) override { MOZ_CRASH("This should not be called on workers."); } +#endif virtual nsDOMNavigationTiming* GetDOMTiming() const override { diff --git a/dom/webidl/Performance.webidl b/dom/webidl/Performance.webidl index 0bd2677df7..e811e1cee2 100644 --- a/dom/webidl/Performance.webidl +++ b/dom/webidl/Performance.webidl @@ -55,12 +55,14 @@ partial interface Performance { attribute EventHandler onresourcetimingbufferfull; }; +#ifdef MOZ_DEVTOOLS_SERVER // GC microbenchmarks, pref-guarded, not for general use (bug 1125412) [Exposed=Window] partial interface Performance { [Pref="dom.enable_memory_stats"] readonly attribute object mozMemory; }; +#endif // http://www.w3.org/TR/user-timing/ [Exposed=(Window,Worker)] diff --git a/dom/webidl/moz.build b/dom/webidl/moz.build index 89c149db79..156da302dd 100644 --- a/dom/webidl/moz.build +++ b/dom/webidl/moz.build @@ -12,6 +12,7 @@ PREPROCESSED_WEBIDL_FILES = [ 'HTMLMediaElement.webidl', 'Navigator.webidl', 'Node.webidl', + 'Performance.webidl', 'Window.webidl', ] @@ -329,7 +330,6 @@ WEBIDL_FILES = [ 'PaintRequestList.webidl', 'PannerNode.webidl', 'ParentNode.webidl', - 'Performance.webidl', 'PerformanceEntry.webidl', 'PerformanceMark.webidl', 'PerformanceMeasure.webidl', diff --git a/js/public/HeapAPI.h b/js/public/HeapAPI.h index e37d13e932..fef6c0c780 100644 --- a/js/public/HeapAPI.h +++ b/js/public/HeapAPI.h @@ -392,6 +392,7 @@ IsIncrementalBarrierNeededOnTenuredGCThing(JS::shadow::Runtime* rt, const JS::GC return JS::shadow::Zone::asShadowZone(zone)->needsIncrementalBarrier(); } +#ifdef MOZ_DEVTOOLS_SERVER /** * Create an object providing access to the garbage collector's internal notion * of the current state of memory (both GC heap memory and GCthing-controlled @@ -399,6 +400,7 @@ IsIncrementalBarrierNeededOnTenuredGCThing(JS::shadow::Runtime* rt, const JS::GC */ extern JS_PUBLIC_API(JSObject*) NewMemoryInfoObject(JSContext* cx); +#endif } /* namespace gc */ } /* namespace js */ diff --git a/js/src/gc/GCRuntime.h b/js/src/gc/GCRuntime.h index f102e9ef03..f43dcd351b 100644 --- a/js/src/gc/GCRuntime.h +++ b/js/src/gc/GCRuntime.h @@ -741,7 +741,9 @@ class GCRuntime void removeBlackRootsTracer(JSTraceDataOp traceOp, void* data); void setMaxMallocBytes(size_t value); +#ifdef MOZ_DEVTOOLS_SERVER int32_t getMallocBytes() const { return mallocBytesUntilGC; } +#endif void resetMallocBytes(); bool isTooMuchMalloc() const { return mallocBytesUntilGC <= 0; } void updateMallocCounter(JS::Zone* zone, size_t nbytes); diff --git a/js/src/gc/Nursery.cpp b/js/src/gc/Nursery.cpp index 93a0eb6a8b..737d68bd00 100644 --- a/js/src/gc/Nursery.cpp +++ b/js/src/gc/Nursery.cpp @@ -505,7 +505,10 @@ js::Nursery::collect(JSRuntime* rt, JS::gcreason::Reason reason) if (!isEnabled()) return; +#ifdef MOZ_DEVTOOLS_SERVER + // No need to obsessively track this without devtools rt->gc.incMinorGcNumber(); +#endif rt->gc.stats.beginNurseryCollection(reason); TraceMinorGCStart(); diff --git a/js/src/jsgc.cpp b/js/src/jsgc.cpp index 5a9d732b65..3ad526f74c 100644 --- a/js/src/jsgc.cpp +++ b/js/src/jsgc.cpp @@ -6778,6 +6778,7 @@ js::gc::NextCellUniqueId(JSRuntime* rt) namespace js { namespace gc { +#ifdef MOZ_DEVTOOLS_SERVER namespace MemInfo { static bool @@ -6993,6 +6994,7 @@ NewMemoryInfoObject(JSContext* cx) return obj; } +#endif // MOZ_DEVTOOLS_SERVER const char* StateName(State state) diff --git a/js/src/jsgc.h b/js/src/jsgc.h index 952fd6bae5..601f63daa8 100644 --- a/js/src/jsgc.h +++ b/js/src/jsgc.h @@ -1357,8 +1357,10 @@ class ZoneList ZoneList& operator=(const ZoneList& other) = delete; }; +#ifdef MOZ_DEVTOOLS_SERVER JSObject* NewMemoryStatisticsObject(JSContext* cx); +#endif struct MOZ_RAII AutoAssertNoNurseryAlloc { diff --git a/js/src/shell/js.cpp b/js/src/shell/js.cpp index 36558a694b..4b0c858a40 100644 --- a/js/src/shell/js.cpp +++ b/js/src/shell/js.cpp @@ -7090,6 +7090,7 @@ NewGlobalObject(JSContext* cx, JS::CompartmentOptions& options, if (!DefineOS(cx, glob, fuzzingSafe, &gOutFile, &gErrFile)) return nullptr; +#ifdef MOZ_DEVTOOLS_SERVER RootedObject performanceObj(cx, JS_NewObject(cx, nullptr)); if (!performanceObj) return nullptr; @@ -7105,6 +7106,7 @@ NewGlobalObject(JSContext* cx, JS::CompartmentOptions& options, return nullptr; if (!JS_DefineProperty(cx, mozMemoryObj, "gc", gcObj, JSPROP_ENUMERATE)) return nullptr; +#endif /* Initialize FakeDOMObject. */ static const js::DOMCallbacks DOMcallbacks = { |