From d1d002a6fe4d19f3dbaaa4b080779024eeccd210 Mon Sep 17 00:00:00 2001 From: Jim Grosbach Date: Sat, 7 Nov 2009 21:25:39 +0000 Subject: Support alignment specifier for NEON vld/vst instructions llvm-svn: 86404 --- llvm/lib/Target/ARM/ARMAddressingModes.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'llvm/lib/Target/ARM/ARMAddressingModes.h') diff --git a/llvm/lib/Target/ARM/ARMAddressingModes.h b/llvm/lib/Target/ARM/ARMAddressingModes.h index c603708652f..6ee1b68efaa 100644 --- a/llvm/lib/Target/ARM/ARMAddressingModes.h +++ b/llvm/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; -- cgit v1.2.3