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