bufhelp: use unaligned dword and qword types for endianess helpers
* cipher/bufhelp.h (BUFHELP_UNALIGNED_ACCESS): New, defined if attributes 'packed', 'aligned' and 'may_alias' are supported. (BUFHELP_FAST_UNALIGNED_ACCESS): Define if have BUFHELP_UNALIGNED_ACCESS.
Now that compiler is properly told that reads from these types
may do not follow strict-aliasing and may be unaligned, we
enable use of these for all architectures and compiler will
emit more optimized, yet correct, code (for example, use
special unaligned read/write instructions instead of accessing
byte-by-byte).
- Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>