Record bytes-freed in stop-the-world compaction mode of uffd GC

This was mistakenly omitted, causing OOME.

Test: Golem
Bug: 244737154
Change-Id: I58ca89a03703c0f799a7f765516ad5679fb602f1
diff --git a/runtime/gc/collector/mark_compact.cc b/runtime/gc/collector/mark_compact.cc
index a14bfd5..a81ce42 100644
--- a/runtime/gc/collector/mark_compact.cc
+++ b/runtime/gc/collector/mark_compact.cc
@@ -1763,6 +1763,10 @@
   // fallback mode
   if (uffd_ == kFallbackMode) {
     CompactMovingSpace</*kFallback*/true>();
+
+    int32_t freed_bytes = black_objs_slide_diff_;
+    bump_pointer_space_->RecordFree(freed_objects_, freed_bytes);
+    RecordFree(ObjectBytePair(freed_objects_, freed_bytes));
   } else {
     // We must start worker threads before resuming mutators to avoid deadlocks.
     heap_->GetThreadPool()->StartWorkers(thread_running_gc_);