performance.memory: report precise values when locked to site

This CL plumbs to Blink whether the renderer process is locked to a
site (a scheme plus eTLD+1, like https://google.com) or to other more
granular lock. This is used by MemoryInfo to report precise data when
the process is locked to an origin. The data is still cached / delayed,
but not as much as in the bucketized case.

This CL also changes |total_js_heap_size|, see
https://chromium-review.googlesource.com/c/chromium/src/+/1020140

The two changes are aggregated in the same CL to ensure the bump to
performance.memory occurs only once.

Bug: 807651, 834446
Change-Id: I17917769b43c45172a54cddc5215702ce6032008
Reviewed-on: https://chromium-review.googlesource.com/1012502
Commit-Queue: Nicolás Peña Moreno <[email protected]>
Reviewed-by: Daniel Cheng <[email protected]>
Reviewed-by: Charlie Reis <[email protected]>
Cr-Commit-Position: refs/heads/master@{#562688}
diff --git a/content/renderer/render_thread_impl.h b/content/renderer/render_thread_impl.h
index 8baa631..858ae9e 100644
--- a/content/renderer/render_thread_impl.h
+++ b/content/renderer/render_thread_impl.h
@@ -579,6 +579,7 @@
   void SetProcessBackgrounded(bool backgrounded) override;
   void SetSchedulerKeepActive(bool keep_active) override;
   void ProcessPurgeAndSuspend() override;
+  void SetIsLockedToSite() override;
 
   void OnMemoryPressure(
       base::MemoryPressureListener::MemoryPressureLevel memory_pressure_level);