[PATCH] ARM-BE: test files for vector argument passing
Christian Pirker
cpirker at a-bix.com
Wed May 14 08:35:07 PDT 2014
Hi all,
According to ARM pcs are vector arguments passed in a format of integer types.
In little endian both integer and vector types are of the same bit representation.
However in big endian any vector argument need to be converted in an integer type (and vice versa) when passing as procedure argument.
Such conversion between vector and integer data types is implemented by VREV instructions.
You can find a deep discussion on neon vector types (although for AArch64, but essentially valid for ARM32 as well):
http://llvm.org/docs/BigEndianNEON.html
This patch provides tests for caller and callee processing of vector arguments for both soft and hard float ABIs.
Please review.
Thanks,
Christian
http://reviews.llvm.org/D3766
Files:
lib/Target/ARM/ARMISelLowering.cpp
test/CodeGen/ARM/big-endian-vector-callee.ll
test/CodeGen/ARM/big-endian-vector-caller.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D3766.9392.patch
Type: text/x-patch
Size: 77568 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140514/eefe99cb/attachment.bin>
More information about the llvm-commits
mailing list