summaryrefslogtreecommitdiffstats
path: root/compiler/utils/assembler.h
diff options
context:
space:
mode:
authorSerban Constantinescu <serban.constantinescu@arm.com>2014-02-11 14:15:10 +0000
committerIan Rogers <irogers@google.com>2014-03-05 12:14:43 -0800
commited8dd492e43cbaaa435c4892447072c84dbaf2dc (patch)
treee93e3d1e7dd6770ec8e2a3ed7105a7305eb2bc4d /compiler/utils/assembler.h
parent511472b9110d15cf30a205bb514eb98f6afce651 (diff)
downloadart-ed8dd492e43cbaaa435c4892447072c84dbaf2dc.zip
art-ed8dd492e43cbaaa435c4892447072c84dbaf2dc.tar.gz
art-ed8dd492e43cbaaa435c4892447072c84dbaf2dc.tar.bz2
AArch64: Add ARM64 Assembler
This patch adds the ARM64 Assembler and ManagedRegister backend. The implementation of the Arm64Assembler class is based on VIXL (a programmatic A64 Assembler - see external/vixl ). Change-Id: I842fd574637a953c19631eedf26f6c70d9ed7f9e Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
Diffstat (limited to 'compiler/utils/assembler.h')
-rw-r--r--compiler/utils/assembler.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/compiler/utils/assembler.h b/compiler/utils/assembler.h
index 53f3375..f02c20f 100644
--- a/compiler/utils/assembler.h
+++ b/compiler/utils/assembler.h
@@ -316,13 +316,13 @@ class Assembler {
static Assembler* Create(InstructionSet instruction_set);
// Emit slow paths queued during assembly
- void EmitSlowPaths() { buffer_.EmitSlowPaths(this); }
+ virtual void EmitSlowPaths() { buffer_.EmitSlowPaths(this); }
// Size of generated code
- size_t CodeSize() const { return buffer_.Size(); }
+ virtual size_t CodeSize() const { return buffer_.Size(); }
// Copy instructions out of assembly buffer into the given region of memory
- void FinalizeInstructions(const MemoryRegion& region) {
+ virtual void FinalizeInstructions(const MemoryRegion& region) {
buffer_.FinalizeInstructions(region);
}