So far the lib ignores data alignment. This likely has a performance penalty on some systems and other systems might react with a failure/crashe. The best way to handle this still needs to be decided. Right now I tend into this direction: Since the lib should be able to operate on existing arrays without creating a copy we have no control over the alignment of the data vectors. However we can afford a few unaligned loads (one at the beginning of the vector and one at the end). So we could if necessary have a special handling for the beginning of the vector until we are able to get all other elements (except the a few elements and the end) with aligned loads.
So far the lib ignores data alignment. This likely has a performance penalty on some systems and other systems might react with a failure/crashe. The best way to handle this still needs to be decided. Right now I tend into this direction: Since the lib should be able to operate on existing arrays without creating a copy we have no control over the alignment of the data vectors. However we can afford a few unaligned loads (one at the beginning of the vector and one at the end). So we could if necessary have a special handling for the beginning of the vector until we are able to get all other elements (except the a few elements and the end) with aligned loads.