summaryrefslogtreecommitdiff
path: root/compiler/utils/arm64/assembler_arm64.h
diff options
context:
space:
mode:
author Andreas Gampe <agampe@google.com> 2015-09-09 13:15:38 -0700
committer Andreas Gampe <agampe@google.com> 2015-09-17 14:41:52 -0700
commit85b62f23fc6dfffe2ddd3ddfa74611666c9ff41d (patch)
treec916b01b1608558a7d8c9d100274c4c6b6706386 /compiler/utils/arm64/assembler_arm64.h
parent6766eae2d91e894b4ceab9f29cc983900e7bc0c7 (diff)
ART: Refactor intrinsics slow-paths
Refactor slow paths so that there is a default implementation for common cases (only arm64 with vixl is special). Write a generic intrinsic slow-path that can be reused for the specific architectures. Move helper functions into CodeGenerator so that they are accessible. Change-Id: Ibd788dce432601c6a9f7e6f13eab31f28dcb8550
Diffstat (limited to 'compiler/utils/arm64/assembler_arm64.h')
-rw-r--r--compiler/utils/arm64/assembler_arm64.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/utils/arm64/assembler_arm64.h b/compiler/utils/arm64/assembler_arm64.h
index 8e85fe96ab..7b25b8f3f5 100644
--- a/compiler/utils/arm64/assembler_arm64.h
+++ b/compiler/utils/arm64/assembler_arm64.h
@@ -193,6 +193,13 @@ class Arm64Assembler FINAL : public Assembler {
// Unpoison a heap reference contained in `reg` if heap poisoning is enabled.
void MaybeUnpoisonHeapReference(vixl::Register reg);
+ void Bind(Label* label ATTRIBUTE_UNUSED) OVERRIDE {
+ UNIMPLEMENTED(FATAL) << "Do not use Bind for ARM64";
+ }
+ void Jump(Label* label ATTRIBUTE_UNUSED) OVERRIDE {
+ UNIMPLEMENTED(FATAL) << "Do not use Jump for ARM64";
+ }
+
private:
static vixl::Register reg_x(int code) {
CHECK(code < kNumberOfXRegisters) << code;