[vm, gc] Don't double initialize typed data in compressed pointers mode.

Originally, memory in the compressed heap was recycled such that allocating a large page didn't guarentee the page was zeroed. Since 735f96d6a68190558518a1037ba4028029d85bcd, allocating a large page results in a freshly committed page that is zeroed.

TEST=ci
Change-Id: I1ab1fdf16fc3d498d676a228187162b2e669f692
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/246303
Reviewed-by: Liam Appelbe <liama@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index 0b5f8bc..9e867c4 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -2628,12 +2628,8 @@
       // If the size is greater than both kNewAllocatableSize and
       // kAllocatablePageSize, the object must have been allocated to a new
       // large page, which must already have been zero initialized by the OS.
-#if defined(DART_COMPRESSED_POINTERS)
-      needs_init = true;
-#else
       needs_init = Heap::IsAllocatableInNewSpace(size) ||
                    Heap::IsAllocatableViaFreeLists(size);
-#endif
     } else {
       initial_value = static_cast<uword>(null_);
 #if defined(DART_COMPRESSED_POINTERS)