[vm] Fix build after f496e538f4587f29562e161ca6b06f169396f499

* Introduce forward declaration for RawObject;
* Move compiler::target::ClassTable::ClassOffsetFor under ifdef PRODUCT

Change-Id: Iacf5cbdaec0c2999aae7c8e0683a58e392f3e960
Reviewed-on: https://dart-review.googlesource.com/c/91220
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Vyacheslav Egorov <vegorov@google.com>
diff --git a/runtime/vm/compiler/runtime_api.cc b/runtime/vm/compiler/runtime_api.cc
index ccdc912..a3dec74 100644
--- a/runtime/vm/compiler/runtime_api.cc
+++ b/runtime/vm/compiler/runtime_api.cc
@@ -194,11 +194,11 @@
   return dart::ClassTable::table_offset();
 }
 
+#if !defined(PRODUCT)
 word ClassTable::ClassOffsetFor(intptr_t cid) {
   return dart::ClassTable::ClassOffsetFor(cid);
 }
 
-#if !defined(PRODUCT)
 word ClassTable::StateOffsetFor(intptr_t cid) {
   return dart::ClassTable::StateOffsetFor(cid);
 }
diff --git a/runtime/vm/compiler/runtime_api.h b/runtime/vm/compiler/runtime_api.h
index d129708..2d6e127 100644
--- a/runtime/vm/compiler/runtime_api.h
+++ b/runtime/vm/compiler/runtime_api.h
@@ -297,8 +297,8 @@
 class ClassTable : public AllStatic {
  public:
   static word table_offset();
-  static word ClassOffsetFor(intptr_t cid);
 #if !defined(PRODUCT)
+  static word ClassOffsetFor(intptr_t cid);
   static word StateOffsetFor(intptr_t cid);
   static word TableOffsetFor(intptr_t cid);
   static word CounterOffsetFor(intptr_t cid, bool is_new);
diff --git a/runtime/vm/instructions_arm64.h b/runtime/vm/instructions_arm64.h
index bfa1ae3..c78cee3 100644
--- a/runtime/vm/instructions_arm64.h
+++ b/runtime/vm/instructions_arm64.h
@@ -18,10 +18,11 @@
 namespace dart {
 
 class Code;
-class ObjectPool;
 class ICData;
-class RawICData;
+class ObjectPool;
 class RawCode;
+class RawICData;
+class RawObject;
 
 class InstructionPattern : public AllStatic {
  public:
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index eaced86..607d5b4 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -12173,8 +12173,7 @@
 }
 
 void ObjectPool::CopyInto(compiler::ObjectPoolBuilder* builder) const {
-  ASSERT(builder->CurrentLength());
-
+  ASSERT(builder->CurrentLength() == 0);
   for (intptr_t i = 0; i < Length(); i++) {
     auto type = TypeAt(i);
     auto patchable = PatchableAt(i);
@@ -12196,7 +12195,6 @@
         UNREACHABLE();
     }
   }
-
   ASSERT(builder->CurrentLength() == Length());
 }
 #endif