summaryrefslogtreecommitdiffstats
path: root/runtime/globals.h
diff options
context:
space:
mode:
authorMatteo Franchin <matteo.franchin@arm.com>2014-05-06 10:10:30 +0100
committerbuzbee <buzbee@google.com>2014-05-07 14:54:16 -0700
commite45fb9e7976c8462b94a58ad60b006b0eacec49f (patch)
tree1d8139f92fb127fc931c6e5c9ca2ed2c8dc871b9 /runtime/globals.h
parent410d87ff51e9432768924d2f294592818f93c244 (diff)
downloadart-e45fb9e7976c8462b94a58ad60b006b0eacec49f.zip
art-e45fb9e7976c8462b94a58ad60b006b0eacec49f.tar.gz
art-e45fb9e7976c8462b94a58ad60b006b0eacec49f.tar.bz2
AArch64: Change arm64 backend to produce A64 code.
The arm backend clone is changed to produce A64 code. At the moment this backend can only compile simple methods (both leaf and non-leaf). Most of the work on the assembler (assembler_arm64.cc) has been done. Some work on the LIR generation layer (functions such as OpRegRegImm & friends) is still necessary. The register allocator still needs to be adapted to the A64 instruction set (it is mostly unchanged from the arm backend). Offsets for helpers in gen_invoke.cc still need to be changed to work on 64-bit. Change-Id: I388f99eeb832857981c7d9d5cb5b71af64a4b921
Diffstat (limited to 'runtime/globals.h')
-rw-r--r--runtime/globals.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/runtime/globals.h b/runtime/globals.h
index eb52a46..07fadb9 100644
--- a/runtime/globals.h
+++ b/runtime/globals.h
@@ -55,9 +55,8 @@ static constexpr size_t kStackAlignment = 16;
// but ARM ELF requires 8..
static constexpr size_t kArmAlignment = 8;
-// ARM64 instruction alignment. AArch64 require code to be 4-byte aligned.
-// AArch64 ELF requires at least 4.
-static constexpr size_t kArm64Alignment = 4;
+// ARM64 instruction alignment. This is the recommended alignment for maximum performance.
+static constexpr size_t kArm64Alignment = 16;
// MIPS instruction alignment. MIPS processors require code to be 4-byte aligned.
// TODO: Can this be 4?