summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/code_generator_arm_vixl.h
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2018-08-02 17:53:46 +0000
committerNicolas Geoffray <ngeoffray@google.com>2018-08-02 17:53:46 +0000
commit756e722c323c69a7c9891892602730e9c94b78f9 (patch)
treea2bf360d95f0aef84f3bce43f43871910a0b7ed9 /compiler/optimizing/code_generator_arm_vixl.h
parent450f1d0fa0c40198e63c3e016f02e40ac854b0cb (diff)
downloadart-756e722c323c69a7c9891892602730e9c94b78f9.tar.gz
art-756e722c323c69a7c9891892602730e9c94b78f9.tar.bz2
art-756e722c323c69a7c9891892602730e9c94b78f9.zip
Revert "ARM/ARM64: Use introspection marking for JITted code."
This reverts commit 450f1d0fa0c40198e63c3e016f02e40ac854b0cb. Reason for revert: breaks poisoning configuration Bug: 36141117 Change-Id: I198c20ca1db6d7d7602aa5318616e2b149de8772
Diffstat (limited to 'compiler/optimizing/code_generator_arm_vixl.h')
-rw-r--r--compiler/optimizing/code_generator_arm_vixl.h19
1 files changed, 3 insertions, 16 deletions
diff --git a/compiler/optimizing/code_generator_arm_vixl.h b/compiler/optimizing/code_generator_arm_vixl.h
index ef82f2e904..fc8cf98173 100644
--- a/compiler/optimizing/code_generator_arm_vixl.h
+++ b/compiler/optimizing/code_generator_arm_vixl.h
@@ -589,9 +589,9 @@ class CodeGeneratorARMVIXL : public CodeGenerator {
PcRelativePatchInfo* NewStringBssEntryPatch(const DexFile& dex_file,
dex::StringIndex string_index);
- // Emit the BNE instruction for baker read barrier and record
- // the associated patch for AOT or slow path for JIT.
- void EmitBakerReadBarrierBne(uint32_t custom_data);
+ // Add a new baker read barrier patch and return the label to be bound
+ // before the BNE instruction.
+ vixl::aarch32::Label* NewBakerReadBarrierPatch(uint32_t custom_data);
VIXLUInt32Literal* DeduplicateBootImageAddressLiteral(uint32_t address);
VIXLUInt32Literal* DeduplicateJitStringLiteral(const DexFile& dex_file,
@@ -916,19 +916,6 @@ class CodeGeneratorARMVIXL : public CodeGenerator {
// 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::aarch32::Label being non-copyable
- // and non-moveable and as such unusable in ArenaSafeMap<>.
- struct LabelWrapper {
- LabelWrapper(const LabelWrapper& src)
- : label() {
- DCHECK(!src.label.IsReferenced() && !src.label.IsBound());
- }
- LabelWrapper() = default;
- vixl::aarch32::Label label;
- };
- ArenaSafeMap<uint32_t, LabelWrapper> jit_baker_read_barrier_slow_paths_;
-
friend class linker::Thumb2RelativePatcherTest;
DISALLOW_COPY_AND_ASSIGN(CodeGeneratorARMVIXL);
};