ART: Add heap iteration callback

Add callback support for heap iteration. Visiting of fields will
be done in a follow-up.

Add a test.

Bug: 31385354
Test: m test-art-host-run-test-906-iterate-heap
Test: m ART_TEST_GC_STRESS=true ART_TEST_GC_VERIFY=true test-art-host-run-test-906-iterate-heap
Change-Id: I7bcf6751e6df4ef58756ba97701050b2ff5eb07b
diff --git a/test/Android.bp b/test/Android.bp
index 4457e8a..45673f5 100644
--- a/test/Android.bp
+++ b/test/Android.bp
@@ -238,8 +238,8 @@
     shared_libs: ["libartd"],
 }
 
-art_cc_test_library {
-    name: "libtiagent",
+art_cc_defaults {
+    name: "libtiagent-defaults",
     defaults: ["libartagent-defaults"],
     srcs: [
         "ti-agent/common_load.cc",
@@ -248,10 +248,18 @@
         "903-hello-tagging/tagging.cc",
         "904-object-allocation/tracking.cc",
         "905-object-free/tracking_free.cc",
+        "906-iterate-heap/iterate_heap.cc",
     ],
     shared_libs: [
-        "libart",
         "libbase",
+    ],
+}
+
+art_cc_test_library {
+    name: "libtiagent",
+    defaults: ["libtiagent-defaults"],
+    shared_libs: [
+        "libart",
         "libopenjdkjvmti",
     ],
 }
@@ -259,20 +267,11 @@
 art_cc_test_library {
     name: "libtiagentd",
     defaults: [
-        "libartagent-defaults",
+        "libtiagent-defaults",
         "art_debug_defaults",
     ],
-    srcs: [
-        "ti-agent/common_load.cc",
-        "901-hello-ti-agent/basics.cc",
-        "902-hello-transformation/transform.cc",
-        "903-hello-tagging/tagging.cc",
-        "904-object-allocation/tracking.cc",
-        "905-object-free/tracking_free.cc",
-    ],
     shared_libs: [
         "libartd",
-        "libbase",
         "libopenjdkjvmtid",
     ],
 }