Fix undefined symbol error in C++20.

For some reason I don't understand, inlining the histogram macro in the
header results in an undefined symbol relating to atomics when in C++20
mode.  Fix it by out-of-lining the function.

Bug: 1284275
Change-Id: I5d2c26cd0a06b49e1f5cc6a34158e01056cb66f0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3782985
Reviewed-by: Khushal Sagar <khushalsagar@chromium.org>
Auto-Submit: Peter Kasting <pkasting@chromium.org>
Commit-Queue: Khushal Sagar <khushalsagar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1027858}
diff --git a/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.cc b/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.cc
index 4e546db5..61e25f9 100644
--- a/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.cc
+++ b/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.cc
@@ -1123,4 +1123,12 @@
   return nullptr;
 }
 
+void PaintArtifactCompositor::SetNeedsUpdate(
+    PaintArtifactCompositorUpdateReason reason) {
+  UMA_HISTOGRAM_ENUMERATION("Blink.Paint.PaintArtifactCompositorUpdateReason",
+                            reason,
+                            PaintArtifactCompositorUpdateReason::kCount);
+  needs_update_ = true;
+}
+
 }  // namespace blink
diff --git a/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.h b/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.h
index dc447d0..96f78b0 100644
--- a/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.h
+++ b/third_party/blink/renderer/platform/graphics/compositing/paint_artifact_compositor.h
@@ -217,12 +217,7 @@
   // do not affect compositing can use a fast-path in |UpdateRepaintedLayers|
   // (see comment above that function for more information), and should not call
   // SetNeedsUpdate.
-  void SetNeedsUpdate(PaintArtifactCompositorUpdateReason reason) {
-    UMA_HISTOGRAM_ENUMERATION("Blink.Paint.PaintArtifactCompositorUpdateReason",
-                              reason,
-                              PaintArtifactCompositorUpdateReason::kCount);
-    needs_update_ = true;
-  }
+  void SetNeedsUpdate(PaintArtifactCompositorUpdateReason reason);
   bool NeedsUpdate() const { return needs_update_; }
   void ClearNeedsUpdateForTesting() { needs_update_ = false; }