Revert "Update non-moving space references in reverse"

This reverts commit d4c19c9f9f3c931f46985518cdf092e9370305f4.

Reason for revert: LUCI failures

Change-Id: I939996027cc8a1af3b0f00cc2e1f195d8e80927d
diff --git a/runtime/gc/collector/mark_compact.cc b/runtime/gc/collector/mark_compact.cc
index e7ca948..25be59f 100644
--- a/runtime/gc/collector/mark_compact.cc
+++ b/runtime/gc/collector/mark_compact.cc
@@ -1894,22 +1894,14 @@
 
 void MarkCompact::UpdateNonMovingSpace() {
   TimingLogger::ScopedTiming t(__FUNCTION__, GetTimings());
-  // Iterating in reverse ensures that the class pointer in objects which span
-  // across more than one page gets updated in the end. This is necessary for
-  // VisitRefsForCompaction() to work correctly.
-  // TODO: If and when we make non-moving space update concurrent, implement a
-  // mechanism to remember class pointers for such objects off-heap and pass it
-  // to VisitRefsForCompaction().
-  if (non_moving_first_objs_count_ > 0) {
-    uint8_t* page = non_moving_space_->Begin() + non_moving_first_objs_count_ * kPageSize;
-    for (size_t i = non_moving_first_objs_count_ - 1; i >= 0; i--) {
-      mirror::Object* obj = first_objs_non_moving_space_[i].AsMirrorPtr();
-      page -= kPageSize;
-      // null means there are no objects on the page to update references.
-      if (obj != nullptr) {
-        UpdateNonMovingPage(obj, page);
-      }
+  uint8_t* page = non_moving_space_->Begin();
+  for (size_t i = 0; i < non_moving_first_objs_count_; i++) {
+    mirror::Object* obj = first_objs_non_moving_space_[i].AsMirrorPtr();
+    // null means there are no objects on the page to update references.
+    if (obj != nullptr) {
+      UpdateNonMovingPage(obj, page);
     }
+    page += kPageSize;
   }
 }