http://llvm.org/bugs/show_bug.cgi?id=5265
Summary: Non native ext vector types have non aligned sizes
Product: clang
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: LLVM Codegen
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Assume a three element vector type like:
typedef float __attribute__((ext_vector_type (3))) float3;
Then sizeof(float3) == 12, which make sense if you just add the sizeof(float).
However, this unfortunately means that an array of float3 cannot be loaded into
SSE registers as those require aligned memory accesses.
At least for 3 element float vectors that fit nicely into SSE registers, it
would be a big plus if non native vectors were padded for alignment and thus
made SSE compatible.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs