amiga-libnix3/headers/alignment.h

20 lines
671 B
C

#ifndef _HEADERS_ALIGNMENT_H
#define _HEADERS_ALIGNMENT_H
/* Address is neither aligned to a word or long word boundary. */
#define IS_UNALIGNED(a) ((((unsigned long)(a)) & 1) != 0)
/* Address is aligned to a word boundary, but not to a long
word boundary. */
#define IS_SHORT_ALIGNED(a) ((((unsigned long)(a)) & 3) == 2)
/* Address is aligned to a long word boundary. For an 68030 and beyond the
alignment does not matter. */
#if defined(M68020) || defined(_M68020) || defined(mc68020) || defined(__mc68020)
#define IS_LONG_ALIGNED(a) (1)
#else
#define IS_LONG_ALIGNED(a) ((((unsigned long)(a)) & 3) == 0)
#endif /* M68020 */
#endif /* _HEADERS_ALIGNMENT_H */