Fix heap verification with SS/GSS.

Since I had removed the SwapSemiSpaces it was trying to verify
references in the from space of the semispace collector, which isn't
necessarily valid.

Bug: 13989162

Change-Id: I8e0b7119a1a53d63f2c71ecdb276290eda5bae07
diff --git a/runtime/gc/collector/semi_space.cc b/runtime/gc/collector/semi_space.cc
index 6e31cb7..ccb38c4 100644
--- a/runtime/gc/collector/semi_space.cc
+++ b/runtime/gc/collector/semi_space.cc
@@ -393,10 +393,10 @@
   // Note: Freed bytes can be negative if we copy form a compacted space to a free-list backed
   // space.
   heap_->RecordFree(freed_objects, freed_bytes);
+
   timings_.StartSplit("PreSweepingGcVerification");
   heap_->PreSweepingGcVerification(this);
   timings_.EndSplit();
-
   {
     WriterMutexLock mu(self_, *Locks::heap_bitmap_lock_);
     // Reclaim unmarked objects.
@@ -411,6 +411,8 @@
     TimingLogger::ScopedSplit split("UnBindBitmaps", &timings_);
     GetHeap()->UnBindBitmaps();
   }
+  // TODO: Do this before doing verification since the from space may have objects which weren't
+  // moved and point to dead objects.
   from_space_->Clear();
   // Protect the from space.
   VLOG(heap) << "Protecting space " << *from_space_;