diff --git a/fxjs/gc/gced_tree_node_unittest.cpp b/fxjs/gc/gced_tree_node_unittest.cpp
index 396493d..4d9f635 100644
--- a/fxjs/gc/gced_tree_node_unittest.cpp
+++ b/fxjs/gc/gced_tree_node_unittest.cpp
@@ -48,9 +48,7 @@
   }
 
   void ForceGCAndPump() {
-    heap()->ForceGarbageCollectionSlow(
-        "GCedTreeNodeUnitTest", "test",
-        cppgc::Heap::StackState::kNoHeapPointers);
+    FXGC_ForceGarbageCollection(heap());
     V8TestEnvironment::PumpPlatformMessageLoop(isolate());
   }
 
diff --git a/fxjs/gc/heap.cpp b/fxjs/gc/heap.cpp
index 3c729c7..404ee10 100644
--- a/fxjs/gc/heap.cpp
+++ b/fxjs/gc/heap.cpp
@@ -69,12 +69,16 @@
   return FXGCScopedHeap(heap.release());
 }
 
+void FXGC_ForceGarbageCollection(cppgc::Heap* heap) {
+  heap->ForceGarbageCollectionSlow("FXGC", "ForceGarbageCollection",
+                                   cppgc::Heap::StackState::kNoHeapPointers);
+}
+
 void FXGCHeapDeleter::operator()(cppgc::Heap* heap) {
   ASSERT(heap);
   ASSERT(g_platform_ref_count > 0);
   --g_platform_ref_count;
 
-  heap->ForceGarbageCollectionSlow("FXGCHeapDeleter", "FinalGCBeforeDelete",
-                                   cppgc::Heap::StackState::kNoHeapPointers);
+  FXGC_ForceGarbageCollection(heap);
   delete heap;
 }
diff --git a/fxjs/gc/heap.h b/fxjs/gc/heap.h
index 35ad4f6..bf60833 100644
--- a/fxjs/gc/heap.h
+++ b/fxjs/gc/heap.h
@@ -20,6 +20,7 @@
 void FXGC_Initialize(v8::Platform* platform);
 void FXGC_Release();
 FXGCScopedHeap FXGC_CreateHeap();
+void FXGC_ForceGarbageCollection(cppgc::Heap* heap);
 
 #define CONSTRUCT_VIA_MAKE_GARBAGE_COLLECTED \
   template <typename T>                      \
diff --git a/fxjs/gc/heap_unittest.cpp b/fxjs/gc/heap_unittest.cpp
index 685c357..76e0e40 100644
--- a/fxjs/gc/heap_unittest.cpp
+++ b/fxjs/gc/heap_unittest.cpp
@@ -93,8 +93,7 @@
     EXPECT_EQ(1u, PseudoCollectible::LiveCount());
     EXPECT_EQ(0u, PseudoCollectible::DeadCount());
   }
-  heap1->ForceGarbageCollectionSlow("NoReferences", "test",
-                                    cppgc::Heap::StackState::kNoHeapPointers);
+  FXGC_ForceGarbageCollection(heap1.get());
   EXPECT_EQ(0u, PseudoCollectible::LiveCount());
   EXPECT_EQ(1u, PseudoCollectible::DeadCount());
 }
@@ -115,9 +114,7 @@
     EXPECT_EQ(1u, PseudoCollectible::LiveCount());
     EXPECT_EQ(0u, PseudoCollectible::DeadCount());
 
-    heap1->ForceGarbageCollectionSlow("HasReferences", "test",
-                                      cppgc::Heap::StackState::kNoHeapPointers);
-
+    FXGC_ForceGarbageCollection(heap1.get());
     EXPECT_TRUE(PseudoCollectible::s_persistent_->IsLive());
     EXPECT_EQ(1u, PseudoCollectible::LiveCount());
     EXPECT_EQ(0u, PseudoCollectible::DeadCount());
