summaryrefslogtreecommitdiff
path: root/compiler/optimizing/code_generator_arm.h
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2017-03-09 13:02:12 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2017-03-09 13:02:12 +0000
commit5ed51e3176f3dc4ff2e50ba4bf52743d404b5b4f (patch)
tree1638115757601e4d41d1dc3f3cb9045f5d3d6dd9 /compiler/optimizing/code_generator_arm.h
parent079f5fd58799a23aa5d60a5f85008a4663a33f2a (diff)
parent54f869ed3c7910e6eb7bade924d41570e9a4cb14 (diff)
Merge changes Ia26b07f0,Id3d2758c
* changes: Revert "Revert "Use the holder's gray bit in Baker read barrier slow paths (ARM, ARM64)."" Revert "Revert "Use the "GC is marking" information in compiler read barriers (ARM, ARM64).""
Diffstat (limited to 'compiler/optimizing/code_generator_arm.h')
-rw-r--r--compiler/optimizing/code_generator_arm.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/compiler/optimizing/code_generator_arm.h b/compiler/optimizing/code_generator_arm.h
index e993756b3b..f081a910ee 100644
--- a/compiler/optimizing/code_generator_arm.h
+++ b/compiler/optimizing/code_generator_arm.h
@@ -520,9 +520,6 @@ class CodeGeneratorARM : public CodeGenerator {
Location index,
Location temp,
bool needs_null_check);
- // Factored implementation used by GenerateFieldLoadWithBakerReadBarrier
- // and GenerateArrayLoadWithBakerReadBarrier.
-
// Factored implementation, used by GenerateFieldLoadWithBakerReadBarrier,
// GenerateArrayLoadWithBakerReadBarrier and some intrinsics.
//
@@ -545,6 +542,15 @@ class CodeGeneratorARM : public CodeGenerator {
bool always_update_field = false,
Register* temp2 = nullptr);
+ // Generate a heap reference load (with no read barrier).
+ void GenerateRawReferenceLoad(HInstruction* instruction,
+ Location ref,
+ Register obj,
+ uint32_t offset,
+ Location index,
+ ScaleFactor scale_factor,
+ bool needs_null_check);
+
// Generate a read barrier for a heap reference within `instruction`
// using a slow path.
//