Home | History | Annotate | Line # | Download | only in include
cdefs.h revision 1.17
      1 /*	$NetBSD: cdefs.h,v 1.17 2020/10/11 16:22:02 skrll Exp $	*/
      2 
      3 #ifndef	_ARM_CDEFS_H_
      4 #define	_ARM_CDEFS_H_
      5 
      6 #ifndef __lint__
      7 #if (__GNUC__ == 4 && __GNUC_MINOR__ < 1) || __GNUC__ < 4
      8 #error GCC 4.1 or compatible required.
      9 #endif
     10 #endif
     11 
     12 
     13 #if defined (__ARM_ARCH_8A__) || defined (__ARM_ARCH_8A)
     14 	/* __ARM_ARCH_8A__ is a typo */
     15 #define _ARM_ARCH_8
     16 #endif
     17 
     18 #if defined (_ARM_ARCH_8) || defined (__ARM_ARCH_7__) || \
     19     defined (__ARM_ARCH_7A__) || defined (__ARM_ARCH_7R__) || \
     20     defined (__ARM_ARCH_7M__) || defined (__ARM_ARCH_7EM__)
     21 	/* 7R, 7M, 7EM are for non MMU arms */
     22 #define _ARM_ARCH_7
     23 #endif
     24 
     25 #if defined (_ARM_ARCH_7) || defined (__ARM_ARCH_6T2__)
     26 #define _ARM_ARCH_T2		/* Thumb2 */
     27 #endif
     28 
     29 #if defined (_ARM_ARCH_T2) || defined (__ARM_ARCH_6__) || \
     30     defined (__ARM_ARCH_6J__) || \
     31     defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6KZ__) || \
     32     defined (__ARM_ARCH_6Z__) || defined (__ARM_ARCH_6ZK__) || \
     33     defined (__ARM_ARCH_6ZM__)
     34 #define _ARM_ARCH_6
     35 #endif
     36 
     37 #if defined (_ARM_ARCH_6) || defined (__ARM_ARCH_5T__) || \
     38     defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5TEJ__)
     39 #define _ARM_ARCH_5T
     40 #endif
     41 
     42 #if defined (_ARM_ARCH_6) || defined (_ARM_ARCH_5T) || defined (__ARM_ARCH_5__)
     43 #define _ARM_ARCH_5
     44 #endif
     45 
     46 #if defined (_ARM_ARCH_5) || defined (__ARM_ARCH_4T__)
     47 #define _ARM_ARCH_4T
     48 #endif
     49 
     50 #if defined (_ARM_ARCH_T2) || \
     51     (!defined (__thumb__) && \
     52      (defined (_ARM_ARCH_6) || defined (__ARM_ARCH_5TE__) || \
     53       defined (__ARM_ARCH_5TEJ__)))
     54 #define	_ARM_ARCH_DWORD_OK
     55 #endif
     56 
     57 #if defined(__ARM_PCS_AAPCS64)
     58 #define __ALIGNBYTES		(sizeof(__int128_t) - 1)
     59 #elif defined(__ARM_EABI__)
     60 #define __ALIGNBYTES		(sizeof(long long) - 1)
     61 #else
     62 #define __ALIGNBYTES		(sizeof(int) - 1)
     63 #endif
     64 
     65 #endif /* !_ARM_CDEFS_H_ */
     66