aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM/ARMAddressingModes.h
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2009-11-07 21:25:39 +0000
committerJim Grosbach <grosbach@apple.com>2009-11-07 21:25:39 +0000
commit04d92822f7e9437186a873e4f6335b4c379c5d65 (patch)
treef6c4e16f39c70a661995333837e08d615471c54b /lib/Target/ARM/ARMAddressingModes.h
parentded7c4a4c0f0df94bd7abfc98a6e0123c5849efe (diff)
downloadexternal_llvm-04d92822f7e9437186a873e4f6335b4c379c5d65.zip
external_llvm-04d92822f7e9437186a873e4f6335b4c379c5d65.tar.gz
external_llvm-04d92822f7e9437186a873e4f6335b4c379c5d65.tar.bz2
Support alignment specifier for NEON vld/vst instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86404 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMAddressingModes.h')
-rw-r--r--lib/Target/ARM/ARMAddressingModes.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/lib/Target/ARM/ARMAddressingModes.h b/lib/Target/ARM/ARMAddressingModes.h
index c603708..6ee1b68 100644
--- a/lib/Target/ARM/ARMAddressingModes.h
+++ b/lib/Target/ARM/ARMAddressingModes.h
@@ -541,13 +541,15 @@ namespace ARM_AM {
//
// This is used for NEON load / store instructions.
//
- // addrmode6 := reg with optional writeback
+ // addrmode6 := reg with optional writeback and alignment
//
- // This is stored in three operands [regaddr, regupdate, opc]. The first is
- // the address register. The second register holds the value of a post-access
- // increment for writeback or reg0 if no writeback or if the writeback
- // increment is the size of the memory access. The third operand encodes
- // whether there is writeback to the address register.
+ // This is stored in four operands [regaddr, regupdate, opc, align]. The
+ // first is the address register. The second register holds the value of
+ // a post-access increment for writeback or reg0 if no writeback or if the
+ // writeback increment is the size of the memory access. The third
+ // operand encodes whether there is writeback to the address register. The
+ // fourth operand is the value of the alignment specifier to use or zero if
+ // no explicit alignment.
static inline unsigned getAM6Opc(bool WB = false) {
return (int)WB;