Revert "ARM/ARM64: Use introspection marking for JITted code."

This reverts commit 450f1d0fa0c40198e63c3e016f02e40ac854b0cb.

Reason for revert: breaks poisoning configuration

Bug: 36141117
Change-Id: I198c20ca1db6d7d7602aa5318616e2b149de8772
diff --git a/compiler/optimizing/code_generator_arm64.h b/compiler/optimizing/code_generator_arm64.h
index c07d1ea..93bab31 100644
--- a/compiler/optimizing/code_generator_arm64.h
+++ b/compiler/optimizing/code_generator_arm64.h
@@ -619,9 +619,9 @@
                                                dex::StringIndex string_index,
                                                vixl::aarch64::Label* adrp_label = nullptr);
 
-  // Emit the CBNZ instruction for baker read barrier and record
-  // the associated patch for AOT or slow path for JIT.
-  void EmitBakerReadBarrierCbnz(uint32_t custom_data);
+  // Add a new baker read barrier patch and return the label to be bound
+  // before the CBNZ instruction.
+  vixl::aarch64::Label* NewBakerReadBarrierPatch(uint32_t custom_data);
 
   vixl::aarch64::Literal<uint32_t>* DeduplicateBootImageAddressLiteral(uint64_t address);
   vixl::aarch64::Literal<uint32_t>* DeduplicateJitStringLiteral(const DexFile& dex_file,
@@ -928,19 +928,6 @@
   // Patches for class literals in JIT compiled code.
   TypeToLiteralMap jit_class_patches_;
 
-  // Baker read barrier slow paths, mapping custom data (uint32_t) to label.
-  // Wrap the label to work around vixl::aarch64::Label being non-copyable
-  // and non-moveable and as such unusable in ArenaSafeMap<>.
-  struct LabelWrapper {
-    LabelWrapper(const LabelWrapper& src)
-        : label() {
-      DCHECK(!src.label.IsLinked() && !src.label.IsBound());
-    }
-    LabelWrapper() = default;
-    vixl::aarch64::Label label;
-  };
-  ArenaSafeMap<uint32_t, LabelWrapper> jit_baker_read_barrier_slow_paths_;
-
   friend class linker::Arm64RelativePatcherTest;
   DISALLOW_COPY_AND_ASSIGN(CodeGeneratorARM64);
 };